When you update a knowledge source in Copilot Studio, the refresh process can sometimes take much longer than expected. This delay prevents your copilot from using the latest data, which can lead to outdated or inaccurate responses. The root cause is often a combination of large data volumes, restrictive API throttling, or inefficient indexing configurations. This article explains why the refresh slows down and provides specific steps to speed it up.
Key Takeaways: Speeding Up Copilot Studio Knowledge Refresh
- Copilot Studio > Settings > Knowledge > Data sources: Limit the number of source documents to under 5,000 per refresh to avoid throttling.
- Microsoft 365 admin center > Service health > Copilot: Check for ongoing service incidents that throttle refresh rates.
- Copilot Studio > Topics > Knowledge source > Refresh schedule: Set manual refresh instead of automatic to control timing and reduce queue conflicts.
Why Copilot Studio Knowledge Source Refresh Slows Down
Copilot Studio refreshes knowledge sources by re-indexing the content from connected data sources such as SharePoint, OneDrive, or public websites. The refresh speed depends on several factors:
Large Document Volumes
Each knowledge source has a limit on the number of documents it can process per refresh cycle. When you exceed 5,000 documents, Copilot Studio queues the remaining documents. The queue processes in batches, which can add hours to the total refresh time. The system does not show a clear queue status, so you may see a prolonged “Refreshing” state without progress updates.
API Throttling from Microsoft Graph
Copilot Studio uses Microsoft Graph APIs to read content from SharePoint and OneDrive. Microsoft Graph enforces per-app and per-tenant throttling limits. When multiple copilots or other services call the same APIs simultaneously, the throttling rate drops. This slows down the document download and indexing steps. Throttling is common during peak business hours when many Microsoft 365 workloads are active.
Inefficient Indexing Configuration
By default, Copilot Studio indexes all text content from each document. If your knowledge source includes large PDFs, PowerPoint files with embedded media, or Excel files with many sheets, the indexing engine spends extra time parsing non-text elements. You cannot change the indexing depth per source, but you can reduce the number of files or split large files into smaller ones.
Steps to Reduce Knowledge Source Refresh Time
- Reduce the number of documents per knowledge source
In Copilot Studio, go to Settings > Knowledge > Data sources. Remove any source that contains more than 5,000 documents. Split large SharePoint document libraries into multiple smaller libraries and add each as a separate knowledge source. This prevents the queue from building up. - Switch to manual refresh scheduling
In Copilot Studio, navigate to Topics > Knowledge source > Refresh schedule. Change the schedule from Automatic to Manual. Refresh only during off-peak hours, such as late night or early morning. Manual refresh avoids conflicts with automatic refreshes from other copilots. - Check Microsoft 365 service health for throttling incidents
Open the Microsoft 365 admin center. Go to Health > Service health. Look for any advisory or incident under Copilot or Microsoft Graph. If throttling is active, wait until the incident is resolved before triggering a refresh. You can also submit a service request to request a throttle limit increase for your tenant. - Optimize source file formats
Convert large PDF files to plain text before uploading to SharePoint. Remove embedded images, charts, and videos from PowerPoint files. For Excel, limit each file to one sheet with no more than 1,000 rows. Smaller files index faster because Copilot Studio processes text only. - Use a dedicated SharePoint site for knowledge source content
Create a new SharePoint site specifically for Copilot Studio knowledge content. Move only the documents you need for the copilot to this site. Set permission inheritance to break and grant read access only to the Copilot Studio service account. A dedicated site reduces API calls to unrelated documents and speeds up the Graph response. - Monitor refresh duration with Power Automate
Create a Power Automate flow that checks the refresh status every 30 minutes. Use the Copilot Studio connector to get the last refresh timestamp and duration. If a refresh exceeds 2 hours, send an email alert to your team. This helps you detect stuck refreshes early and cancel them manually.
If the Refresh Still Takes Too Long After Optimization
Refresh Stays in “Refreshing” State for More Than 4 Hours
This usually means the queue is full or a document is corrupt. Cancel the current refresh in Copilot Studio by going to Topics > Knowledge source > Refresh history. Click the active refresh and select Cancel. Then remove the largest knowledge source and refresh again. If the issue persists, delete the knowledge source and recreate it with fewer documents.
Copilot Returns Stale Data Even After Refresh Completes
Copilot Studio caches indexed data for up to 24 hours. After a refresh completes, the new data may not appear in responses immediately. To force cache clearing, go to Settings > Knowledge > Data sources. Disable and re-enable the knowledge source. Then trigger a manual refresh. This clears the cache and loads the latest index within 15 minutes.
Multiple Copilots Share the Same Knowledge Source
When two or more copilots use the same SharePoint document library, each copilot triggers its own refresh. This doubles the API load and increases throttling. Create a separate copy of the library for each copilot. Use SharePoint content mover or Power Automate to sync changes from the master library to each copy nightly. This way each copilot refreshes independently without competing for API calls.
| Item | Automatic Refresh | Manual Refresh |
|---|---|---|
| Description | Copilot Studio refreshes on a fixed schedule | You trigger refresh only when needed |
| Queue control | No control over timing | You choose low-traffic hours |
| Throttling risk | High during business hours | Low when scheduled off-peak |
| Cache behavior | Cache clears automatically after refresh | Cache clears after manual refresh |
| Best for | Small static knowledge sources | Large or frequently updated sources |
You can now identify the bottleneck in your Copilot Studio knowledge refresh and apply the correct fix. Start by reducing the document count per source and switching to manual refresh during off-peak hours. For persistent delays, check Microsoft 365 service health for throttling incidents. As an advanced tip, use Power Automate to monitor refresh duration and alert your team when a refresh exceeds 2 hours so you can intervene before users see stale data.