Clari forecast data usually stops refreshing from Salesforce because of a broken or delayed sync connection, expired OAuth credentials, unmapped custom fields, or opportunity changes that fall outside Clari's sync window. Clari doesn't pull data continuously — it runs on scheduled sync intervals, so recent pipeline edits may not appear until the next cycle completes.
How Clari Syncs With Salesforce
Clari connects to Salesforce through an API integration that reads opportunity, account, and activity data on a schedule. It doesn't stream changes in real time. Most orgs run syncs every few hours, with a full nightly refresh. If a rep updates an opportunity amount or close date at 2pm and expects it in Clari immediately, that's the first misunderstanding — the update waits for the next sync.
The integration depends on a connected Salesforce user (often a dedicated integration user) whose permissions determine what Clari can see. If that user loses field-level access or a permission set changes, records quietly stop flowing. Most teams get this wrong: they blame Clari when the real issue is a Salesforce permission or profile change.

Common Reasons Clari Forecast Data Isn't Refreshing
1. Expired or revoked OAuth token
Clari authenticates using OAuth. If an admin resets the integration user's password, revokes the OAuth grant, or Salesforce forces a token expiry, the sync silently fails. Check Setup > Connected Apps OAuth Usage in Salesforce to confirm Clari's session is still active. Re-authorize the connection from Clari's admin settings if the token is gone.
2. Sync hasn't run yet
The most boring cause and the most common. Confirm the last successful sync timestamp in Clari's sync status page. If your pipeline edit happened after the last run, you're just waiting. You can usually trigger a manual sync from the admin console for time-sensitive forecast calls.
3. Unmapped or renamed fields
If someone renames a custom field, changes its API name, or adds a new required field in Salesforce, Clari's field mapping breaks for that attribute. The record may still sync, but the specific column (say, a custom Forecast_Category__c) shows stale or blank data. Review the field mapping in Clari after any Salesforce schema change.
4. Records outside the sync scope
Clari filters which opportunities it pulls — typically by record type, close date range, or a specific set of pipelines. An opportunity with a close date pushed two years out, or a record type Clari isn't configured to read, won't appear no matter how many times you refresh.
5. API rate limits or bulk sync failures
Large orgs hit Salesforce API limits during heavy sync jobs. When Clari's bulk API calls get throttled or a batch fails mid-run, part of your pipeline updates while another part stays stale. Sync logs will show partial completion or error codes. Salesforce's API request limits documentation explains the daily caps that trigger this.
How to Diagnose the Refresh Problem
Work through the checks in order — each one narrows the cause:
- Open Clari's sync status and note the last successful sync time and any error codes.
- Confirm the Salesforce integration user is active and its OAuth grant is valid.
- Verify the integration user has read access to the object and fields in question.
- Check whether the affected opportunity falls inside Clari's sync filters (record type, close date, pipeline).
- Review recent Salesforce schema changes — new required fields, renamed API names, changed picklists.
- Trigger a manual sync and watch whether the specific record updates.
If a record refuses to update after a manual sync and the user has access, the issue is almost always a filter scope or field mapping problem rather than a connection failure.
Field Mapping and Permission Details
| Symptom | Likely cause | Where to check |
|---|---|---|
| Nothing syncing at all | Expired OAuth / inactive user | Salesforce Connected Apps |
| One field stale, rest current | Broken field mapping | Clari field mapping settings |
| Some records missing | Sync filter / record type scope | Clari sync configuration |
| Partial data after sync | API rate limit / batch failure | Clari sync error logs |
| Everything lags by hours | Normal sync interval | Clari sync schedule |
Good forecast hygiene starts upstream in the CRM. If your pipeline data is inconsistent in Salesforce, Clari faithfully reproduces that mess. Teams working to improve pipeline velocity should treat clean, well-governed opportunity data as the foundation before trusting any forecasting layer.
When the Problem Isn't Clari At All
Sometimes the forecast "not refreshing" is actually Salesforce data that never changed the way people think it did. A rep might edit a field that isn't part of the forecast rollup, or update an opportunity that's excluded from the current forecast period. Validation rules or workflow automations in Salesforce can also silently overwrite values after a rep saves them.
Before filing a support ticket, confirm the value is actually correct in Salesforce and inside Clari's sync scope. This matters even more for teams evaluating a broader stack change — anyone migrating to a custom AI GTM stack needs a clear picture of how their existing sync boundaries and data governance work today.

Key Takeaways
Clari forecast data refreshes on scheduled syncs, not in real time, so recent Salesforce edits often just need to wait for the next cycle. When data genuinely won't update, the cause is almost always an expired OAuth token, a permission change on the integration user, broken field mapping after a schema change, or an opportunity that falls outside Clari's sync filters. Check the sync status page first, confirm the record is in scope, trigger a manual sync, and only then suspect a deeper integration failure. Clean Salesforce data upstream prevents most forecast surprises before they reach Clari.
