# @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.