# Upstash: request or record too large (10MB request, 100MB record)
## What you see
400s on large SETs, or a whole /multi-exec batch discarded with a
size error.
## The limits
- Max request size: 10MB per HTTP request.
- Max record size: 100MB per value.
- Bandwidth on the free tier is 10GB a month, so large values also
burn that quota.
## Confirm
Check the byte size of the value you are writing. If the payload is
over 10MB in one request, that is the cause. Remember JSON
serialization and base64 encoding inflate sizes: a 7MB object can
cross 10MB on the wire.
## Fix
1. Chunk large values across multiple keys (file:1, file:2, ...) and
reassemble on read.
2. Compress before storing. Text and JSON compress well.
3. Store the blob in object storage and keep only the pointer in
Redis. Redis is the index, not the file system.
4. For bulk loads, split /pipeline batches so each HTTP request stays
under 10MB.
## Verify
The write returns OK and a GET returns the full value with matching
byte length.