Total cost of ownership for a data platform is the platform bill plus everything around it: storage, data transfer, BI and tool licenses, the people who run it, and the one-time cost of migrating. In the three-year estimate below, the platform bill is roughly a tenth of the total, so a comparison that stops at unit prices misses most of the money.
This guide is part of our platform modernization research. Prices are US list prices as of October 2026.
What costs belong in a data platform TCO?
Seven components: compute, storage, data transfer, licenses, supporting tools, people and migration. The first three appear on the platform or cloud invoice. The rest sit in other budgets, which is why they are often left out of vendor comparisons.
| Component | What drives it | Where it appears |
|---|---|---|
| Compute | Processing used by queries, pipelines and ML jobs; engine size; idle time | Platform invoice (credits, DBUs, slot-hours, capacity units, RPU-hours) |
| Storage | Volume kept, retention and time travel, copies | Platform invoice, or your cloud provider's bill |
| Data transfer | Data leaving a region, a cloud or the platform, such as extracts to BI tools and partners | Cloud provider or platform invoice |
| Licenses | BI seats, platform editions or tiers, security and compliance add-ons | Separate contracts; some add-ons are a percentage of platform spend |
| Supporting tools | Ingestion, transformation, orchestration, observability, catalog | Separate contracts, or engineering time for open-source tools |
| People | Data engineers, a platform owner, cost management, training | Payroll or contractor invoices |
| Migration | Code conversion, data movement, validation, running old and new systems in parallel, BI rework | Consulting invoices, internal time, and the old platform's costs during the overlap |
If you may leave the platform later, exit costs belong in the model too. The data transfer section below covers them.
How do Snowflake, Databricks, BigQuery, Fabric and Redshift charge?
Each platform meters compute in its own unit: credits (Snowflake), Databricks Units or DBUs (Databricks), bytes scanned or slot-hours (BigQuery), capacity units (Fabric), and RPU-hours (Redshift Processing Units) or node-hours (Redshift). Storage is billed separately. The tables show US list rates as of October 2026; regions, editions and contracts change them.
| Platform | Compute unit | Example list rate | Billing detail |
|---|---|---|---|
| Snowflake | Credit; warehouse size sets credits per hour (XS 1, S 2, M 4, L 8 on standard warehouses) | $2.00 Standard, $3.00 Enterprise, $4.00 Business Critical per credit (AWS US East, on demand) | Per second while a warehouse runs, 60-second minimum each time it starts or resumes; suspended warehouses use no credits. Second-generation warehouses use more credits per hour (M: 5.4 on AWS) |
| Databricks | DBU; the rate depends on product and plan | Premium plan, AWS US East: Jobs classic $0.15, all-purpose classic $0.55, SQL Pro $0.55, SQL serverless $0.70 per DBU | Per second. Classic compute also needs cloud virtual machines billed by your cloud provider; serverless rates include the compute |
| BigQuery | Bytes scanned (on demand) or slot-hours (editions) | On demand $6.25 per TiB, first 1 TiB each month free. Editions, pay as you go: Standard $0.04, Enterprise $0.06, Enterprise Plus $0.10 per slot-hour (Iowa) | Editions autoscale and bill per second with a one-minute minimum; one- and three-year commitments lower the slot-hour rate |
| Microsoft Fabric | Capacity unit (CU); capacities run from F2 (2 CUs) to F8192 | $0.18 per CU-hour pay as you go (US East) | One-minute minimum; capacity can be paused; every workload shares the capacity; one- or three-year reservations save about 41% (Microsoft) |
| Amazon Redshift | RPU-hour (Serverless) or node-hour (provisioned) | Serverless $0.375 per RPU-hour; RA3 nodes $0.543 (ra3.large) to $13.04 (ra3.16xlarge) per hour (US East, N. Virginia) | Serverless bills per second with a 60-second minimum and a base capacity of 4 to 1,024 RPUs; reserved pricing exists for both |
Storage and the extra charges differ as well.
| Platform | Storage (US list rate) | Other charges to model |
|---|---|---|
| Snowflake | $23 per TB-month on demand, measured on compressed data (AWS US East) | Cloud services compute is free up to 10% of daily warehouse credits; serverless and AI features are metered separately; capacity contracts discount the on-demand credit rate |
| Databricks | Your cloud's object storage (S3 Standard lists $0.023 per GB-month for the first 50 TB in US East), or Databricks default storage at about $0.023 per GB-month plus operations | Add-ons priced as a share of spend, for example 15% of product spend for Enhanced Security and Compliance; serverless data transfer fees |
| BigQuery | Active logical storage about $23.55 per TiB-month in us-central1; unmodified tables move to a cheaper long-term rate after 90 days | Batch loading is free; streaming writes through the Storage Write API cost $0.025 per GiB after the first 2 TiB each month |
| Fabric | OneLake hot storage $0.026 per GB-month (US East) | Power BI Pro at $14 per user per month for publishers and for viewers on capacities below F64; capacity overage billing; network charges announced as coming |
| Redshift | Managed storage $0.024 per GB-month (US East, N. Virginia) | Spectrum scans of S3 data at $5 per TB on provisioned clusters; standard AWS data transfer rates |
The models reward different habits:
- Snowflake and Redshift Serverless bill for time the engine runs, so idle or oversized compute is the main waste.
- BigQuery on demand bills for bytes scanned however long a query takes, so table design and filters drive cost. Editions switch to paying for slots over time.
- Fabric charges for the capacity you size. Spare capacity costs money unless you pause it, and reservations only pay off for steady use.
- Databricks splits the bill between DBUs and your cloud provider on classic compute, and uses a single price on serverless.
How do you compare platforms that bill in different units?
Convert the same budget into each platform's units, then measure how much of your own workload those units cover. A credit, a DBU, a slot-hour, a CU-hour and an RPU-hour measure different things, and the work each buys depends on the engine and the query.
Estimate: $6,250 a month ($75,000 a year) of compute at the list rates above buys the following. The arithmetic is budget divided by rate.
| Platform and rate | Units per month | Around the clock (730 hours) |
|---|---|---|
| Snowflake Enterprise, $3.00 per credit | 2,083 credits | 2.9 credits per hour |
| Databricks SQL serverless, $0.70 per DBU | 8,929 DBUs | 12.2 DBUs per hour |
| BigQuery Enterprise edition, $0.06 per slot-hour | 104,167 slot-hours | 143 slots |
| Fabric pay as you go, $0.18 per CU-hour | 34,722 CU-hours | 48 CUs |
| Redshift Serverless, $0.375 per RPU-hour | 16,667 RPU-hours | 23 RPUs |
The table says nothing about which platform finishes your queries sooner. To compare, run the same representative workload on each shortlisted platform for a few weeks: your heaviest dashboards, a nightly transformation and a set of ad hoc queries. Record the billed units and multiply by the rate. Ask any partner recommending a platform to show the same measurement.
What do data transfer and exit cost?
Moving data inside a region is usually free, but crossing regions, clouds or the internet is metered on every platform. List rates run from about $0.02 per GB between regions of the same cloud to $0.09 to $0.12 per GB to the internet.
| Path | List rate |
|---|---|
| Snowflake (AWS US East): same region; another region on the same cloud; another cloud or the internet | $0; $20; $90 per TB |
| Databricks serverless (AWS US East): another region on the same cloud | $0.02 per GB |
| AWS to the internet (US East): first 10 TB a month, after 100 GB free | $0.09 per GB |
| Azure to the internet (Microsoft global network, East US): after 100 GB free, up to about 10 TB | $0.087 per GB |
| Google Cloud to worldwide destinations except Australia: first 1 TiB a month | $0.12 per GiB |
AWS, Google Cloud and Microsoft each waive internet egress fees for customers that move off, but you have to ask: AWS through support, Google through an exit notice that ends the agreement for the service, and Microsoft through support with all Azure subscriptions cancelled. The UK Competition and Markets Authority notes that these programs do not cover ongoing multi-cloud use, so model steady cross-cloud traffic at list rates. Under the EU Data Act, providers may charge only cost-based switching fees until 12 January 2027, and none after that date (Article 29).
What does a three-year estimate look like?
This worked example prices a hypothetical mid-sized analytics team over three years. It is an estimate built from list prices and assumptions we chose, not a benchmark or a quote. The platform bill (compute, storage and data transfer) comes to about 10% of the total; people and migration make up most of the rest.
| Item | Assumption | Basis |
|---|---|---|
| Horizon | 36 months, USD, list prices; no discounts, taxes, or wage inflation | Simplification |
| Data stored | 50 TB in year 1, 60 TB in year 2, 72 TB in year 3 | Assumption: 20% annual growth |
| Compute | $75,000 in year 1, then $90,000 and $108,000 | Assumption: $6,250 a month, growing 20% a year. For scale, about 2,083 Snowflake credits a month at $3.00 |
| Storage | $25 per TB-month | List rates above run from about $23 to $27 per TB-month |
| Data transfer | 2 TB a month leaves the cloud: 2,000 GB × $0.09 = $180 a month, $2,160 a year | Assumption; matches AWS and Snowflake internet rates |
| BI licenses | Assumed 40 users × $14 × 12 = $6,720 a year | Power BI Pro list price; substitute your BI tool |
| Supporting tools | $60,000 a year, flat | Assumption for ingestion, transformation, orchestration and observability; replace with quotes |
| People | Assumed team of 4 (3 data engineers, 1 platform and cost owner) at $139,500 ÷ 0.70 = $199,286 each, so $797,143 a year | BLS median wage for database architects, May 2025; wages are 70.0% of private-industry compensation (BLS, June 2026) |
| Migration | Assumed 4 consultants × 5 months × 160 hours = 3,200 hours; × $150 = $480,000, year 1 only | The $150 hourly rate is a DCF Research estimate: an illustrative round figure, not a market benchmark. Replace it with quotes; our data engineering pricing guide covers rate ranges |
Result of the estimate. The figures are exact arithmetic on the assumptions above, not a forecast to the dollar.
| Component | Year 1 | Year 2 | Year 3 | 3-year total | Share |
|---|---|---|---|---|---|
| Compute | $75,000 | $90,000 | $108,000 | $273,000 | 8.0% |
| Storage | $15,000 | $18,000 | $21,600 | $54,600 | 1.6% |
| Data transfer | $2,160 | $2,160 | $2,160 | $6,480 | 0.2% |
| BI licenses | $6,720 | $6,720 | $6,720 | $20,160 | 0.6% |
| Supporting tools | $60,000 | $60,000 | $60,000 | $180,000 | 5.3% |
| People | $797,143 | $797,143 | $797,143 | $2,391,429 | 70.2% |
| Migration | $480,000 | $0 | $0 | $480,000 | 14.1% |
| Total | $1,436,023 | $974,023 | $995,623 | $3,405,669 | 100% |
What the estimate shows, given these assumptions:
- A compute bill 30% lower saves $81,900 over three years, 2.4% of the total. One more engineer costs $597,857 over the same period, 17.6% of the total. Skills fit and operating burden belong next to unit prices.
- The platform share grows with scale. With compute five times larger and the same team, compute would be $1,365,000, about 30% of a $4,497,669 total.
- Not included: running the legacy platform during the overlap, training, cloud and vendor support plans, security add-ons (Databricks lists one at 15% of product spend), discounts and price changes.
How do you keep consumption costs under control?
Set limits where the platform allows, track unit cost per workload, and compare commitments with steady-state use. In Flexera's 2026 survey of more than 750 respondents, organizations estimated that 29% of their IaaS and PaaS spend is wasted, and 63% said they had FinOps teams.
- Snowflake: tune auto-suspend, because billing runs per second after a 60-second minimum. See our Snowflake cost optimization guide.
- BigQuery: cap the maximum bytes billed per query and set user-level and project-level custom cost controls.
- Fabric: pause idle capacity, and use surge protection and overage settings to manage spikes.
- Databricks: run scheduled pipelines on Jobs compute. Its classic DBU rate is $0.15 against $0.55 for all-purpose classic compute on the same plan and region.
- Redshift Serverless: choose base capacity deliberately within the 4 to 1,024 RPU range.
Frequently asked questions
Is the cloud cheaper than an existing on-premises warehouse?
It depends on utilization and staffing, and no general figure is reliable. Build the baseline from your own invoices over the same three years: hardware refresh or lease, maintenance contract, facilities and power, software licenses, and the share of staff time spent on administration. Then compare it with the cloud lines above plus migration and the overlap period when both systems run. Our cloud data platform migration guide covers choosing the target.
Should we commit to reserved capacity?
Only for the steady baseline. Microsoft says Fabric one- or three-year reservations save about 41% against pay as you go. BigQuery's Enterprise edition lists one- and three-year slot commitments at $0.048 and $0.036 per slot-hour against $0.06 pay as you go (US multi-region, as of October 2026), which is 20% and 40% lower. Redshift Serverless reservations save up to 24% (one year) or 45% (three years). Flexera found fewer than half of organizations use any one commitment discount per cloud provider.
Do platform prices include the cloud provider's charges?
It varies. Snowflake's credit price covers the compute. On Databricks, classic compute adds virtual machines billed by your cloud provider, serverless includes them, and Azure Databricks is billed directly by Microsoft. BigQuery, Fabric and Redshift are billed by Google, Microsoft and AWS themselves.
What does Fabric's on-demand billing change?
Microsoft announced on September 28, 2026 that on-demand billing across Fabric workloads and a zero-provisioned F0 capacity are coming, and its September feature summary lists both as coming soon in preview. Microsoft's Retail Prices API already carries on-demand meters dated October 1, 2026, priced at 1.0 to 3.0 times the $0.18 pay-as-you-go CU-hour rate depending on the workload category. Our reading is that on-demand billing suits bursty or lightly used workloads, while steady workloads stay cheaper on capacity, especially reserved capacity. Confirm availability and terms with Microsoft before modeling it.
Sources
- Snowflake Service Consumption Table (effective October 15, 2026) — Snowflake (2026). https://www.snowflake.com/legal-files/CreditConsumptionTable.pdf
- Snowflake pricing options — Snowflake (2026). https://www.snowflake.com/en/pricing-options/
- Databricks pricing — Databricks (2026). https://www.databricks.com/product/pricing
- Databricks Lakehouse (SQL) pricing — Databricks (2026). https://www.databricks.com/product/pricing/databricks-lakehouse
- Lakeflow Jobs pricing — Databricks (2026). https://www.databricks.com/product/pricing/lakeflow-jobs
- Compute for data science (all-purpose) pricing — Databricks (2026). https://www.databricks.com/product/pricing/datascience-ml
- Platform tiers and add-ons — Databricks (2026). https://www.databricks.com/product/pricing/platform-addons
- Storage pricing — Databricks (2026). https://www.databricks.com/product/pricing/storage
- Data transfer and connectivity pricing — Databricks (2026). https://www.databricks.com/product/pricing/data-transfer-connectivity
- BigQuery pricing — Google Cloud (2026). https://cloud.google.com/bigquery/pricing
- Network pricing — Google Cloud (2026). https://cloud.google.com/vpc/network-pricing
- Applying for free data transfer when exiting Google Cloud — Google Cloud (2026). https://cloud.google.com/exit-cloud
- Microsoft Fabric pricing — Microsoft Azure (2026). https://azure.microsoft.com/en-us/pricing/details/microsoft-fabric/
- Azure Retail Prices API, service "Microsoft Fabric", region eastus (CU-hour, OneLake and on-demand meter rates) — Microsoft (2026). https://prices.azure.com/api/retail/prices?$filter=serviceName%20eq%20%27Microsoft%20Fabric%27%20and%20armRegionName%20eq%20%27eastus%27
- Azure Retail Prices API, service "Bandwidth", region eastus (data transfer out rates) — Microsoft (2026). https://prices.azure.com/api/retail/prices?$filter=serviceName%20eq%20%27Bandwidth%27%20and%20armRegionName%20eq%20%27eastus%27
- Cancel and delete your Azure subscription (data transfer when moving off Azure) — Microsoft Learn (2026). https://learn.microsoft.com/en-us/azure/cost-management-billing/manage/cancel-azure-subscription
- Power BI pricing — Microsoft (2026). https://www.microsoft.com/en-us/power-platform/products/power-bi/pricing
- FabCon and SQLCon 2026 in Barcelona — Microsoft Azure Blog (2026). https://azure.microsoft.com/en-us/blog/fabcon-and-sqlcon-2026-in-barcelona-building-the-data-foundation-for-microsoft-copilot-and-agents/
- Fabric September 2026 Feature Summary — Microsoft Fabric Blog (2026). https://community.fabric.microsoft.com/blog/fbc_fabricupdatesblogs/fabric-september-2026-feature-summary/5325825
- Amazon Redshift pricing — AWS (2026). https://aws.amazon.com/redshift/pricing/
- AWS Price List, Amazon Redshift, us-east-1 (RA3 node rates) — AWS (2026). https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AmazonRedshift/current/us-east-1/index.json
- AWS Price List, AWS Data Transfer, us-east-1 (internet egress tiers) — AWS (2026). https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AWSDataTransfer/current/us-east-1/index.json
- Amazon EC2 on-demand pricing, Data Transfer (100 GB monthly free allowance) — AWS (2026). https://aws.amazon.com/ec2/pricing/on-demand/
- AWS Price List, Amazon S3, us-east-1 (S3 Standard storage rate) — AWS (2026). https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AmazonS3/current/us-east-1/index.json
- Free data transfer out to internet when moving out of AWS — AWS News Blog (2024). https://aws.amazon.com/blogs/aws/free-data-transfer-out-to-internet-when-moving-out-of-aws/
- Cloud services market investigation, Appendix N: Egress fees and free switching programmes — UK Competition and Markets Authority (2025). https://assets.publishing.service.gov.uk/media/688b8169fc784fa12a089071/Appendix_N_-_Egress_fees___free_switching_programmes.pdf
- Regulation (EU) 2023/2854 (Data Act), Article 29 — EUR-Lex (2023). https://eur-lex.europa.eu/eli/reg/2023/2854/oj
- Database Administrators and Architects, Occupational Outlook Handbook (median wage, May 2025) — U.S. Bureau of Labor Statistics (2026). https://www.bls.gov/ooh/computer-and-information-technology/database-administrators.htm
- Employer Costs for Employee Compensation, June 2026 — U.S. Bureau of Labor Statistics (2026). https://www.bls.gov/news.release/ecec.nr0.htm
- Flexera 2026 State of the Cloud Report — Flexera (2026). https://www.flexera.com/about-us/press-center/flexera-finds-cloud-value-is-rising-while-ai-waste-grows