Manage Pipelines usage
Understand Pipelines charges, compare billing examples, and reduce unnecessary usage.
What you are charged for#
Pipelines has three charges:
- Pipeline hours measure how long each pipeline remains configured, including while stopped. Delete the pipeline to end this charge.
- Initial sync data processed is the Postgres row data accepted by the destination when a table is first synchronized or synchronized again.
- Ongoing replication data processed is the Postgres row data accepted by the destination for subsequent database changes. It depends on how much your published data changes, not on the source table size, WAL size, or destination's compressed storage size.
Tables excluded from Initial sync do not incur an initial sync data charge. Pipeline-hour charges and charges for ongoing changes still apply. See Choosing which tables to copy.
Destination-provider charges are separate. For example, Google Cloud can charge for BigQuery ingestion, storage, and CDC compute.
Pricing#
| Plan | Pipeline hours | Initial sync | Ongoing replication |
|---|---|---|---|
| Free | - | - | - |
| Pro | $0.053/hr | $0.60 per GB | $3.00 per GB |
| Team | $0.053/hr | $0.60 per GB | $3.00 per GB |
| Enterprise | Custom | Custom | Custom |
Cost estimates#
The Dashboard estimates initial sync volume and cost from source table metadata without scanning all rows. You can create a pipeline or restart table replication even if an estimate is unavailable.
Estimates are planning guidance, not exact quotes. Actual charges reflect row data copied after publication column and row filters and accepted by the destination.
Billing examples#
Billing period without an initial sync#
The project has a configured pipeline for the entire month.
| Line Item | Units | Costs |
|---|---|---|
| Pro Plan | - | $25 |
| Compute Hours Small Project 1 | 730 Hours | $15.04 |
| ETL Pipeline Hours | 730 Hours | $38.69 |
| ETL Replicated Data GB | 150 GB | $450 |
| Subtotal | $528.73 | |
| Compute Credits | -$10 | |
| Total | $518.73 |
Multiple projects with initial syncs#
Multiple projects had a configured pipeline for the entire month and processed data during initial sync and ongoing replication.
| Line Item | Units | Costs |
|---|---|---|
| Pro Plan | - | $25 |
| Compute Hours Small Project 1 | 730 Hours | $15.04 |
| ETL Pipeline Hours Project 1 | 730 Hours | $38.69 |
| ETL Replicated Data GB Project 1 | 15 GB | $45 |
| ETL Copy Backfill Data GB Project 1 | 150 GB | $90 |
| Compute Hours Small Project 2 | 730 Hours | $15.04 |
| ETL Pipeline Hours Project 2 | 730 Hours | $38.69 |
| ETL Replicated Data GB Project 2 | 70 GB | $210 |
| ETL Copy Backfill Data GB Project 2 | 1,500 GB | $900 |
| Subtotal | $1377.46 | |
| Compute Credits | -$10 | |
| Total | $1367.46 |
After deleting a pipeline after one day#
Pipeline hours are billed in arrears. Deleting the pipeline after 24 hours ends that charge; other project charges continue.
| Line Item | Hours | Costs |
|---|---|---|
| Pro Plan | - | $25 |
| Compute Hours Small Project 1 | 730 | $15.04 |
| ETL Pipeline Hours Project 1 | 24 | $1.27 |
| Subtotal | $41.31 | |
| Compute Credits | -$10 | |
| Total | $31.31 |
Optimize usage#
- Include only the tables and columns that you need at the destination.
- Keep high-churn tables out of the publication when their changes are not needed for analytics.
- If you no longer require replication, delete the pipeline through your project's replication settings to stop pipeline-hour charges.
How data processed is measured#
Data processed measures logical Postgres row data accepted by the destination, independent of physical storage size or destination encoding.
The measurement includes:
- Initial sync and resynchronization: Row data emitted by Postgres COPY.
- Ongoing replication: Row values Postgres emits for inserts, updates, and deletes. Updates include new row values and any previous identity values Postgres emits. Deletes include the emitted identity values.
Failed destination write attempts that Pipelines retries are not counted. Data is counted only after the destination acknowledges successful processing. In rare cases, Pipelines can count an acknowledged batch but crash or be interrupted before its replication checkpoint is persisted. Recovery can then process and count the same data again.
Data successfully processed again after restarting table replication, repeating an interrupted initial sync, or recovering a lost main slot is also counted again. Restart pipeline normally resumes saved progress, but startup recovery can require copying data again.
Usage on your invoice#
Usage is shown as "ETL Pipeline Hours", "ETL Copy Backfill Data GB", and "ETL Replicated Data GB" on your invoice.