Amazon Kinesis Data Analytics is the easiest way to transform and analyze streaming data in real time using Apache Flink, an open-source framework and engine for processing data streams. Amazon Kinesis Data Analytics simplifies building and managing Apache Flink workloads and allows you to easily integrate applications with other AWS services.

With Amazon Kinesis Data Analytics, you pay only for what you use. There are no resources to provision and no upfront costs. You are charged an hourly rate based on the number of Kinesis Processing Units (or KPUs) used to run your applications. A single KPU comprises 1 vCPU compute and 4 GB of memory.

For Apache Flink applications, you are charged a single additional KPU per application, used for orchestration. Applications are also charged for running storage and durable backups. Running application storage is used for stateful processing capabilities in Amazon Kinesis Data Analytics and is charged per GB/month. Durable backups are optional and provide point-in-time recovery for applications, charged per GB/month.

In streaming mode, Amazon Kinesis Data Analytics automatically scales the number of KPUs required by your stream processing application as the demands of memory and compute fluctuate. You may choose to provision your application with the number of KPUs required.

Amazon Kinesis Data Analytics Studio Pricing

You are charged two additional KPUs per Studio application in interactive mode. One KPU is used for Apache Flink application orchestration and the other for the serverless interactive development environment. You will also be charged for running application storage used for stateful processing capabilities. Running application storage is charged per GB/month.

When developing in the Studio notebook, you will not have the option to create durable application backups. However, when you deploy your application in the Studio notebook from interactive mode to streaming mode, you will be able to create durable application backups.

General guidance on KPU usage

We recommend that you test your application with production loads to get an accurate estimate of the number of KPUs required for your application. KPU usage can vary considerably based on your data volume and velocity, code complexity, integrations, and more. This is especially true when using Apache Flink runtime in Amazon Kinesis Data Analytics. For example, through internal testing we have observed throughput of hundreds of MB per second per KPU for simple applications with no state, and throughput of less than 1 MB per second per KPU for complex applications that use intensive machine learning (ML) algorithms. With these caveats in mind, the general guidance we provide prior to testing your application is 1 MB per second per KPU.

Pricing by Region

Pricing examples

Pricing Example 1: Studio Notebook with a Simple Streaming Filter

You use Amazon Kinesis Data Analytics Studio to continuously filter streaming data captured by your Kinesis Data Stream and only retain records of interest. You want the ability to view and visualize records in real time and easily write queries and programs in SQL and Python. You do not want durable state backups. You provision 4 KPUs for your Studio notebook based on your input stream’s throughput. Your monthly Kinesis Data Analytics charges will be computed as follows:

Monthly charges

The price in U.S. East (N. Virginia) Region is $0.11 per KPU/hour used for your stream processing application. This simple application uses 4 KPUs to process the incoming data stream. Each Studio notebook application (example: interactive mode) is charged 2 additional KPUs per application. Monthly KPU Charges = 30 Days * 24 Hours * ((4 KPUs + 2 additional KPUs) * $0.11/ Hour) = $475.20

Apache Flink applications use 50 GB running application storage per KPU and are charged $0.10 per GB/month in US-East-1.

Monthly Running Application Storage Charges = 30 Days * 24 Hours * 4 KPUs * (50GB * $0.10/GB/month) = $20.00 

Total Charges = $475.20 + $20.00 = $495.20

 

Pricing Example 2: Studio Notebook with a Sliding Window Deployed to Streaming Mode

You use Kinesis Data Analytics Studio to build a sliding window on streaming data captured by a topic in your Amazon Managed Streaming for Apache Kafka (Amazon MSK) cluster. You use a Studio notebook with 4 KPUs for eight hours over two days to develop and test your queries. After development you deploy the application as a streaming application with 12 KPUs. Once the streaming application is deployed, you stop your Studio notebook. The streaming application can use durable application state and you create durable state backups every day.

The price in U.S. East (N. Virginia) Region is $0.11 per KPU/hour used for your stream processing application.

Monthly charges

Developing and testing query Kinesis Data Analytics Studio:
KPU charges = 2 Days * 8 Hours * (4 KPUs + 2 additional KPUs for Studio notebook) * $0.11/Hour) = $10.56

Apache Flink applications use 50 GB running application storage per KPU and charged $0.10 per GB/month in US-East-1.

Running Application Storage Charges = 2 Days * 8 hours * 4 KPUs * (50GB * $0.10/GB-month) = $0.44

Deploying as streaming application to run continuously and take application backups:

KPU charges = 28 Days * 24 Hours * (2 KPUs + 1 additional KPU for streaming application) * $0.11/Hour) = $221.76

Apache Flink applications use 50 GB running application storage per KPU and charged $0.121 per GB/month in US-East-1.

