HomeOracle HubCloud Egress Costs
Oracle  |  Migration Egress Buyer Guide 2026

A 200 TB Oracle estate exported at the $0.09/GB list rate costs roughly $18,000 in egress alone, and the vendor waiver that erases it expires 60 days after you start

AWS, Azure, and Google all waive exit egress, but only as a post-hoc credit inside a 60-day window, and only for a full exit that a database-only Oracle move usually fails to satisfy. The EU Data Act drives switching charges to zero on 12 January 2027, while parallel-run traffic stays chargeable under Article 34(2). Whether you extract before or after that date, and whether you file the waiver request before the first byte moves, decides five to six figures on the migration business case.

Prepared by Redress Compliance · August 18, 2026 · Oracle advisory. Cloud migration and egress engagements 2024 to 2026.

Executive summary

Egress list pricing is tiered and cumulative, so a phased Oracle migration almost never lands in the cheap band it was modelled against: the first 10 TB per month bills at $0.09/GB and only volume above 150 TB drops to $0.05/GB.

Because tiers combine across services in the same account and region, a 5 TB EC2 extract plus 6 TB of S3 traffic plus normal business egress all stack into the same monthly ladder, which means the finance model built on the $0.05 rate is wrong by 40 to 80 percent.

The vendor exit waivers are credits, not zero-rated traffic, and all three run a 60-day completion clock that a real Oracle cutover routinely overshoots.

Azure and Google also require full account or subscription termination, AWS does not, and Google reviews partial-estate exits case by case, so a database-only move is the exact scenario most likely to be refused.

From 12 January 2027 EU switching charges must be zero, but until then providers may only charge cost pass-through, and parallel-run egress under Article 34(2) stays chargeable indefinitely.

That splits your migration into two commercially different traffic streams: the one-time switch, which is heading to free, and the continuous GoldenGate-style replication, which is not, and which is where most long Oracle cutovers spend their money.

OCI eliminated all outbound transfer charges across 48 commercial regions in February 2026, removing the previous 10 TB monthly free threshold in favour of zero, which changes the direction-of-travel math.

Oracle now has a structural pricing argument for inbound consolidation, so treat the free-egress claim as a negotiation input for OCI discounting rather than a reason to accept a licensing position you would otherwise reject.

$0.09/GB
AWS internet egress list rate for the first 10 TB per month after the 100 GB free allowance
60 days
Completion window on AWS, Azure, and Google exit egress waivers, measured from your declared start date
12 Jan 2027
EU Data Act date after which switching charges, including per-GB egress, must be zero
10 to 20%
Share of total AWS spend that data transfer already consumes at mid to large scale, before migration traffic
1.

How egress is actually metered, and why your migration model is understated

The number in your migration business case is almost certainly the list internet egress rate multiplied by the database footprint. That single multiplication understates the bill by a wide margin, because a database extract touches four or five metered layers before a byte reaches the target cloud.

Start with the tiered internet rate: after a 100 GB monthly free allowance, the first 10 TB runs at $0.09/GB, the next 40 TB at $0.085/GB, the next 100 TB at $0.07/GB, and volume above 150 TB at $0.05/GB in standard US and Europe regions (EgressCost.com, verified June 2026).

Then apply region multipliers, because the same export from Asia Pacific bills at $0.12/GB and from Cape Town at $0.154/GB, roughly a 71 percent premium over a US region for identical data.

Then add the hops that never leave the provider: cross-AZ traffic inside one region is $0.01/GB in each direction, and cross-region traffic between US regions is approximately $0.02/GB in each direction.

Then add the NAT Gateway most staged extracts route through, at about $0.045 per hour per gateway plus $0.045/GB of processing, stacked on top of internet egress rather than in place of it. A 50 TB month is roughly $2,100 in internet egress before any of those layers.

A 200 TB estate exported over four months at the first-tier rate is about $18,000, and that is the floor, not the estimate.

