When you migrate a OneDrive for Business tenant, you might find that storage quotas do not update as expected. Users see their old quota values even after you changed settings in the Microsoft 365 admin center. This happens because the migration process does not automatically refresh cached quota data in the OneDrive sync client or SharePoint Online. This article explains why quotas appear stuck, how to force a refresh, and what to avoid during a tenant migration.
Key Takeaways: Quota Stuck After Tenant Migration
- Microsoft 365 admin center > Active users > OneDrive settings: Use this path to set the default storage limit for all users before migration.
- SharePoint Online Management Shell: Run
Set-SPOSite -Identityto update individual site quotas immediately.-StorageQuota - OneDrive sync client > Settings > Pause sync > Resume sync: A full sync cycle forces the client to re-read quota information from the server.
Why OneDrive Storage Quotas Do Not Update During Tenant Migration
When you migrate a tenant, the source and destination environments maintain separate SharePoint Online databases. The OneDrive sync client caches quota data locally from the source tenant. After migration, the client still reads the cached value and does not automatically request the new quota from the destination tenant. This can persist for days because the sync client only refreshes quota data during a full sync cycle or after a token refresh.
The Role of SharePoint Online Site Storage Quota
Each OneDrive site is a SharePoint Online site collection. The storage quota is stored at the site collection level. When you change the tenant-level default quota, existing sites do not automatically inherit the new value. You must update each site individually or use PowerShell to bulk-update site quotas. During migration, the destination tenant has its own default quota, which may be lower or higher than the source. If you do not explicitly set site quotas after migration, users see the old value from the source.
Cache Behavior in the OneDrive Sync Client
The OneDrive sync client stores quota data in a local cache file. This cache is refreshed only when the client performs a full sync or when the user signs out and back in. During a tenant migration, the client continues to talk to the source tenant URL until DNS records update. Even after DNS propagation, the cached quota remains unchanged until a manual refresh.
Steps to Force OneDrive Storage Quota to Update After Migration
Follow these steps in order. Do not skip any step.
- Set the tenant-level default storage quota
Go to the Microsoft 365 admin center. Navigate to Active users and select a user. Click the OneDrive tab. Under Storage limit, enter the new quota value in GB. Click Save. This sets the default for new sites but does not change existing sites. - Update individual OneDrive site quotas using PowerShell
Open the SharePoint Online Management Shell as an administrator. RunConnect-SPOService -Url https://. Then run-admin.sharepoint.com Set-SPOSite -Identity https://where-my.sharepoint.com/personal/ -StorageQuota is in MB. Repeat for each user or use a script to bulk-update. - Force a full sync in the OneDrive client
On the user’s computer, right-click the OneDrive icon in the system tray. Select Settings. Go to the Account tab. Click Unlink this PC. After unlinking, sign in again with the user’s new tenant credentials. This forces a full sync and refreshes the local cache. - Clear the OneDrive cache manually
If unlinking does not work, close the OneDrive client. Press Win + R, type%localappdata%\Microsoft\OneDrive\settings, and press Enter. Delete all files and folders inside the settings folder. Restart OneDrive. The client will rebuild the cache from the server. - Verify the quota update
Open a browser and go to the user’s OneDrive URL:https://. Click the gear icon and select Site settings. Under Storage Metrics, confirm the new quota value appears.-my.sharepoint.com/personal/
If OneDrive Still Shows the Old Quota After These Steps
DNS Propagation Delay
During a tenant migration, DNS records for the SharePoint Online domain may take up to 48 hours to propagate worldwide. If the OneDrive client still resolves to the old tenant IP, it reads the old quota. Check DNS propagation using a tool like nslookup or an online checker. Wait until all DNS servers return the new tenant IP.
SharePoint Online Site Policy Inheritance
If the OneDrive site inherits storage quota from a site policy, changing the site quota directly may not override the policy. Go to the site’s Site settings > Site collection administration > Storage Metrics. Click Manage storage quota and uncheck Inherit storage quota from parent. Then set a custom quota.
Users See Quota Exceeded Warning After Migration
If the destination tenant has a lower default quota than the source, users may see warnings that they are over quota. To fix this, run the PowerShell command from Step 2 for each affected user. Set the quota to a value higher than their current usage. Then inform users to sync again.
Tenant-Level Default vs Site-Specific Quota: Key Differences
| Item | Tenant-Level Default Quota | Site-Specific Quota |
|---|---|---|
| Where set | Microsoft 365 admin center > Active users > OneDrive tab | SharePoint Online Management Shell or site settings |
| Scope | Applies to new OneDrive sites only | Applies to a single existing site |
| Update timing | Does not affect existing sites | Immediate after PowerShell execution |
| Override behavior | Can be overridden by site-specific quota | Cannot be overridden by tenant default |
| Migration relevance | Set before migration to avoid low defaults | Must update after migration for each user |
You can now update OneDrive storage quotas after a tenant migration without confusion. Start by setting the tenant-level default quota in the Microsoft 365 admin center. Then use the SharePoint Online Management Shell to update each migrated site. Finally, ask users to unlink and relink their OneDrive sync client to refresh the local cache. An advanced tip: create a PowerShell script that loops through all users and sets the quota to a value 20% above their current usage to prevent over-quota warnings.