Kinesis Throughput Calculator
Size Kinesis Data Streams shards against the 1 MB/s and 1000 record/s ingest limits and the 2 MB/s per-shard read limit.
Inputs
Each enhanced fan-out consumer gets its own 2 MB/s per shard.
Shards Required
13
Ingest Throughput
9.77MB/s
Binding Constraint
Consumer read throughput at 2 MB/s per shard
Shard Hour Cost
$142.35
PUT Payload Unit Cost
$181.44
Estimated Monthly Cost
$323.79
Step by step
Values used
Records written per second = 5,000 records/s; Average record size = 2 KB; Consumer applications = 2 consumers; Use enhanced fan-out = No; Headroom to add for spikes = 25 %; Shard hour price = 0.0150 USD; Price per million PUT payload units = 0.0140 USD; Enhanced fan-out consumer-shard hour price = 0.0150 USD
Kinesis Throughput
shards = max(ceil(MB/s ÷ 1), ceil(records/s ÷ 1000), ceil(consumers × MB/s ÷ 2)) × (1 + headroom), where MB/s = records/s × record KB ÷ 1024.
Write metering
PUT payload units = records/s × ceil(record KB ÷ 25) × seconds per month; small records waste most of a 25 KB unit.
Shards Required
= 13
Ingest Throughput
= 9.77 MB/s
Binding Constraint
= Consumer read throughput at 2 MB/s per shard
Shard Hour Cost
= 142.35
PUT Payload Unit Cost
= 181.44
Estimated Monthly Cost
= 323.79
How it works
Three separate limits set the shard count and the largest one wins: write bandwidth at 1 MB/s, write rate at 1000 records/s, and read bandwidth at 2 MB/s shared by all standard consumers. That third limit is the one that surprises people — adding a fourth consumer to a stream running near its read ceiling forces a reshard even though ingest has not changed. Confirm shard hour and PUT unit prices for your region. Resharding a live stream is disruptive and changes ordering guarantees for in-flight partition keys, so it is far better to size with headroom up front than to discover the read limit during a backfill.
Formulas
Kinesis Throughput
shards = max(ceil(MB/s ÷ 1), ceil(records/s ÷ 1000), ceil(consumers × MB/s ÷ 2)) × (1 + headroom), where MB/s = records/s × record KB ÷ 1024.
- shard
- Unit of capacity: 1 MB/s or 1000 records/s in, 2 MB/s out
- PUT payload unit
- 25 KB of written data — a 2 KB record still bills one unit
- enhanced fan-out
- Dedicated 2 MB/s per consumer per shard, billed per consumer-shard hour
Write metering
PUT payload units = records/s × ceil(record KB ÷ 25) × seconds per month; small records waste most of a 25 KB unit.
Frequently Asked Questions
How is Kinesis Throughput calculated?
shards = max(ceil(MB/s ÷ 1), ceil(records/s ÷ 1000), ceil(consumers × MB/s ÷ 2)) × (1 + headroom), where MB/s = records/s × record KB ÷ 1024. Three separate limits set the shard count and the largest one wins: write bandwidth at 1 MB/s, write rate at 1000 records/s, and read bandwidth at 2 MB/s shared by all standard consumers. That third limit is the one that surprises people — adding a fourth consumer to a stream running near its read ceiling forces a reshard even though ingest has not changed. Confirm shard hour and PUT unit prices for your region.
Why does Kinesis Throughput matter?
Resharding a live stream is disruptive and changes ordering guarantees for in-flight partition keys, so it is far better to size with headroom up front than to discover the read limit during a backfill.
What values do I need to enter?
This calculator takes 8 inputs: Records written per second, Average record size, Consumer applications, Use enhanced fan-out, Headroom to add for spikes, Shard hour price, Price per million PUT payload units, Enhanced fan-out consumer-shard hour price. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.
Why do small records cost so much per byte?
Writes are metered in 25 KB PUT payload units, so a 1 KB record wastes 96% of a unit. Aggregating many small records into one larger record with the Kinesis Producer Library, or batching with PutRecords, is the standard fix and can cut the write meter by an order of magnitude.
When should I use enhanced fan-out?
When you have more than two or three consumers, or need sub-200 ms propagation. Enhanced fan-out gives each consumer its own 2 MB/s per shard so consumers stop competing, but it adds a per-consumer-shard-hour charge that grows with both the consumer count and the shard count.