Editor’s note: This Decodable review is based on my hands-on evaluation of Decodable as sold in October 2026 (Apache Flink 1.19 runtime, CLI 1.20.4). I weighed pricing, setup, Debezium CDC, pipelines, deployment, security and the Redis acquisition.
Quick verdict: I recommend Decodable for AWS teams that want CDC and Flink SQL without running Kafka Connect or a Flink cluster, if you can live with a product in maintenance mode. Redis announced its intent to buy Decodable on September 4, 2025; the blog’s last post is from June 2025 and the docs stopped changing in October 2025.
Key Takeaways
- Per-minute billing: $0.12 per credit On Demand or $0.10 committed; a Medium task uses 2 credits an hour.
- Six CDC databases: managed Debezium covers Postgres, MySQL, SQL Server, Oracle, MongoDB and DynamoDB.
- Custom jobs need a paid plan: SQL runs on every plan; Java and Python jobs start on On Demand.
- Frozen release cadence: Redis owns it, and the blog and docs have not moved since 2025.
- AWS-only, Flink 1.19: five AWS regions, no Flink 2.x.
Among stream-processing tools, Decodable bundles serverless Flink with managed Debezium, so a database-to-warehouse pipeline needs no Kafka Connect cluster.
In this review, I’ll take a closer look at Decodable’s pricing, connectors, pipelines and deployment options, so you can see exactly whether managed CDC outweighs the roadmap risk.
Pros and Cons
Pros
- Managed Debezium CDC for Postgres, MySQL, SQL Server, Oracle, MongoDB and DynamoDB
- Flink SQL and custom Java or Python Flink jobs on one platform
- Per-minute credit billing: $0.12 per credit on demand, $0.10 committed
- Free plan with 4 running tasks and Flink SQL included
- Declarative YAML through decodable apply, plus a CLI, API and dbt adapter
- 99.99% uptime SLA and 2-hour support response on Enterprise
Cons
- Owned by Redis since September 2025, and the blog has been silent since June 2025
- Flink 1.19 is the newest runtime; no Flink 2.x
- AWS only: five public regions, and BYOC runs on AWS alone
- BYOC, PrivateLink, SSO and HIPAA are Enterprise-only
- No SQL user-defined functions and no session windows
How Much Does Decodable Cost?
Decodable bills per credit, not per seat: Free costs nothing, On Demand charges $0.12 per credit and Enterprise $0.10 per credit.
- Free ($0): for proving one pipeline, with 4 running tasks, Small and Medium task sizes, Flink SQL and the managed connector library. No credit card needed.
- On Demand ($0.12 per credit): for production without an annual commit, billed monthly by credit card or ACH. Adds Large tasks, unlimited running tasks and custom Java and Python pipelines.
- Enterprise ($0.10 per credit): for annual pre-purchased capacity, paid by card, ACH, wire or invoice. Adds custom task sizes, BYOC, SSO, PrivateLink and HIPAA.
Each running task consumes credits metered in 1-minute increments, with no cap on records per second, and a stopped job consumes nothing. A Medium task uses 2 credits an hour and a Large task 4, and sources and sinks run as tasks too, not just the SQL.
Decodable does not publish credit rates for Small, LM2 or LM4 tasks. Get those rates in writing before sizing a pipeline on them, rather than extrapolating from Medium.
| Plan | Price per credit | Task sizes | Running tasks | Stream retention | Uptime SLA | Support |
|---|---|---|---|---|---|---|
| Free | Free | Small, Medium | 4 | 24 hours / 10 GiB | None | Community Slack and chat, best effort |
| On Demand | $0.12 | Small, Medium, Large | Unlimited | 7 days / 100 GiB | 99.9% | Adds email, weekdays 8am to 5pm, 4-hour first response |
| Enterprise | $0.10 | Small, Medium, Large, custom | Unlimited | 7 days, extendable | 99.99% | 24/7, 2-hour first response, dedicated Slack or Teams |
Is Decodable Good Value for Money?
- Simple replication is cheap: Postgres CDC into Snowflake runs on 2 Medium tasks, 4 credits an hour, so $0.40 to $0.48 an hour. Always on (730 hours a month), that is about $292 committed or $350 On Demand.
- Transforms multiply the bill: the Kafka-to-Iceberg example spreads 9 Medium tasks across a Kafka source, a SQL transform and an Iceberg sink for 18 credits an hour, about $1,314 committed or $1,577 On Demand a month.
- Rivals price compute only: Confluent Cloud for Apache Flink charges $0.21 per CFU-hour, and Amazon Managed Service for Apache Flink $0.11 per KPU-hour in us-east-1 plus an orchestration KPU per app. Neither rate includes managed Debezium, and the units do not map one to one.
- Free fits exactly one pipeline: 4 tasks cover one CDC source, one SQL pipeline and one sink with one spare, and custom Java or Python jobs are off the table.
Reviewer’s Notes: Start on Free to prove the pipeline, then move to On Demand for production SQL pipelines. Enterprise is the only route to BYOC, PrivateLink, SSO and HIPAA, and I’d hold that annual commit until Redis confirms Decodable’s support term and roadmap in writing.
My Experience With Decodable
Signing Up and Picking a Region
Decodable builds every pipeline from three objects: connections, streams and pipelines, and I set up all three on the Free plan, which asked for no credit card. Free and On Demand accounts log in with a username and password or a social login; SSO waits for Enterprise.
The region choice is AWS only, from five public regions:
us-east-1us-west-2eu-central-1ap-southeast-2af-south-1
A GCP Pub/Sub source connector exists, but the runtime never leaves AWS, so pick the region nearest your source database.
Connecting a Postgres CDC Source
I created a Postgres CDC source connection, which reads several tables and schemas through managed Debezium. Tables with a primary key write a change stream; tables without one write an append stream.
Postgres CDC runs on Medium or larger tasks (Medium, Large, LM2 or LM4), so Small is not an option even for a trial. Records land in Decodable exactly once.
After activating the connection, I previewed the incoming records in the app and checked the stream type, because the Snowflake sink treats append and change streams differently.
Writing a SQL Pipeline
My Flink SQL pipeline read the change stream and wrote an output stream, and real-time preview showed the results before I activated it. The source connection and the transform stay separate resources, unlike a single custom Flink application that does both.
I picked task size and count myself. Medium is the recommended starting size: Small handles filtering at hundreds of events per second, Medium handles aggregations at thousands, and Large through LM4 handle joins and large aggregations.
Size and count change only on a stop and restart, so every resize means stopping the pipeline rather than adjusting it live.
Sinking to Snowflake and Moving to YAML
The Snowflake sink accepts append or change streams, one type per connection. Change streams deliver exactly once and append streams at least once, so the stream type set at ingestion carries through to the warehouse.
I then moved the same resources into YAML. decodable apply creates or updates connections, streams, pipelines and secrets atomically and idempotently, decodable query returns their state as YAML and can activate, deactivate or restart them, and decodable connection scan generates connection definitions.
The open-source dbt-decodable adapter manages pipelines and streams as dbt models, which suits teams whose transformations already live in dbt.
Reviewer’s Notes: Custom Java and Python pipelines stay locked until support enables them, and editing a pipeline’s SQL does not check state compatibility. I treat every SQL change like a deployment, with a snapshot taken before activation.
Connectors and Managed Debezium CDC
Decodable lists 17 source connectors and roughly 30 sinks, and six of the sources are managed Debezium CDC: Postgres, MySQL, SQL Server, Oracle, MongoDB and DynamoDB. That bundled CDC layer is the main reason to pick it over a bare managed Flink runtime.
- Stream sources: Apache Kafka, Redpanda, Confluent Cloud, Kinesis, Pulsar, Astra Streaming and GCP Pub/Sub.
- Other sources: S3, S3 Lambda, REST and Datagen for test data.
- Warehouse and lake sinks: Snowflake, Redshift, Iceberg, Delta Lake, Hudi and S3.
- Analytics and search sinks: ClickHouse, Pinot, Druid, StarTree, SingleStore, Elasticsearch and OpenSearch.
- Database and monitoring sinks: Postgres, MySQL, SQL Server, Oracle, MongoDB, InfluxDB and Datadog.
There is no vector database sink, Pinecone included.
Change streams carry Debezium-style records: create, update and delete operations with before and after images. They need a declared primary key, which is what lets a sink update a row instead of appending every change as a new one. Delivery into sinks is at-least-once or exactly-once depending on the connector.
One Postgres CDC connection can feed several pipelines from the same change stream, each writing to a different sink, including joins across CDC sources into Elasticsearch or a warehouse.
| Destination | Supported behavior | Important restriction |
|---|---|---|
| Snowflake | Append and change streams | One stream type per connection |
| Iceberg | Upserts from change streams; Parquet, Avro or ORC | S3 storage; AWS Glue catalog only |
| Delta Lake | Append-only delivery | S3 storage; no upserts from change streams |
| Redis | Manually configured integration | Requires a Confluent Cloud sink, not a native connector |
Iceberg is the better lakehouse target for update-heavy CDC, as long as AWS Glue is your catalog; Delta Lake only appends.
Oracle CDC uses LogMiner, with no GoldenGate, and works only with non-CDB deployments. A column change or a new table forces a connection restart that discards state and re-snapshots everything, so Oracle schema changes need a planned window. MongoDB CDC also needs Medium or larger tasks.
Redis is not a native sink: it takes manual setup through a Confluent Cloud sink, which is awkward for a Redis-owned product. If Redis is the only destination, Redis Data Integration fits better.
Amazon MSF leaves connector code and CDC wiring to the application team, and Confluent sells CDC through its own connector catalog. Decodable wins when managed Debezium and downstream SQL have to live in one service.
Pipelines: Flink SQL, Custom Java and Python Jobs
Decodable runs two pipeline types: SQL pipelines on every plan, and custom pipelines on On Demand and Enterprise. Custom pipelines are Flink jobs in Java (Table or DataStream API) or Python (PyFlink), uploaded as a JAR or ZIP, and support has to enable them before the first upload. Free cannot run them at all.
Java jobs build on the open-source decodable-pipeline-sdk, whose last commits in September 2025 fixed Maven Central publishing and added full key and value record access.
| Custom Flink runtime | Java | Python |
|---|---|---|
| 1.16 | Java 11 | Python 3.10 |
| 1.18 | Java 11 | Python 3.10 |
| 1.19 | Java 11 | Python 3.11 |
Flink 1.19 is the ceiling, with no Flink 2.x option, so a job or library built for Flink 2.x does not run here. A custom job on 3 Large tasks uses 12 credits an hour: $1.20 at the Enterprise rate or $1.44 On Demand.
SQL Restrictions
- No user-defined functions: custom logic means a custom pipeline.
- No session windows: sessionization also needs a custom job.
- Sliding windows: window size must be a multiple of the slide.
- Window grouping: windowed aggregates must group by both
window_startandwindow_end.
Python custom pipelines cannot read Decodable streams, so PyFlink is a weaker escape hatch than Java for extending a SQL pipeline. RBAC for streams also does not apply to custom pipelines.
State and Observability
Pipelines are stateful Flink jobs with snapshots, scheduled snapshots and scale-to-zero, and previews let me pick the starting position. Observability runs through two system streams:
_events: state transitions and errors._metrics: metrics I can query or route to a sink such as Datadog.
The app shows only aggregate input metrics, not per-stream ones. REST and Datagen connectors expose no metrics, and custom job metrics for Java and Python are Enterprise-only.
Confluent Cloud for Apache Flink is SQL-first and tied to its Kafka service, while self-managed Apache Flink gets Flink 2.x first. I pick self-managed Flink when runtime-version control matters more than not running clusters.
Deployment, Security and the Redis Acquisition
Deployment Options
Every plan runs on a serverless control plane and data plane. Enterprise adds BYOC (self-managed, or fully managed by Decodable), isolated single-tenancy and custom regions.
BYOC is AWS-only. Setup starts with a support request to convert the account and needs:
- your AWS account ID;
- an mTLS key pair;
- Decodable’s Terraform and Helm charts;
- a Kubernetes cluster in your AWS account.
That Kubernetes cluster is the work serverless avoids, so budget platform-team time before choosing BYOC.
Security and Compliance
Every plan includes RBAC, secrets management and the audit stream, plus SOC 2 Type II and GDPR.
SSO is Enterprise-only, covering SAML 2, OAuth2/OIDC, Okta, Ping, Azure AD and Google Workspace. So are private network connectivity such as AWS PrivateLink, HIPAA compliance and service accounts. A team that needs SAML login or HIPAA has no On Demand path.
What Redis Ownership Means
Redis announced on September 4, 2025 that it intends to acquire Decodable to widen Redis Data Integration (RDI), integrating it into Redis Cloud first and bringing it to RDI on Redis Software later. The Decodable site still sells all three plans under a banner saying Decodable has been acquired by Redis.
The blog’s last post is from June 2025, the docs were last updated in October 2025, and the dbt adapter and pipeline SDK last changed in September 2025.
RDI on Redis Cloud went GA on AWS on June 8, 2026, and RDI 1.18 (April 2026) added a Flink-based processor in Preview: Kubernetes-only and not supported for production. Redis has not tied either release to Decodable by name.
Redis has published no end-of-sale date or migration path, and RDI writes only to Redis, so it does not replace Decodable’s Snowflake or Iceberg sinks today.
Reviewer’s Notes: Before an annual commit, ask your account rep for the support term and migration path in writing. If the rep cannot give one, stay on monthly On Demand billing.
How Does Decodable Compare to Competitors?
Decodable’s edge is managed Debezium plus Flink SQL at a low per-minute rate; Confluent fits existing Kafka estates, Amazon MSF fits AWS teams who write their own connectors, and streaming databases fit teams who want materialized views instead of Flink jobs.
| Tool | Starting price | Model | Best at |
|---|---|---|---|
| Decodable | $0.12 per credit On Demand; $0.10 committed; Medium uses 2 credits/hour | Managed Flink and Debezium; serverless or AWS BYOC | CDC pipelines without running Kafka Connect |
| Confluent Cloud for Apache Flink | $0.21 per CFU-hour; per-minute billing | Flink SQL compute pools alongside Kafka | Teams already on Confluent Kafka |
| Amazon Managed Service for Apache Flink | $0.11 per KPU-hour in us-east-1, plus an orchestration KPU per app | Managed Flink on AWS | Flink experts in AWS who write their own connectors |
| Ververica | No public price; sales | Flink platform from Flink’s original creators; BYOC on AWS or Azure, or self-managed | Enterprises needing sovereignty and Azure |
| RisingWave Cloud | Basic from $0.227 per RWU-hour | Postgres-compatible streaming database on AWS, GCP and Azure | Streaming SQL with materialized views, not Flink |
| Apache Flink, self-managed | Free, plus your infrastructure | Open source | Full control and Flink 2.x |
- Decodable vs Confluent Cloud for Apache Flink: Confluent wins when Kafka topics and Schema Registry already live there, with autoscaling compute pools and a
MAX_CFUspend cap. It bills per compute pool, not per statement, so cost attribution takes work. Decodable wins when database CDC is the starting requirement. - Decodable vs Amazon MSF: MSF suits Flink developers who package their own connectors inside AWS IAM and VPC, and it runs Java, Python and SQL through Studio notebooks with one-second billing. A KPU is 1 vCPU and 4 GB, but no managed Debezium comes with it.
- Decodable vs Ververica: Ververica wins when Azure BYOC or a fully self-managed deployment is mandatory, which Decodable offers on no plan. It sells through sales calls, with no self-serve signup. For a commercial CDC tool rather than a Flink platform, Striim is the alternative.
- Decodable vs RisingWave: RisingWave runs on AWS, GCP and Azure, the cloud coverage Decodable lacks, and Basic includes a 7-day trial with a 64-core cap. It is not Flink, so the engine and SQL dialect both change. Pick it, or Materialize, when Postgres-compatible materialized views matter more than Flink jobs.
- Decodable vs self-managed Flink: self-managed Flink gives Flink 2.x and full runtime control, but connectors and clusters become your job. Spark Structured Streaming is the option for a different engine altogether.
- Decodable vs Redis Data Integration: RDI, GA on Redis Cloud (AWS) since June 2026, runs CDC from MySQL, MariaDB, Oracle, SQL Server, Postgres and MongoDB into Redis only. It fits Redis-only delivery, not Snowflake or Iceberg pipelines.
Credits, CFUs, KPUs and RWUs measure different allocations, so unit price alone does not rank these services; who runs the connectors matters as much.
How I Reviewed Decodable
I worked through Decodable’s Free-plan setup path: a Postgres CDC source, its change stream, a SQL pipeline and a Snowflake sink. I then moved the same resources into YAML with the CLI, and weighed the dbt adapter, custom pipeline requirements, task sizing and the credit meter.
I compared deployment and security options plan by plan and tracked the product’s status since the Redis acquisition. For costs and capabilities, I set Decodable against Confluent Cloud for Apache Flink, Amazon Managed Service for Apache Flink, Ververica, RisingWave and self-managed Flink. Managed CDC coverage and deployment fit carried the most weight; runtime limits and annual-contract exposure counted as buying constraints, not footnotes.
Prices current as of October 2026.
Should You Use Decodable for Stream Processing?
Decodable is a capable managed Flink and Debezium service at a low per-minute rate: a two-task Postgres-to-Snowflake pipeline runs about $350 a month On Demand. It is also owned by Redis, its blog and docs have not moved since 2025, it runs only on AWS and it stops at Flink 1.19, with no published roadmap from Redis.
- AWS teams that need CDC into Snowflake, Iceberg or OpenSearch now: start on Free, run production on On Demand at $0.12 per credit, and keep a migration plan ready. Monthly billing keeps the exit cheap if Redis changes course.
- Teams planning a multi-year platform, or needing GCP, Azure or Flink 2.x: look at Confluent if Kafka already lives there, Ververica for Azure BYOC, or self-managed Flink for Flink 2.x.
- Redis shops: watch Redis Data Integration rather than building around Decodable’s manual Redis integration through a Confluent Cloud sink.
Sign up at Decodable and prove one pipeline on Free before paying for production capacity.
FAQs
Is Decodable still available after the Redis acquisition?
Yes. As of October 2026, signup and all three plans are live, and the site says Decodable has been acquired by Redis. Redis announced the deal on September 4, 2025 and has published no end-of-sale date or migration path, so confirm the support term before an annual purchase.
How much does Decodable cost?
Free costs nothing, On Demand is $0.12 per credit billed monthly, and Enterprise is $0.10 per credit on an annual commit. A Medium task uses 2 credits an hour, metered by the minute while it runs, so a two-task Postgres-to-Snowflake pipeline costs about $292 to $350 a month always on. Budget every connector and pipeline task, not just the SQL.
What version of Flink does Decodable use?
Custom pipelines run on Flink 1.16, 1.18 or 1.19, with no Flink 2.x option. All three use Java 11; Python is 3.10 on Flink 1.16 and 1.18, and 3.11 on Flink 1.19. Check an existing job’s Flink and library versions before planning a move to Decodable.
Does Decodable support CDC?
Yes. Decodable runs managed Debezium CDC for Postgres, MySQL, SQL Server, Oracle, MongoDB and DynamoDB. Change streams need a primary key and carry before and after images. CDC data enters Decodable exactly once, but delivery to sinks is at-least-once or exactly-once depending on the sink, so check the sink connector before promising end-to-end exactly-once.
Can I run Decodable in my own cloud?
Only on AWS, and only on Enterprise. Decodable offers BYOC on AWS, either self-managed or fully managed by Decodable. Setup goes through support and needs your AWS account ID, an mTLS key pair, Terraform and Helm charts and a Kubernetes cluster in your account. For Azure BYOC, look at Ververica.

