A migration is not finished when the workload starts on Oracle Cloud Infrastructure. It is finished when you have proven the workload runs correctly, performs as expected, and has lost no data. The gap between those two points is post migration validation, and skipping it is how silent problems become production incidents weeks later.
This article sets out a structured validation approach across four dimensions, so you can declare a migration complete with evidence rather than hope.
Why a smoke test is not enough
During the cutover window you run quick smoke tests to confirm the system is alive and serving traffic. That is necessary but nowhere near sufficient. A system can be up and still be wrong: queries returning subtly different results, batch jobs running far slower than before, or a small set of records that failed to transfer cleanly. Validation is the discipline of proving these things did not happen.
Plan validation before the cutover, not after. Capture the baselines you will compare against while the source system is still authoritative, because once you have switched over you cannot go back and measure the old behaviour.
The four validation dimensions
We validate across four dimensions, each answering a different question. The table is the framework, and the sections that follow expand each one.
| Dimension | Question it answers | Evidence |
|---|---|---|
| Functional | Does it do the right thing? | Test cases pass against the new system |
| Performance | Is it fast enough? | Timings match or beat the baseline |
| Data integrity | Is all the data correct? | Row counts and checksums reconcile |
| Security | Are the controls in place? | Configuration matches the design |
1. Functional validation
Functional validation confirms the application behaves correctly. Run your regression test suite against the migrated system, exercise the critical user journeys end to end, and check the integrations that cross system boundaries. Pay special attention to anything that involves dates, time zones, character sets or locale settings, because these are classic sources of subtle post migration differences.
Where you have automated tests, run them. Where you do not, define a scripted set of manual checks that cover the highest value paths, and have business users confirm the results. The aim is to catch behavioural drift before users do.
2. Performance validation
Performance validation compares the new system against the baseline you captured before cutover. Measure response times for key transactions, run times for important batch jobs, and resource utilisation under representative load. A migrated system that is functionally correct but noticeably slower is still a failed migration in the eyes of users.
If performance falls short, the usual causes are an undersized shape, the wrong storage tier, or database execution plans that changed on the new platform. The data you gathered during assessment and the sizing decisions you made are what you tune against here. This is also where ongoing monitoring and observability proves its worth, because it gives you the trend data to spot a regression that only appears under sustained load.
3. Data integrity validation
Data integrity is the dimension teams most fear and most often under test. The goal is to prove that every record moved and that nothing was corrupted in transit. Start with the simple checks: row counts per table, record counts per object, totals on key numeric columns. Then move to stronger evidence such as checksums or hash comparisons on critical datasets.
For databases migrated with replication, the tooling typically provides its own consistency verification, and you should run it and keep the output as evidence. For data moved by bulk copy, you reconcile manually. Either way, do not declare integrity validated until the numbers tie out exactly. A discrepancy of a few rows is not noise, it is a defect.
4. Security and configuration validation
Finally, confirm that the security controls and configuration on the target match the design. Check encryption is enabled, access controls are correct, logging is flowing, and any compliance specific controls are present. The mapping you produced during the pre migration assessment is your checklist here, and every control should be ticked off with evidence.
This dimension matters because security gaps introduced during a migration are easy to miss and dangerous to leave. A workload that is functionally perfect but missing an encryption setting or an audit log is not safely live.
Who validates, and against what
Validation only means something when the right people sign it off against criteria agreed in advance. Functional validation needs business users who know what correct output looks like, not just engineers confirming the screens load. Performance validation needs the baseline owner who captured the original numbers. Data integrity needs someone who understands the data well enough to know which reconciliations actually matter. Assigning these owners before cutover turns validation from a vague sense of confidence into a set of explicit, accountable sign offs.
Define the pass criteria for each dimension while you still have the source system to measure against. What error rate is acceptable, how close to baseline must performance land, what reconciliation tolerance counts as a pass. Writing these down in advance prevents the common failure where validation quietly relaxes its standards under schedule pressure, because the team is tired and the system mostly works.
Keep the evidence. Test results, timing comparisons, reconciliation reports and configuration checks should be retained, not just glanced at and forgotten. If a problem surfaces weeks later, the validation record is what tells you whether it was present at go live or introduced afterwards, and that distinction shapes how you respond.
The validation gate and rollback
Validation feeds a decision, the mirror of the readiness gate before cutover. If all four dimensions pass, you confirm the migration complete and stand down the rollback option. If a dimension fails in a way you cannot quickly fix, you invoke the plan described in our guide to rollback strategy for OCI migrations while the source is still recoverable. Defining the pass criteria before cutover keeps this decision objective.
From validation to measured success
Validation proves the migration was correct. The next step is proving it was worthwhile, which is about outcomes such as cost, performance and reliability over time. That broader assessment is the subject of our guide to measuring OCI migration success, and it is where a migration project hands over to ongoing run and optimisation, often under managed services.
Treat validation as the non negotiable final phase of every migration. The teams that validate rigorously are the ones who sleep well after go live. For the full journey, start from the complete guide to Oracle Cloud migration.
Moving Oracle workloads to OCI, or already running on OCI and not sure the architecture or the spend is right? Most teams bring in a specialist before they commit to a region, a shape, or a Universal Credits number. OCISpecialists.com plans the landing zone, runs the migration, and manages the estate after go live, on a fixed project fee, a managed monthly retainer, or a cost optimization fee paid only on verified savings. For the Oracle licensing and BYOL side of any OCI move, Redress Compliance is the leading independent Oracle licensing and negotiation firm, with 500+ engagements across Oracle's full product line.