← ResourcesMIGRATION Β· CHECKLIST

AWS Post-Migration Validation Checklist

Performance, data, network, security, and rollback: the checkpoints to clear before closing the project.

STRALYA11 min readJuly 2026

Initial validation: the first 24 hours after cutover The first hours following the production cutover are critical. You need to start by verifying that the services are genuinely up and reachable: test access to your applications from the various planned connection points (VPN, public internet, direct interconnects if you have them). Check that your EC2 instances, ECS containers, or EKS pods are in the running state, that the load balancers are actually distributing traffic, and that DNS resolves correctly to your new AWS endpoints. For this initial check, use simple tools: curl, ping, or basic synthetic tests that quickly give you a go/no-go signal. Document each point at the moment you test it, even if the result is positive, because it will form your audit trail. During these first 24 hours, keep someone available to react quickly to any abnormal behavior, and maintain an open line of communication with all the owners of critical internal services. It is during this window that you detect 90% of network connectivity or basic configuration problems, well before performance tests reveal more subtle degradations. ## Validating application and infrastructure performance Once you have confirmed that everything is reachable, measure the actual performance. Stick to your SLAs: average and P95 application latency, HTTP 4xx/5xx error rate, response time of critical requests. Compare them to the baselines you established before migration (or, failing that, to the performance you had in the old environment). If the average latency goes from 80 ms to 200 ms for your critical API, you have a problem that must be investigated before declaring the migration a success. Also measure resource consumption: CPU, memory, network bandwidth of your instances. Some poorly sized applications will consume much more on AWS than expected, or conversely use resources poorly, which translates into excessive costs from the very first days. Enable CloudWatch, configure dashboards with the metrics critical to your business (processing time per request, number of transactions per minute, cache hit rate if you have a cache), and let it run for at least 48 to 72 hours to see the real load profile. Load peaks often arrive a few days after the migration, when users re-adopt the tools; do not make a final decision on performance during the first 48 hours if your load is very low. ## Validating data integrity and completeness Migrating an infrastructure also means migrating data. You must verify that 100% of your data made it across and that no corruption occurred. Start with row counts on the critical data: the number of rows in your RDS or DynamoDB tables, the number of objects in your S3 buckets, the number of entries in your Redis caches. Compare them exactly between the old and new environments. Then go further: validate that the sensitive data is still present and consistent. If you have unique identifiers (customer IDs, transaction IDs), sample a few thousand records and verify that the hash or checksum matches between the old and new databases. Also test the relationships between tables: if an order depends on a customer, verify that the relationship is still intact in the new environment. For large data sets (logs, media), do not verify everything, but do a statistical sampling. Finally, run your most critical validation jobs (revenue calculations, aggregations), compare the results with those from before migration, and raise an anomaly for even a minor discrepancy if something does not match exactly. Data integrity is never a 90% matter: it is 100% or nothing. ## Verifying security, network isolation, and compliance Your infrastructure on AWS must respect the same security rules as before. First check the network segmentation: the VPCs, subnets, and security groups are configured correctly so that only the expected flows pass. Use AWS Security Groups and Network ACLs to validate that you have not created an accidental opening (for example, a port open to the world that should not be). Test access from the right sources (internal staff via VPN, partners via dedicated connections) and verify that unauthorized access is blocked. Next, review the secrets and keys: check that AWS access keys, database passwords, and TLS/SSL certificates are not stored in plaintext in code or configuration files. Use AWS Secrets Manager or Parameter Store for all dynamic secrets. Finally, update your compliance documentation and run a first pass of your compliance officer's audit list (GDPR, industry standards, customer requirements, or specific requirements from your sector). Do not leave compliance for after the project closes: if a problem exists, it is better to discover and fix it now rather than during an external audit two months from now. ## Cutover and rollback tests Before considering the migration final, you must be certain that you can revert if something irreversible happens. Test your rollback procedure, even partially: if you can route traffic to the old environment via a DNS switch or a route change, do it for a few minutes to verify that the old stack is still operational and can take traffic again without major degradation. If the rollback is technically complex (for example, resynchronizing databases), at a minimum verify that your backup of the old state is accessible, recent, and tested (a backup you have never restored does not really exist). Document precisely the conditions that would trigger a rollback: for example, "if P95 latency > 500ms for more than 15 minutes" or "if HTTP 5xx error rate > 1%." These conditions must be clear and decided BEFORE the migration, not in the middle of the crisis. Once your validation window is complete and all criteria are green, you can decommission the fallback environments if you have decided that rollback was only possible in the first hour, but document that decision formally. ## Closure and post-migration documentation After all the checks have passed and you have confirmed that the migration is stable (generally 48 to 72 hours minimum), formally document the success of the migration. Create a report including: the complete list of checklist items with the status and date/time of validation, a record of the anomalies encountered and corrected, a before/after comparison of key performance metrics, actual vs budgeted costs for the first three months, and the approval signatures of the sponsors and operational owners. This report will serve as proof for compliance (audit trail), as a comparison baseline for later cost analyses, and as a lessons-learned record for the next migrations. Also update your AWS infrastructure documentation with the actual choices (what was deployed vs what was planned, the reason for the gaps), the operational procedures (how to monitor, how to escalate an alert), and the emergency contacts for each critical component. Finally, plan the handover of responsibility to the permanent operations team (DevOps, SRE): who maintains what, under which SLAs, with which monitoring and alerting tools. The administrative closure of the project should not be a separate event, but the formalization of this handover of responsibility.

AWS TEARDOWN Β· FREE

Get the AWS Teardown: where your bill really goes.

The guide listing the 12 cost areas that leak the most at scale-ups, and how to plug them. Free, by email, no strings attached.