The detail that breaks most models is that the tiers are cumulative across services within a single account and region, so your business-as-usual traffic consumes the cheap band first and your migration wave lands in the expensive one.

Sizing this properly is the same discipline we apply in AWS data transfer rate card negotiation.

Metered layerList rateWhere it bites in an Oracle extract
Internet egress, first 10 TB$0.09/GBThe only rate most business cases model
Internet egress, next 40 TB$0.085/GBReached only after BAU traffic clears the band
Internet egress, next 100 TB$0.07/GBRequires 50 TB already billed that month
Internet egress, above 150 TB$0.05/GBRarely reached in a phased four-month move
Asia Pacific region rate$0.12/GB33% premium on identical volume
Cape Town region rate$0.154/GB71% premium on identical volume
Cross-AZ, same region$0.01/GB each directionStaging server to extract host
Cross-region, US to US~$0.02/GB each directionConsolidating dumps before export
NAT Gateway$0.045/hour + $0.045/GBStacked on top of internet egress

The table shows rates. It cannot show the sequencing effect, which is where the money actually goes.

Because tiers are cumulative per account and region, a phased migration that moves 50 TB per month for four months never once reaches the $0.05/GB band, and if the account already ships 8 TB of ordinary business egress monthly, the migration wave is billed almost entirely at $0.085/GB and above.

The model that assumed 200 TB at blended tier pricing was wrong by roughly 40 percent before anyone touched a NAT Gateway.

Data transfer already runs at 10 to 20 percent of total cloud spend at mid to large scale, so the baseline is not zero even before you extract anything.

Model the migration as incremental volume layered on top of that baseline, in the account and region where it will actually be billed, and price it at the tier your existing run rate leaves you sitting in.

2.

The exit waiver fine print: credits, clocks, and the partial-migration gap

Every hyperscaler now advertises free egress on exit. None of them zero-rate the traffic.

Relief arrives as a post-hoc credit against charges you have already incurred and, in most treasury processes, already paid, which means the cash flows out before it flows back and the migration business case carries the working capital for a quarter.

All three programs run a 60-day completion window. AWS requires a 60-day exit with full removal of all data and workloads, and cautions that repeated requests for migration away will face additional scrutiny.

Azure and Google both require account termination, meaning you close subscriptions and end the relationship to claim. AWS does not require account closure or a change in the commercial relationship, which makes it the most workable of the three for an estate that is only partially moving.

Azure has a specific procedural trap: you must inform Microsoft of the date you plan to start the transfer and the volume you plan to egress, before you start, then complete within 60 days of that declared start date and cancel all subscriptions before claiming.

Declare a start date optimistically and you burn the window on schema conversion. Microsoft has stated it will consider longer windows if the migration timeline is included in the initial support request, which is free to ask for and impossible to obtain retroactively.

The UK CMA found that eligibility across all three programs is largely discretionary, decided by customer support teams rather than an automated eligibility check, so approval time is a project dependency, not an administrative formality.

The structural gap is partial migration. The waivers are written for full exits. AWS waives egress for customers moving to another cloud or on-premises, and explicitly does not apply the waiver to regular business egress. Google reviews partial-estate moves case by case.

A database-only Oracle exit that leaves the application tier, the object storage, and the analytics workloads in place is the archetypal refusal case: from the provider's side it looks like an architecture change, not a departure.

Assume refusal, price the migration at full list, and treat any credit as upside. If the Oracle move is genuinely the first phase of a full exit, say so in writing in the initial request and cite the sequenced timeline.

Read this alongside the licensing exposure covered in dual-running during an Oracle cutover, because the parallel run that protects your cutover is exactly the traffic no waiver covers.

Free white paper

Cut Oracle Cloud@Customer cost the 2026 BYOL map

The buyer side map for Oracle Cloud@Customer: Exadata and Compute Cloud@Customer, Dedicated Region, and the BYOL economics that lower cost.

