aws_kinesisanalyticsv2_application cost estimation
A managed Apache Flink (Kinesis Data Analytics) application billed per Kinesis Processing Unit-hour. Two KPUs run ~$161/month, billed while the application runs.
An aws_kinesisanalyticsv2_application runs Apache Flink stream-processing applications on Amazon Managed Service for Apache Flink (formerly Kinesis Data Analytics). Cost is per Kinesis Processing Unit (KPU) — each KPU is ~1 vCPU and 4 GB — at ~$0.11/KPU-hour, plus a small running-application orchestration charge and storage for running application state.
A running application provisions KPUs based on its parallelism and parallelism-per-KPU settings; two KPUs is ~$160.60/month. The application bills for its KPUs the entire time it's running, regardless of how many events flow — a streaming app is by nature always-on, so the cost is steady rather than spiky.
The levers are parallelism (how many KPUs the app needs to keep up with throughput — don't over-provision parallelism for headroom you don't use) and stopping applications that aren't needed (dev/test apps left running bill their KPUs continuously). Autoscaling can adjust KPUs to load where the workload varies.
c3x prices the application from its parallelism (KPU count), so the running KPU cost is visible before deployment.
Terraform example
A minimal but realistic configuration that C3X can estimate.
resource "aws_kinesisanalyticsv2_application" "stream" {
name = "event-processor"
runtime_environment = "FLINK-1_18"
service_execution_role = aws_iam_role.flink.arn
application_configuration {
flink_application_configuration {
parallelism_configuration {
parallelism = 2
parallelism_per_kpu = 1
configuration_type = "CUSTOM"
}
}
}
}Pricing dimensions
What you actually pay for when you provision aws_kinesisanalyticsv2_application.
| Dimension | Unit | What's being charged |
|---|---|---|
| Kinesis Processing Units | per KPU-hour | Each KPU (~1 vCPU, 4 GB) at ~$0.11/hour, provisioned by parallelism, billed while the application runs. $0.11/KPU-hour → 2 KPUs ≈ $160.60/month |
| Running storage | per GB-month | Storage for running application state, billed per GB-month. Usually small. |
Sample C3X output
A running application with parallelism 2 (2 KPUs), 24/7:
aws_kinesisanalyticsv2_application.stream
└─ Kinesis Processing Units (2 KPU) 1460 KPU-hours $160.60
Monthly $160.60Optimization tips
Common ways to reduce aws_kinesisanalyticsv2_application cost without changing the workload.
Right-size parallelism
~$80/month per KPU avoidedKPU count is driven by parallelism and parallelism-per-KPU. Set parallelism to what the throughput actually needs — over-provisioning parallelism for headroom provisions (and bills) KPUs you don't use.
Stop applications that aren't needed
Full KPU cost during idle periodsA running app bills its KPUs continuously, traffic or not. Stop dev/test and intermittent applications when they're not processing — there's no KPU charge while stopped.
Enable autoscaling for variable load
KPU-hours during low loadManaged Flink can autoscale KPUs to throughput, so an app sized for peak doesn't run peak KPUs around the clock. Right for workloads with daily or weekly load swings.
Tune the Flink job for efficiency
Per KPU reducedInefficient Flink jobs (skewed parallelism, heavy state, large windows) need more KPUs for the same throughput. Optimizing the job lets it hit the target on fewer KPUs.
FAQ
How is Managed Service for Apache Flink billed?
Per Kinesis Processing Unit (KPU) — ~1 vCPU and 4 GB each at ~$0.11/hour — provisioned by the application's parallelism, plus a small orchestration charge and state storage. Two KPUs is ~$161/month, billed while the application runs.
Does it cost money when no events flow?
Yes — a running Flink application bills its provisioned KPUs continuously regardless of event volume. Streaming apps are inherently always-on, so the cost is steady. Stopping the application is the only way to halt the KPU charge.
How does c3x estimate the cost?
From the application's parallelism (which determines KPU count), pricing KPU-hours. State storage is small and modelled separately.
Related resources
Estimate this resource in your own Terraform
Free, open source, no API key. C3X parses your Terraform and shows line-item cost for every resource, including aws_kinesisanalyticsv2_application.