What is Microsoft throttling?
Table of contents
Also known as
Definition
When a migration runs, it sends a high volume of requests to Microsoft 365. At some point, Microsoft decides that's too much load at once and starts limiting it. That's throttling.
It's not a tool failure. Throttling is a security mechanism Microsoft keeps in place so the service stays healthy for all users. Without it, the server could become unresponsive or crash completely, causing service interruptions across the tenant.
When throttling happens, you'll see two error codes: 429 Too Many Requests or 503 Service Unavailable. These don't mean your migration has stopped—requests are being retried until Microsoft can handle them again.
Experiencing some throttling is normal. Significant throttling—more than 30% of requests throttled for 30 minutes or more—is a signal something needs adjusting.
tip
Schedule heavy migration workloads outside business hours. Overnight or weekends are ideal. User activity during business hours also adds to tenant load—running migrations when that pressure is lower reduces throttling.
Why it matters
Throttling is the most common reason migrations take longer than expected. Planning for it before the project starts means fewer surprises and more realistic timelines.
- Migration: Throttling slows down how fast data moves. An unplanned throttling event can extend a migration well beyond the planned window.
- Day-to-day operations: Migrations running during business hours compete with users for tenant resources. That affects the migration speed and the people working in the tenant at the same time.
Commonly confused with: Network bandwidth
Both can slow a migration down, but they're different. Bandwidth is the capacity of your network connection. Throttling is applied by Microsoft on their end, regardless of how fast your connection is. You can have excellent bandwidth and still get throttled.
What we see out there
Throttling gets blamed on the tool.
It's a normal part of every migration. The error codes look alarming but requests are retried automatically. The migration hasn't stopped, it's waiting for Microsoft to be ready again.
Migration alone isn't usually the only cause.
Backup applications and regular user activity during business hours all add to tenant load. Scheduling migrations overnight and running concurrent migrations from different machines with different user accounts removes most of that competition.
Frequently asked questions
Can throttling be avoided?
Not entirely. It can't be turned off or bypassed. But it can be managed. Scheduling migrations outside business hours and limiting competing background activity reduce the load. If significant throttling persists, splitting a large migration into smaller intervals helps.
Does running concurrent migrations help?
Yes. Running concurrent migrations from different machines with different user accounts improves throughput. Each machine handles its own workload, reducing the pressure any single machine puts on the tenant. ShareGate Migrate supports concurrent migrations.
How should we plan around throttling?
Schedule heavy waves overnight or on weekends when tenant load is lower. Build incremental passes into the plan so the final cutover window is as short as possible. Test throughput early—a small pilot migration during your target window gives you a realistic number to plan against.