Get the white paper →
3.

The regulatory clock: what changes on 12 January 2027 and what does not

Get the dates right, because most vendor account teams and half the trade press have them wrong. The EU Data Act entered into force in January 2024. The bulk of its provisions became applicable on 12 September 2025.

The cloud switching provisions, the ones that matter to an Oracle extraction plan, do not bite until 12 January 2027.

Article 29 is the operative text: from 12 January 2027 providers of data processing services shall not impose any switching charges.

And in the interim period running from 11 January 2024 to that date they may impose only reduced charges not exceeding the costs directly linked to the switching process.

Two consequences follow. First, in 2026 you are not entitled to zero, you are entitled to cost, and a $0.09/GB list rate is manifestly a margin-bearing rate rather than a cost pass-through, which is an argument you can make in writing today.

Second, the scope is broad: IaaS, PaaS and SaaS alike, and it binds any provider serving EU customers, not only EU-domiciled vendors. AWS, Azure, Google and Oracle Cloud Infrastructure are all in scope for EU entities.

Now the two carve-outs buyers walk into. Article 34(2) preserves charges for parallel use. Where the old and new environments run alongside each other for interoperability purposes, the provider may pass through data egress costs, capped at those costs, and Recital 99 confirms the reading.

Continuous bi-directional replication traffic, which is exactly what a GoldenGate parallel run generates, is therefore chargeable indefinitely, including after January 2027.

The free-switching right attaches to the act of leaving, not to the months of dual-running that precede it, a distinction we treat in more depth in the dual-running cutover analysis.

The second carve-out is contractual rather than technical: the Act gives you a maximum two-month notice right to terminate, and it limits your exit liability to justified, evidenced costs rather than the full remaining contract value.

That is real leverage against a committed-spend agreement, but it is useless if you let an auto-renewal roll the term past January 2027 on the old economics. Diary the notice date now.

Watch the briefing · 4:12What a ULA Actually IsSession 1 of the Oracle ULA Series. Unlimited deployment of a defined product set, for defined entities, in defined territories, for a fixed term, ending in a certification that fixes your position for a decade. Every word in that sentence is a limit.Open the full page, with the transcript →
4.

Why the free-egress promise will not save a badly sequenced Oracle migration

Everything above reads like a pricing story. It is not.

Egress is a scheduling problem wearing a pricing costume, and every mechanism that erases the charge, the hyperscaler waiver credits, the Article 29 ban, OCI's own zero-rate inbound posture, is conditioned on a shape of migration that Oracle projects almost never have.

The discount is not priced on volume. It is priced on tidiness: one estate, one direction, one window, one declaration. Oracle work is none of those things.

Consider what an Oracle database migration actually looks like on the ground. Certification testing against the target platform runs in cycles, because a version that passes functional test fails performance test and gets re-extracted at a different block size.

GoldenGate or Data Guard keeps the source authoritative for weeks or months while the business validates reporting parity.

The Authorized Cloud Environment core-counting rules force rework on instance shapes mid-project, because a shape that was affordable at two vCPUs per licensed core becomes unaffordable when the workload needs four, and that rework triggers another extract.

See our breakdown of how cores are counted on AWS, Azure, and Google for why that recalculation lands late and lands hard. The result is a long, iterative, partial migration.

Read that list back against the eligibility conditions and the collision is obvious.

Partial estate breaks the waiver: AWS, Azure and Google all frame the credit around moving off, and Google states plainly that partial-data-off cases are handled case by case, meaning a database-only exit that leaves your application tier in place is a discretionary approval rather than a right.

Long parallel run falls under Article 34(2), chargeable interoperability traffic, forever. Repeated extract-and-retest cycles push past the 60-day window and trigger the additional-scrutiny language that AWS wrote into its own program.

Every characteristic that makes an Oracle migration technically responsible is a characteristic that disqualifies it commercially.

