Contract traps

Contract traps in AWS, Azure, Google Cloud, and Databricks deals, from unused commitment to egress and auto-renewal.

On this page
  1. AWS
  2. Trap 1: EDP Doesn't Cover Marketplace Purchases
  3. Trap 2: EDP Minimum Commits with Penalties
  4. Trap 3: Data Egress is Non-Negotiable
  5. Trap 4: Support Contracts Auto-Renew at Higher Tiers
  6. Trap 5: Reserved Instance Fragmentation
  7. Trap 6: Mixed Compute Discounting
  8. Microsoft Azure
  9. Trap 1: EA Auto-Renewal at Higher Commitment
  10. Trap 2: Unused Commitment Loss
  11. Trap 3: "Mandatory" Unified Support Pricing
  12. Trap 4: Reservation Fragmentation
  13. Trap 5: Bundling Trap, Losing Leverage
  14. Trap 6: Hybrid Benefit Compliance Risk
  15. Google Cloud
  16. Trap #1: Network Egress Surprises
  17. Trap #2: BigQuery "Always-On" Pricing
  18. Trap #3: Over-Purchasing CUD Commitments
  19. Trap #4: Underutilized Committed Capacity
  20. Trap #5: Bundling Without Leverage
  21. Trap #6: Missing Google Cloud Credits
  22. Databricks

AWS#

Trap 1: EDP Doesn't Cover Marketplace Purchases#

Your EDP discount applies to AWS's first-party services. But many enterprises use third-party software sold through the AWS Marketplace (Databricks, JFrog, Datadog, etc.). These don't qualify for EDP discounts. You'll see full on-demand pricing for Marketplace items, or negotiate separate agreements.

Trap 2: EDP Minimum Commits with Penalties#

AWS often asks for a 1 to 3 year upfront monetary commitment (e.g., $2M/year). If you underspend, you lose the unused credit, AWS calls this a "true-up" clause. Always negotiate true-up language: push for "true-down" or rollover of unused credits to the next period.

Trap 3: Data Egress is Non-Negotiable#

As noted, no discounts exist on egress. AWS knows enterprises hate this and have accepted it. The only escape: use AWS's Direct Connect service ($0.30/hour per port) to negotiate bulk egress deals. But you still pay per GB.

Trap 4: Support Contracts Auto-Renew at Higher Tiers#

AWS often automatically bumps you to Enterprise Support ($15K/month minimum) as your spend grows, charging retroactively. Watch your support tier renewals and explicitly opt out or renegotiate before auto-renewal.

Trap 5: Reserved Instance Fragmentation#

If you buy RIs for the wrong instance types, availability zones, or regions, you can't use them. Unused RIs don't roll over, you're out the money. Modern RI design requires discipline or automated tooling. Many enterprises waste 5 to 15% of RI commitments due to drift.

Trap 6: Mixed Compute Discounting#

You can't mix a 3-year RI (60% off) with a Savings Plan (66% off) on the same workload, they compete. AWS uses a complex algorithm to apply the best discount, but misaligned commitments can leave money on the table.

— amazon-web-services-aws-pricing

Microsoft Azure#

Trap 1: EA Auto-Renewal at Higher Commitment#

This is the #1 Azure trap. Your EA auto-renews 30 to 90 days before expiration. Microsoft will propose a new AMC based on your trailing 12-month consumption, often inflating your commit by 15 to 30% vs. historical average.

Defense: Set a calendar alert 120 days before EA expiration. Explicitly opt out of auto-renewal and send a letter declining the new AMC at Microsoft's proposed amount. Counter with your own number. Microsoft will negotiate, but only if you force the conversation early.

Trap 2: Unused Commitment Loss#

Unlike AWS, Azure EA unused commitment is forfeited. If you commit $5M/year and only consume $4.2M, you lose $800K. Some newer MCA-E agreements allow limited carryover, but EAs rarely do.

Defense: Be conservative in initial commits. Renegotiate upward if needed, not downward. Some enterprise accounts negotiate "true-down" clauses (credits back for underspend), but these are rare.

Trap 3: "Mandatory" Unified Support Pricing#

Azure now requires enterprise accounts to purchase Unified Support (formerly Premier). Starting at $175K to $1M+/year depending on usage. This is non-negotiable once you exceed certain thresholds, unlike AWS support which you can sometimes opt out of.

Reality: Budget for support. Most enterprises over $5M Azure spend pay $250K to $500K/year in support.

Trap 4: Reservation Fragmentation#

Like AWS, Azure RIs are specific to region and instance type. Buy RIs for the wrong configurations, and you can't use them. Unused RIs don't roll back; you're out the capital.

Defense: Use Azure's reservation purchase recommendations (built-in tooling). Start conservative; add more RIs quarterly as you understand your actual consumption patterns.

