There are three real ways to move Oracle to AWS. Lift and shift to Amazon RDS for Oracle (fast, but you keep paying Oracle). Run Oracle Exadata inside AWS with Oracle Database@AWS (for RAC and Exadata estates). Or re-platform to Aurora PostgreSQL and drop the Oracle license. This page covers each path, the SCT and DMS workflow, the PL/SQL that fights back, the cutover and the savings model. If Oracle runs outside AWS today, a vetted partner can file MAP migration funding when the move qualifies: typically $50K to $150K for startups. Depends on the workload; AWS approves.
Performance is rarely the reason. Oracle is an excellent database. The reason is the cost structure: per-core licensing, support renewals, separately licensed options, and audit exposure that grows with every CPU.
Oracle Database Enterprise Edition lists at about $47,500 per processor license on Oracle's public price list, and Oracle's core-factor table often counts one physical core as more than one processor. Support adds about 22% of the license price every year. Then come the options many schemas depend on (Partitioning, Advanced Compression, Diagnostics and Tuning Packs, Active Data Guard, RAC), each licensed separately. Running on your own hardware adds the refresh, DBA headcount and a DR site, and running under a hypervisor invites the audit argument about licensing every core in the cluster.
AWS changes the structure in three ways. Keep Oracle but stop running the hardware, with RDS for Oracle. Keep Oracle Exadata and RAC, running inside AWS, with Oracle Database@AWS. Or re-platform to Aurora PostgreSQL, and the Oracle license line goes away.
Knowing which database deserves which path is the whole game, and the rest of this page is organized around that call.
In AWS 7 Rs terms, RDS for Oracle and Oracle Database@AWS are rehost or relocate (same engine), and Aurora PostgreSQL is replatform (different engine). The effort, risk and payoff differ a lot.
Decide per database. Some Oracle databases are so wired into PL/SQL, Oracle-only SQL and vendor support matrices that converting them costs more than the license they would save. Defaulting everything to RDS for Oracle carries the whole Oracle bill into AWS.
What it is: the same Oracle engine, managed by AWS: patching, automated backups, point-in-time restore and Multi-AZ failover.
How you migrate: Oracle Data Pump for smaller databases; DMS or Data Pump over Direct Connect or a Site-to-Site VPN for larger ones; or a restore from a backup staged in S3. Application code, PL/SQL and SQL stay unchanged.
Licensing: bring your own license (subject to Oracle's cloud policy) or license-included for Standard Edition Two. You still pay Oracle.
Timeline: typically 2–8 weeks per database.
Pick it when the database is tightly coupled to Oracle features, a vendor requires Oracle, the team has no PostgreSQL capacity, or you need off your hardware now and will modernize later.
What it is: Oracle Exadata systems managed by Oracle Cloud Infrastructure (OCI), running inside AWS data centers. You set it up from the AWS Management Console and buy it through a private offer from Oracle in AWS Marketplace. It became generally available in July 2025, and AWS listed it in twelve Regions in April 2026.
How you migrate: with Oracle's own tools, such as Data Guard and Data Pump. AWS positions it for moving on-premises Exadata and RAC applications to AWS without re-architecting, next to the rest of your AWS workloads.
Licensing: it is still Oracle, and you still pay Oracle for the database.
Pick it when you run Exadata or RAC, the database cannot leave Oracle any time soon, and you want it next to your applications on AWS.
What it is: a PostgreSQL-compatible engine with storage that grows to 128 TiB, six copies across three Availability Zones and up to 15 read replicas. No Oracle license, no support renewal, no core-factor table.
How you migrate: SCT converts schema and code; DMS moves the data with change data capture. Sections III to V cover the workflow.
Licensing: none for the engine. You pay for Aurora compute, storage and I/O.
Timeline: typically 4–9 months for a substantial database, mostly PL/SQL conversion and testing.
Pick it when the database carries real Oracle cost, SCT says the PL/SQL is tractable, your team can own PostgreSQL, and the savings clearly beat the one-time conversion.
Most Oracle-to-AWS programs use more than one path. Lift and shift the hard or vendor-locked databases to RDS for Oracle (or Oracle Database@AWS for Exadata and RAC) to get off the hardware fast. Then re-platform the high-cost, tractable databases to Aurora PostgreSQL. Easy wins first build the credibility, and free the budget, for the harder conversions.
The Schema Conversion Tool is where an Oracle to Aurora project succeeds or stalls, because its assessment report tells you, object by object, what converts automatically and what does not. That report is your project plan.
Point SCT at the Oracle source and the Aurora PostgreSQL target. It analyzes tables, indexes, views, sequences, constraints and the procedural code (packages, procedures, functions, triggers), converts what it can, and rates every remaining action item simple, medium or complex. The share that converts automatically depends almost entirely on how much PL/SQL you have and how Oracle-specific it is.
Storage objects and most datatypes convert cleanly (NUMBER to numeric or integer types, VARCHAR2 to varchar, CLOB to text, BLOB to bytea), with flags on NUMBER columns whose precision needs a human decision. The hard parts are predictable:
For the hardest objects, SCT can deploy an extension pack that emulates some Oracle functions on PostgreSQL. Treat that as technical debt to revisit: convert what converts, rewrite the medium and complex items into idiomatic PL/pgSQL, and keep emulation for the long tail.
The most useful output is the number. "This database is 88% auto-convertible with 240 complex action items" lets you size the project honestly. A reporting database that converts almost fully is a quick win. A core schema with thousands of lines of PL/SQL is a real engineering program and may belong on RDS for Oracle instead.
Once the schema exists on Aurora, Database Migration Service moves the data and keeps it moving. Change data capture is what turns a weekend-long cutover into a switch measured in minutes.
A DMS task first copies existing data (the full load), then reads Oracle's redo logs and applies every insert, update and delete to Aurora continuously. Aurora trails production by seconds while Oracle stays fully online, so you can validate, performance-test and run the application against Aurora in staging for days or weeks.
DMS moves rows, not procedural code (that is SCT's job). Secondary indexes and constraints are usually created after the full load for speed, large-object columns need explicit LOB settings, and big or busy databases need a right-sized replication instance and often several parallel tasks. That is routine for a partner who has done it before.
DMS data validation compares source and target row by row during load and CDC and reports mismatches. For a database the business runs on, add your own checks: row counts, checksums on critical tables and business reconciliation queries. Together they let a CFO or a regulator accept the Aurora copy as the system of record.
The conversion and the data move are engineering. The cutover is risk management, and the plan is judged on one question: what happens if something goes wrong at the moment of switch?
The answer is a rehearsed runbook and a rollback you do not have to invent under pressure. Keep the Oracle source untouched and authoritative until the cutover succeeds. Because DMS syncs Aurora from Oracle, not the other way around, rollback during the window is just pointing the application back at Oracle.
The conversion costs real engineering time, so the business case has to clear it. For a high-cost Oracle database it usually does, because the Oracle bill it removes recurs every year while the conversion is paid once.
Build the model on three lines. The Oracle cost you remove: licenses after the core factor, about 22% a year in support, the options you license, plus hardware and DBA effort if you run it yourself. The Aurora cost you add: compute (instances or Aurora Serverless v2), storage, I/O and backups, with no license layer. The one-time conversion cost: SCT and DMS work, PL/SQL rewrites, testing and cutover. That last line is what MAP funding can offset when the migration qualifies.
The savings are largest when you were on Enterprise Edition with options and a DR standby, because Aurora includes Multi-AZ, backups and read replicas without per-feature licensing. They are smaller if you were already on Standard Edition. The support renewal alone can pay back the conversion, which is why these projects survive CFO review.
Two caveats keep the model honest. PostgreSQL is not a drop-in Oracle, so budget for conversion and a tuning phase (query plans, indexing, connection pooling). And savings start only after decommission: while Oracle runs in parallel as a safety net, you pay for both.
You do not have to build an SCT and DMS team from scratch. CloudRoute matches you with a vetted AWS partner who has migrated Oracle before. If the move is onto AWS and qualifies, that partner files MAP funding for it.
MAP (the AWS Migration Acceleration Program) has three phases. Assess builds readiness and a TCO model: the partner runs SCT against your Oracle databases for the convertibility numbers and a cost model, so you have go/no-go data before you commit. Mobilize builds the landing zone and a pilot conversion. Migrate & Modernize is the production conversion and cutover. Your matched partner files the MAP request when the migration qualifies, and AWS decides the amount. For startups, partner-filed funding is typically $50K to $150K. Depends on the workload; AWS approves.
The honest framing: MAP is for moves onto AWS, such as Oracle on-premises or in another cloud. If your Oracle already runs on EC2 or RDS, a move to Aurora stays inside AWS and is not a MAP migration. For Oracle Database@AWS, ask your partner how funding applies before you plan around it; AWS decides. Where no funding applies, a partner who has done Oracle to Aurora moves still de-risks the cutover.
CloudRoute is the match. You tell us how much Oracle you run, which editions and options, what the databases do and your timeline, and we introduce a partner with an Oracle migration track record that can file MAP. CloudRoute is free for you. Partners pay CloudRoute a monthly membership plus 10% of AWS-approved funding.
| Funding | Who files it | Amount | When it fits |
|---|---|---|---|
| Migration Acceleration Program (MAP) | Your matched AWS partner | $50K to $150K for startups. Depends on the workload; AWS approves. | You are not on AWS yet and want to migrate. |
| Proof of concept (POC) funding | Your matched AWS partner | $50K to $150K for startups. Depends on the workload; AWS approves. | You want to test something, whether or not you are on AWS today. |
| Incremental workload (IW) funding | Your matched AWS partner | $50K to $150K for startups. Depends on the workload; AWS approves. | You are already on AWS and are launching new work: a new AI feature, a new customer or a new contract. |
| AWS Activate Founders | Founder applies | $1,000 to start, up to $5,000 | Self-funded startups with no investor or accelerator behind them. |
| AWS Activate Portfolio | Founder applies | up to $200,000 | Startups backed by a VC firm, accelerator or angel investor that is an AWS Activate Provider. |
| AWS Credits for AI Startups | Invite only (AWS account manager) | $200,000 or more, by invitation | AI startups ready to scale after Activate Portfolio, invited by AWS. |
See how much funding a partner can file and AWS Database Migration Service. The platform you land on should be a secure multi-account AWS landing zone. The migration offer page lays out what a CloudRoute match includes.
This is the table the whole project turns on. Pick per database, not per company.
| Dimension | Amazon RDS for Oracle | Oracle Database@AWS | Aurora PostgreSQL |
|---|---|---|---|
| Migration type | Same engine | Same engine (Exadata) | Engine change (SCT and DMS) |
| Code rewrite | None | None | PL/SQL to PL/pgSQL; SCT automates part, the rest is manual |
| Oracle license | You keep it (BYOL or license-included) | You keep paying Oracle | None |
| Who runs the database | AWS (RDS) | Oracle (OCI), inside AWS data centers | AWS (Aurora) |
| Typical timeline | 2–8 weeks per database | Depends on the Exadata scope | 4–9 months for a substantial database |
| Engineering risk | Low: proven and mechanical | Low to medium: same engine, new setup | Higher: conversion, CDC cutover, tuning |
| Vendor lock-in | Stays on Oracle | Stays on Oracle | Open-source compatible |
| Best for | Oracle-coupled or vendor-locked databases; speed | Exadata and RAC estates that must stay Oracle | High-cost, tractable databases worth converting |
You fill in a short form: what you run today, what you want to move, test or build, your stage and your region.
We read your answers and pick one vetted AWS consulting partner that fits the work, the stack and the region. We reply within 24 hours; your matched partner reaches out within 5 business days.
Your matched partner scopes the migration with you. Then it checks whether the move qualifies for MAP (Migration Acceleration Program) funding. MAP is for teams that are not on AWS yet.
If the work qualifies, the partner files the funding request with AWS. AWS reviews it and decides. The amount depends on the workload.
CloudRoute is free for startups. Partners pay CloudRoute a monthly membership plus 10% of AWS-approved funding.
AWS Activate credits are separate, and you apply for them yourself. Use Activate Founders if no investor backs you. Use Activate Portfolio with the Org ID or invite from your VC, accelerator, incubator or angel group if it is an Activate Provider. A consulting partner cannot apply for Activate on your behalf.
A vetted AWS partner runs the SCT assessment, picks the path per database (RDS for Oracle, Oracle Database@AWS or Aurora PostgreSQL), runs a de-risked cutover, and files MAP funding when the move qualifies: typically $50K to $150K for startups. Depends on the workload; AWS approves. CloudRoute is free for startups.