The inference most buyers draw from this is fatalism: the waiver is theatre, so budget the list rate and move on. That is the wrong inference, because the conditions are not immovable facts about the project, they are facts about how the project is declared and sequenced.

Nothing in an Oracle cutover requires that the one-way bulk extraction and the bi-directional validation traffic travel the same path in the same period. Separate them.

Compress the authoritative one-way extraction into a single declared window that fits inside 60 days, with a filed request and an agreed data volume before the first byte moves.

Route the parallel-run replication off the metered internet path entirely, via direct interconnect, a colocation cross-connect, or physical transfer appliance for the seed load.

Do that and you have bought, in 2026, the same outcome Article 29 promises in 2027, roughly two years early and without depending on a support team's discretion.

That is the leverage position, and it is worth stating in exactly those terms during renewal talks: you are asking the provider to zero-rate switching traffic that a regulation will zero-rate anyway, and the only variable is whether they get credit for cooperating.

In our experience that framing lands better with account teams than a threat, because it hands them a defensible internal justification.

One caution before anyone concludes that waiting for 2027 is the cheaper path. Providers do not surrender revenue lines, they relocate them.

When switching charges can no longer be billed separately, the recoverable margin migrates into baseline compute, storage, and support fees, and into the commitment structure of the next enterprise agreement.

A 2027 exit is not automatically cheaper than a 2026 one, it is cheaper on one line item and unknown on the others. Price both scenarios, and treat the repricing risk as a term you negotiate now, with rate-protection language, rather than a discount you inherit later.

5.

Sequencing the move so egress never hits the metered path twice

Egress is an architecture decision before it is a finance decision. Every byte that leaves your Oracle estate should cross exactly one metered boundary, and you decide which one.

Stage all extracts into a single account and a single region so the cumulative tier ladder works in your favor: tiers accumulate across services within one account and region.

So splitting extracts across three accounts means three separate climbs from $0.09/GB and no chance of ever reaching the $0.05/GB band.

Keep the extract path off NAT Gateway, which adds $0.045/GB of processing on top of standard egress, effectively doubling the rate on the very traffic you are trying to minimize.

At 200 TB, a physical transfer appliance almost always beats internet egress on both cost and elapsed time, and it also sidesteps the tier stacking entirely.

For the replication stream, decide deliberately whether GoldenGate or log shipping runs over metered internet or over a private interconnect with a fixed port charge.

At sustained volumes the interconnect wins, and it is the only version of the traffic the EU Data Act still permits your provider to bill under Article 34(2).

The calendar matters as much as the topology: the dual-running window that generates continuous bi-directional replication egress is the same window that generates double Oracle license exposure on both the source and target, so every week you cut from parallel run pays twice.

Finally, check your term end dates. In our experience, an auto-renewal that rolls a cloud commitment past 12 January 2027 is the most common way buyers strand themselves on pre-Data-Act switching economics without ever making a decision.

Path decisionMetered cost driverSequencing rule
Extracts split across accounts or regionsEach account restarts the tier ladder at $0.09/GBConsolidate to one account, one region before the first extract
NAT Gateway on the extract path$0.045/GB processing plus egress, plus ~$32/month per gatewayUse gateway or interface endpoints; never route bulk extract through NAT
Internet egress at 200 TBRoughly $18,000 at blended list, plus 60-day clock pressurePrice a physical appliance; it usually wins above 50 TB per wave
Cross-region or cross-AZ staging hops$0.01 to $0.02/GB per direction on "internal" movesLand extracts in the same AZ as the source; no intermediate region
Replication over public internetChargeable under Article 34(2) even after Jan 2027Move parallel-run traffic to private interconnect with fixed pricing
Term auto-renewing past 12 Jan 2027Locks you into pre-Data-Act switching chargesInsert non-auto-renew and a switching-charge-zero clause now
6.

What we see in engagements: recurring patterns and the numbers behind them

