# @upstash/redis returns large numbers as strings

## What you see

await redis.set("key", "101600000000150081467");
const res = await redis.get("key");
// res is the string "101600000000150081467", not a number

## Why

JavaScript numbers are doubles. Above 2^53 - 1 they lose precision,
so the SDKs deserializer returns big integers as strings rather than
silently corrupting them. Your data is intact; the type changed.

## Fix

- Treat IDs, Snowflake IDs, and big counters as strings end to end.
- Convert explicitly with BigInt where you need arithmetic.
- If you have TypeScript types declaring these fields as number,
  change them to string or BigInt: the mismatch is in your types,
  not in Redis.

## Verify

Round trip a known big integer and compare as strings. Exact match
means everything is working as designed.