With Amazon Kinesis Data Firehose, you pay for the volume of data you ingest into the service. There are no set up fees or upfront commitments. There are four types of on demand usage with Kinesis Data Firehose: ingestion, format conversion, VPC delivery, and Dynamic Partitioning. Additional data transfer charges can apply.
Direct PUT and KDS as a Source Ingestion
The base function of a Kinesis Data KDF delivery stream is ingestion and delivery. Ingestion pricing is tiered and billed per GB ingested in 5KB increments (a 3KB record is billed as 5KB, a 12KB record is billed as 15KB, etc.). There are no additional Kinesis Data KDF charges for delivery unless optional features are used.
MSK as a Source Ingestion
The base function of a Kinesis Data KDF delivery stream is ingestion and delivery. Ingestion pricing is tiered and billed per GB ingested with no 5KB increments.
Vended Logs as a Source Ingestion
For records originating from Vended Logs, the Ingestion pricing is tiered and billed per GB ingested with no 5KB increments.
Format Conversion (optional)
You can enable JSON to Apache Parquet or Apache ORC format conversion at a per-GB rate based on GBs ingested in 5KB increments.
VPC Delivery (optional)
For delivery streams with a destination that resides in an Amazon VPC, you will be billed for every hour that your delivery stream is active in each AZ. Each partial hour is billed as a full hour. Data processing charges apply per GB.
Dynamic Partitioning for Amazon S3 delivery (optional)
You can enable Dynamic Partitioning to continuously group data by keys in your records (such as “customer_id”), and have data delivered to S3 prefixes mapped to each key. With Dynamic Partitioning, you pay per GB delivered to S3, per object, and optionally per JQ processing hour for data parsing.
-
Direct PUT or Kinesis Data Stream as a source
-
Vended Logs as a source
-
MSK as a source
-
Direct PUT or Kinesis Data Stream as a source
-
-
Vended Logs as a source
-
-
MSK as a source
-
Pricing examples
Ingestion Pricing for Direct PUT and KDS as a source
Record size of 3KB rounded up to the nearest 5KB ingested = 5KB
Price for first 500 TB / month = $0.029 per GB
GB billed for ingestion = (100 records/sec * 5 KB/record) / 1,048,576 KB/GB * 30 days / month * 86,400 sec/day = 1,235.96 GB
Monthly ingestion charges = 1,235.96 GB * $0.029/GB = $35.84
Ingestion Pricing for MSK as a source
Record size of 2KB (no 5KB increments)
Price for first 500 TB / month = $0.055 per GB
GB billed for ingestion = (100 records/sec * 2 KB/record) / 1,048,576 KB/GB * 30 days / month * 86,400 sec/day = 494.38 GB
Monthly ingestion charges = 494.38 GB * $0.055/GB = $27.19
Ingestion Pricing for Vended Logs as a source
Record size of 0.5KB (500 Bytes) =0.5KB (no 5KB increments)
Price for first 500 TB / month = $0.13 per GB
GB billed for ingestion = (100 records/sec * 0.5KB/record) / 1,048,576 KB/GB * 30 days / month *86,400 sec/day = 123.59 GB
Monthly ingestion charges = 123.59 GB * $0.13/GB = $16.06
Format conversion pricing: JSON to Parquet or ORC (optional)
Data format conversion is an optional add-on to data ingestion and uses GB’s billed for ingestion to compute costs.
Price per ingested GB converted = $0.018
Monthly format conversion charges = 1,235.96 GB * $0.018 / GB converted = $22.25
VPC delivery pricing (optional)
Delivery into a VPC is an optional add-on to data ingestion and uses GB’s billed for ingestion to compute costs.
Price per GB processed into VPC = $0.01
Price per AZ hour for VPC delivery = $0.01
Monthly VPC processing charges = 1,235.96 GB * $0.01 / GB processed = $12.35
Monthly VPC hourly charges = 24 hours * 30 days/month * 3 AZs = 2,160 hours * $0.01 / hour = $21.60 Total monthly VPC charges = $33.95
Dynamic partitioning pricing (optional)
Dynamic partitioning is an optional add-on to data ingestion, and uses GBs and objects delivered to S3, and optionally JQ processing hours to compute costs. In this example, we assume 64MB objects are delivered as a result of the delivery stream buffer hint configuration.
Price per GB delivered = $0.020
Price per 1,000 S3 objects delivered $0.005 = $0.005
Price per JQ processing hour = $0.07
Monthly GB delivered = (3KB * 100 records / second) / 1,048,576 KB/GB * 86,400 seconds/day * 30 days / month = 741.58 GB
Monthly charges for GB delivered = 741.58 GB * $0.02 per GB delivered = $14.83
Number of objects delivered = 741.58 GB * 1024 MB/GB / 64MB object size = 11,866 objects
Monthly charges for objects delivered to S3 = 11,866 objects * $0.005 / 1000 objects = $0.06
Monthly charges for JQ (if enabled) = 70 JQ hours consumed / month * $0.07/ JQ processing hr = $4.90
Service Level Agreement
Learn about the Amazon Kinesis Data Firehose Service Level Agreement by visiting our FAQs.
Discover more Amazon Kinesis Data Firehose resources