44 to 80%
Modelled rate versus billed rate

Business cases built on the $0.05/GB top tier bill at $0.085 to $0.09/GB because the tier is never reached in a phased extract.

100%
Waiver credit denied on partial exits

Every database-only Oracle move we have reviewed that left the surrounding estate in place either lost the credit or landed in discretionary case-by-case review.

The patterns repeat with almost no variation. Buyers model the top tier because the total volume looks large, then discover the tiers reset monthly and the extract is phased, so the blended rate never drops below $0.085.

The waiver is requested after the extract has begun, not before, which means the 60-day clock is already burning while UAT and regression testing run, and the bulk extract starts in week seven of a sixty-day window. NAT Gateway processing fees surface in the month-two invoice, not the model.

Cross-region hops appear inside a move everyone described as internal.

And the waiver claim itself gets refused or parked because the Oracle databases left but the application tier, the object storage, and the analytics stack did not, which is exactly the partial-migration gap the providers reserve discretion over.

The rate spread is your anchor: AWS at $0.09, Azure at $0.087, GCP at $0.12, Cloudflare R2 at $0.00, and OCI removing outbound charges across 48 regions in February 2026.

Use it in writing when you negotiate the data transfer rate card and exit terms, because incumbents discount egress far more readily than compute once they see a credible competing quote.

The two figures above are the same failure wearing different clothes: a business case that assumes best-case pricing and best-case eligibility, when the vendor controls both. The tier rate is set by your extract calendar, which you can fix in architecture.

The waiver eligibility is set by how much of the estate leaves, which you usually cannot fix, because the Oracle database is moving for licensing reasons while everything else stays.

Treat the waiver as upside, never as a line in the model. Price the migration at $0.09/GB blended, file the waiver request in writing before the first byte moves with a stated timeline and volume, and if the credit lands, book it as a recovered contingency rather than a funded assumption.

Try Vera AI · free 30 day trial
Do not send the counter until Vera has read the deal.
  • Percentile standing for your exact deal size and industry, from real closed transactions
  • Scenario simulation before the call: test alternative terms and see the financial impact of each
  • A negotiation playbook, talking points, and a two page executive brief on day one
Start the free Vera AI trial →30 days free · no credit card · cancel anytime
7.

Your first five moves

  1. Baseline your metered egress before you model anything, because AWS volume tiers are cumulative per account and region, so pull 90 days of per-account, per-service transfer-out data and confirm which tier your business-as-usual traffic already consumes before you assume the $0.07/GB or $0.05/GB band applies to your extract.
  2. File the waiver request before the first byte moves, with a declared start date, a declared volume, and a written migration timeline, and ask Azure explicitly for a window beyond 60 days in that initial support request, since Microsoft's own guidance says the longer window is only considered if you include the timeline up front and eligibility across all three hyperscalers sits with support teams, not an automated check.
  3. Split one-way switch traffic from parallel-run traffic in the architecture and the contract, because Article 34(2) of the EU Data Act permits continued egress charges for interoperability and parallel use while banning switching charges outright, so a GoldenGate replication stream tagged as "migration" invites a rejected credit claim; use separate accounts, subscriptions, or egress paths so the invoice proves the split, and pair the plan with our guidance on dual-running Oracle during a cutover.
  4. Audit every cloud term for auto-renewal past 12 January 2027, since a term that rolls over before the switching-charge ban applies can strand you on the old economics, and insert a clause now that zero-rates switching egress on or after that date regardless of renewal timing, using the AWS data transfer rate card and exit leverage material as the negotiation baseline.
  5. Run the license review alongside the egress plan, not after it, because in our engagements the dual-running window and the Authorized Cloud Environment core count usually carry more five and six figure exposure than the transfer bill itself, and both are decided by the same sequencing choices.
8.

Frequently asked questions

How much does it cost to move 100 TB of Oracle data out of AWS?