Running Application Storage Charges = 28 Days * 24 Hours * 2 KPUs * (50GB * $0.10/GB-month) = $9.33

Durable Application Storage Charges = 28* (1 MB/backup * 1 GB/1,000 MB) * 0.023/GB-month = $0.01 (rounded to the nearest penny)

Total Charges = $10.56 + $0.44 + $221.76 + $9.33 + $0.01 = $242.10

You use an Apache Flink application in Kinesis Data Analytics to continuously transform and deliver log data captured by your Kinesis Data Stream to Amazon Simple Storage Service (Amazon S3). The log data is transformed using several operators including applying a schema to the different log events, partitioning data by event type, sorting data by timestamp, and buffering data for one hour prior to delivery. The application has many transformation steps, but none are computationally intensive. This stream ingests data at 2,000 records/second for 12 hours per day and increases to 8,000 records/second for 12 hours per day. You do not create any durable application backups. The monthly Kinesis Data Analytics charges will be computed as follows:

Monthly charges

The price in U.S. East (N. Virginia) Region is $0.11 per KPU-hour. Kinesis Data Analytics allocates 50 GB of running application storage per KPU and charged $0.10 per GB/month.

Heavy Workload: During the 12-hour heavy workload period, the Kinesis Data Analytics application is processing 8,000 records/second and automatically scales up to 8 KPUs. After the heavy workload period, the Kinesis Data Analytics application scales the application down after six hours of lower throughput. The application is scaled up to 8 KPUs for a total of 18 hours per day.

30 Days/Month * 18 Hours/Day = 540 Hours/Month

Monthly KPU Charges = 540 Hours/Month * 8 KPUs * $0.11/Hour= $475.20

Monthly Running Application Storage Charges = 540 Hours/Month * 8 KPUs * 50GB/KPUs * $0.10/GB-month = $30.00

Monthly KPU and Storage Charges = $475.20 + $30.00 = $505.20

Light Workload: During the light workload period for the remaining six hours, the Kinesis Data Analytics application is processing 2,000 records/second and automatically scales down to 2 KPUs

30 Days/Month * 6 Hours/Day = 180 Hours/Month

Monthly KPU Charges = 180 Hours/Month * 2 KPUs * $0.11/Hour = $39.60

Monthly Running Application Storage Charges = 180 Hours/Month * 2 KPUs * 50GB * $0.10/GB- month = $2.50

Monthly KPU and Storage Charges = $39.60 + $2.50 = $42.10

Each Apache Flink application is charged an additional KPU per application.

Monthly Charges = 30 * 24 * 1 KPU * $0.11/Hour = $79.20

Total Charges = $505.20 + $42.10 + $79.20 = $626.50

Pricing Example 4: Kinesis Data Analytics for SQL Application with a Sliding Window and Workload Spikes

You use a Kinesis Data Analytics for SQL application to compute a one-minute, sliding-window sum of items sold in online shopping transactions captured in your Kinesis stream. This stream normally ingests data at 1,000 records/second, but the data spikes once a day during promotional campaigns to 6,000 records/second inside an hour. The monthly Kinesis Data Analytics charges will be computed as follows:

Monthly charges

The price in U.S. East (N. Virginia) Region is $0.11 per KPU-Hour used for your stream processing application. The incoming Kinesis data stream transmits data at 1,000 records/second. However, once a day, inside an hour, the stream spikes to 6,000 records/second.

For "steady state," which occurs 23 of 24 hours in the day, the sliding-window query uses 1 KPU to process the workload during these hours.

30 Days/Month * 23 Hours/Day = 690 Hours/Month 
Steady State = 690 Hours/Month * (1 KPU * $0.11/Hour) = $75.90

For "spiked state," which occurs for 1 of 24 hours in the day, the sliding-window query uses between 1 and 2 KPUs. You will be billed for 2 KPUs for that 1 hour out of the 24 hours in the day.

30 Days/Month * 1 Hour/Day = 30 Hours/Month 
Spiked State = 30 Hours/Month * (2 KPUs * $0.11/Hour) = $6.60

Total Charges = $75.90 + $6.60 = $82.50

Note: We reserve the right to charge standard AWS data transfer costs for data transferred in and out of Amazon Kinesis Data Analytics applications.

Additional pricing resources

AWS Pricing Calculator

Easily calculate your monthly costs with AWS

Get pricing assistance

Contact AWS specialists to get a personalized quote

Get started with Amazon Kinesis Data Analytics

Sign up for an AWS account
Sign up for an AWS account

Instantly get access to the AWS Free Tier.

Read the getting started guide
Review the getting started guide

Learn how to use Amazon Kinesis Data Analytics in the step-by-step guide for SQL or Apache Flink.

Start building with Amazon Kinesis Data Analytics
Start building streaming applications

Build your streaming application from the Amazon Kinesis Data Analytics console.