Trap 5: Bundling Trap, Losing Leverage#

If you bundle Azure + M365 + Dynamics in one contract, Microsoft gets strategic leverage and may compress discounts across all three products to appear competitive as a bundle while paying less per product.

Defense: Separate negotiation of components (when possible) or explicitly model out the per-product discount contribution before signing bundled deals.

Trap 6: Hybrid Benefit Compliance Risk#

Claiming Hybrid Benefit for Windows Server or SQL Server licenses requires proper Software Assurance or ownership proof. Microsoft regularly audits this. Overclaiming can trigger true-ups and penalties.

Defense: Maintain clear Software Assurance records. If uncertain, validate with Microsoft licensing compliance before claiming Hybrid Benefit at scale.

— microsoft-azure-pricing

Google Cloud#

Trap #1: Network Egress Surprises#

This is the number-one hidden cost in GCP bills. Network egress (data leaving GCP) is charged at $0.12/GB or higher. For enterprises doing cross-region replication, CDN origin pulls, or hybrid architectures, egress can represent 15 to 25% of the total bill, but it's easy to miss in the pricing calculator.

Benchmark insight: Organizations that account for egress in their negotiations and strategically use Google Cloud CDN or caching often reduce this to 5 to 8% of total spend. Those that don't assume zero egress costs on day one and get sticker shock.

Trap #2: BigQuery "Always-On" Pricing#

Many enterprises set up BigQuery and assume on-demand is fine for "occasional analysis." By year two, ad-hoc analysis becomes production workloads, and the per-TB-scanned cost explodes. The transition from on-demand to slots should happen around 300 to 500 TB/month, but most organizations wait until 1,500+ TB/month (wasting 40 to 60% on that range).

Trap #3: Over-Purchasing CUD Commitments#

Enterprises sometimes commit to 3-year CUDs based on peak projected usage, then scale down or shift workloads. CUDs are hard to cancel, you're locked in. Better approach: commit 1-year for known stable workloads, monitor actual usage, then renegotiate when your Private Agreement (at $1M+ spend) comes due.

Trap #4: Underutilized Committed Capacity#

A committed 1-year or 3-year CUD applies only to specific resources. If you commit for a 16-core VM and later run a 4-core VM, you're paying for 16 cores but only using 4. This is a permanent loss on that CUD. Always negotiate flexibility clauses into multi-year agreements.

Trap #5: Bundling Without Leverage#

GCP's bundling of Workspace + Cloud often gives enterprises the impression of a "bundle discount," when in fact, they're negotiating each product separately. True bundling leverage exists only at $1M+ GCP spend AND 5,000+ Workspace seats. Below that threshold, negotiate them separately and capture per-product discounts.

Trap #6: Missing Google Cloud Credits#

Google aggressively offers credits for AI/ML workloads (Vertex AI, Generative AI APIs), modern data workloads, and migrations. These credits are often not mentioned until you ask for them in negotiation. Organizations that proactively request credits (e.g., $50K to $200K over 12 months for Vertex AI pilots) reduce effective spend significantly.

— google-cloud-platform-gcp-pricing

Databricks#

Databricks' complex pricing model creates multiple cost exposure points that are easy to miss in initial contract negotiations. These are not obscure edge cases, they are predictable cost patterns that appear consistently across our benchmark database.

All-Purpose Compute used for production pipelines is the most expensive and most common Databricks governance failure. Organizations that develop data pipelines interactively in notebooks, the natural Databricks development environment, often promote those notebooks to production without restructuring as Jobs Compute. The result is production workloads running at All-Purpose rates, which are 2x to 2.5x more expensive than Jobs rates for identical machine types and identical work. A quarterly audit of workload types and migration of non-interactive production jobs to Jobs Compute delivers immediate, significant cost reduction without contract renegotiation.

Unity Catalog premium, Databricks' unified data governance layer, carries licensing fees that are separate from compute DBU costs in some agreement structures. Unity Catalog is the correct data governance architecture for Databricks deployments and should be used universally. But organizations that adopt Unity Catalog without specifically negotiating it into their capacity commitment at a fixed rate may find Unity Catalog governance fees appearing as an unexpected charge. Include Unity Catalog in the scope of the capacity commitment at initiation, not as an add-on.

Commitment sizing relative to growth trajectory is a recurring challenge for high-growth Databricks deployments. Organizations that size annual commitments based on prior-year consumption often find actual consumption exceeding committed amounts by mid-year, paying on-demand rates for overage at 2x to 2.5x the commitment rate. Negotiate an overage rate, on-demand blended down by 15 to 20%, as a contract provision rather than accepting the full on-demand rate for consumption above commitment. This provision is available in larger Databricks enterprise agreements and provides downside protection against consumption growth.

— databricks-pricing