At US list rates and assuming the volume lands in one month, roughly $8,600: 10 TB at $0.09/GB, then 40 TB at $0.085/GB, then 50 TB at $0.07/GB, less the 100 GB free allowance. Spreading it over four months makes it more expensive, not cheaper, because each month restarts at the $0.09 tier.

Add cross-AZ at $0.01/GB per direction, cross-region at about $0.02/GB per direction, and NAT Gateway processing at $0.045/GB if the extract path touches one.

Do AWS, Azure, and Google really waive egress fees when you leave?

Yes, but as a post-hoc credit rather than zero-rated traffic, and every program runs a 60-day completion window from your declared start date.

Azure and Google require you to terminate the account or subscriptions; AWS confirmed it does not require account closure or a change in the commercial relationship. Approval is discretionary and handled by support teams, not an automated eligibility check, so build review time into the plan.

Does the exit waiver cover a database-only migration off one cloud?

Often not. The waivers are written for customers moving to another provider or on-premises, and explicitly exclude regular business egress. Google states it reviews partial-estate migrations case by case, which is exactly what an Oracle-only move looks like from the provider's side.

Assume denial in the business case and treat approval as upside.

What changes on 12 January 2027 under the EU Data Act?

From that date, providers of data processing services may not impose switching charges, and the definition expressly reaches per-gigabyte data transfer out levied for the purpose of switching.

Between 11 January 2024 and that date, only reduced charges limited to costs directly linked to switching are permitted, so a margin-bearing egress rate is already vulnerable. The rules cover IaaS, PaaS, and SaaS, and apply to non-EU providers serving EU customers.

Is replication traffic during a parallel run also free after January 2027?

No. Article 34(2) permits providers to pass on data egress costs for interoperability and parallel use, capped at those costs, and Recital 99 confirms the position.

A long GoldenGate-style parallel run is continuous and bi-directional traffic, so it sits in the chargeable carve-out rather than the free-switching regime. Separate the two traffic streams in your architecture and in your contract language.

Did Oracle really remove all egress charges on OCI?

Oracle announced in February 2026 that it eliminated all outbound data transfer charges across 48 commercial regions, covering both internet egress and inter-regional transfer, replacing the previous 10 TB per month free threshold with zero.

That is a genuine cost difference for inbound consolidation. It is not a reason to accept unfavourable licensing terms, so price the OCI position on licensing and support outcomes and treat zero egress as one input.

Should we wait until 2027 to migrate so egress is free?

Only if the licensing and commercial clocks agree. Analysts expect providers to raise baseline service fees or restructure commercial offers to recover what they can no longer bill separately, so 2027 traffic may be free while the underlying subscription is more expensive.

Check every term for auto-renewals that would roll past 12 January 2027 and strand you on pre-Data-Act clauses, and weigh the delay against dual-running Oracle license exposure, which usually costs more per month than the egress you are waiting to avoid.

© 2026 Redress Compliance · Independent, buyer sideredresscompliance.com
Industry Recognized
500+ Enterprise Clients
$2B+ Under Advisory
11 Vendor Practices
100% Buyer Side Independent
Oracle White Paper

Cut Oracle Cloud@Customer cost the 2026 BYOL map

The buyer side map for Oracle Cloud@Customer: Exadata and Compute Cloud@Customer, Dedicated Region, and the BYOL economics that lower cost.

Gated with a work email on the download page. No sales follow up you did not ask for.

Get the White Paper →
Independent, buyer side. We never share your details with vendors.
Run the software spend health check against your Oracle estate in under five minutes.
Open the Tool → Oracle Hub →
Editorial boardroom interior

The advisor your vendors do not want.

500+ enterprise clients. 11 vendor practices. Industry recognized. One conversation can change what you pay for the next three years.

Stay ahead of Oracle pricing and contract moves.

One buyer side briefing a week. Renewal signals, discount bands, and the levers that work. No vendor spin.