Troubleshooting Data Sync Issues
Troubleshooting Data Sync Issues
Attribution.ai syncs data from multiple sources: Shopify orders via webhooks, and ad platform data (Facebook, Google, TikTok, Amazon, Snapchat, Klaviyo) via API integrations. If your dashboard shows stale data, missing orders, or incomplete metrics, this guide will help you diagnose and resolve the issue.
Understanding Sync Timing
Before troubleshooting, it helps to understand how often data syncs:
| Data Source | Sync Method | Frequency | Typical Latency |
|---|---|---|---|
| Shopify orders | Webhooks (real-time) + periodic sync | Real-time + every 6 hours | Under 1 minute for webhooks |
| Facebook Ads | API pull | Every 6 hours | Up to 6 hours + Facebook's own delay |
| Google Ads | API pull | Every 6 hours | Up to 6 hours + Google's own delay |
| TikTok Ads | API pull | Every 6 hours | Up to 6 hours + TikTok's own delay |
| Amazon Ads | API pull | Every 6 hours | Up to 6 hours + 48-72 hours for Amazon |
| Snapchat Ads | API pull | Every 6 hours | Up to 6 hours + Snapchat's own delay |
| Klaviyo | API pull | Every 6 hours | Up to 6 hours |
| Pixel events | Real-time ingestion | Real-time | Under 60 seconds |
| Survey responses | Real-time submission | Real-time | Under 60 seconds |
Key takeaway: Pixel events and Shopify orders sync in near real-time. Ad platform spend data can be up to 6 hours behind, plus the ad platform's own reporting delay (which varies from a few hours to 72 hours for Amazon).
Shopify Order Sync Issues
Orders Not Appearing in Dashboard
Step 1: Check webhook status
- Go to Settings > Integrations > Shopify.
- Verify that the webhook connection shows a green "Connected" status.
- If it shows "Disconnected" or a warning, click Reconnect to re-establish the webhook.
Shopify webhooks can disconnect if:
- Your Shopify app permissions were changed
- Shopify experienced a temporary outage
- The webhook delivery failed repeatedly and Shopify deactivated it
Step 2: Trigger a manual sync
- Go to Settings > Sync or the Sync page in your dashboard.
- Click Sync Now or Sync All.
- This initiates a fresh pull of recent orders from the Shopify API (past 24 hours by default).
- The sync typically completes within a few minutes.
Step 3: Check for Shopify webhook delays
Shopify webhooks can occasionally experience delays of up to 15 minutes during high-traffic periods (e.g., flash sales, holiday weekends). If an order was placed very recently, wait 15-20 minutes before investigating further.
Step 4: Verify the order in Shopify
Confirm the order exists in your Shopify admin and is not a draft order, test order, or pending order. Only completed (paid) orders are synced by default.
Duplicate Orders
Duplicate orders can appear if a sync was interrupted and retried. Attribution.ai deduplicates orders based on Shopify order ID, so true duplicates are rare. If you see duplicates:
- Go to Settings > Sync > Full Resync.
- Click Run Full Resync. This reconciles all orders from the past 90 days against your Shopify store.
- The resync identifies and removes duplicates automatically.
Full resyncs can take several minutes to complete depending on your order volume.
Orders Appearing Without Attribution Data
If orders appear in your dashboard but show "No attribution data" or "Direct / Unknown":
- The customer's session was not tracked: The visitor may have used an ad blocker, or the pixel was not installed when they visited. This is expected for a portion of orders.
- The order was placed before pixel installation: Orders from before you installed the pixel will not have any pixel attribution data. Survey data (if the survey was active) may still be available.
- Cross-device journey: The customer may have visited on one device (where the pixel tracked them) and purchased on another device (with no pixel session). The post-purchase survey helps attribute these orders.
Ad Platform Sync Issues
Spend Data Not Updating
Step 1: Check integration status
- Navigate to Settings > Integrations.
- Verify each connected platform shows a green "Connected" status.
- If any platform shows a warning or red status, click Reconnect and complete the OAuth flow again.
Step 2: Re-authorize expired tokens
Ad platform API tokens expire periodically:
- Facebook: Typically every 60 days
- Google: Long-lived but can expire on password change
- TikTok: Periodic expiration
When a token expires, the platform card in your Integrations page shows a "Reconnect Required" banner. Click it to re-authorize.
Step 3: Wait for platform reporting delays
Each ad platform has its own reporting latency:
- Facebook: Data is usually available within a few hours but may be adjusted for up to 72 hours
- Google: Similar to Facebook, with adjustments possible for several days
- TikTok: Data can be delayed up to 24 hours for the most recent day
- Amazon Ads: Reporting can lag 48-72 hours behind real-time
- Snapchat: Usually available within a few hours
If yesterday's spend is not showing, the platform may not have finalized that data yet. Wait for the next sync cycle.
Step 4: Trigger a manual sync
Go to Settings > Integrations and click the sync button on the specific platform card. This forces an immediate data pull outside the regular 6-hour schedule.
Spend Numbers Do Not Match Ad Platform
Minor discrepancies (under 5%) between Attribution.ai and the ad platform's native dashboard are normal. Common causes:
- Time zone differences: Each ad platform reports based on its account time zone. If your Attribution.ai store time zone differs, daily totals will shift. Verify time zones match in both systems.
- Data finalization timing: Platforms adjust reported metrics after the fact (Facebook: up to 72 hours, Amazon: up to 72 hours). If comparing recent dates, wait for finalization.
- Attribution window differences: Platforms like Facebook include view-through conversions by default, which Attribution.ai does not count unless configured to do so.
- Currency and exchange rates: If your ad account currency differs from your store currency, exchange rate timing can cause small differences.
If discrepancies exceed 5%:
- Confirm you are comparing identical date ranges in both systems.
- Check that the correct ad account is connected (especially for MCC/Business Manager setups with multiple accounts).
- Verify the time zone alignment.
- Contact support if discrepancies persist after checking all of the above.
Specific Platform Not Syncing at All
If a specific platform shows "Connected" but no data ever appears:
- Facebook: Verify you selected the correct ad account during setup (not just the Business Manager). Go to Integrations to check the connected account ID.
- Google: Verify auto-tagging is enabled and that you connected the correct child account (not the MCC manager account).
- TikTok: Verify your TikTok Business Center account is verified and that campaigns have delivered at least one impression.
- Amazon: Amazon Ads has the longest reporting delay (48-72 hours). Wait 3 days after connecting before investigating further.
General Sync Troubleshooting
Triggering a Manual Sync
You have several options for manual syncs:
-
Sync All: Go to Settings > Sync and click Sync All. This triggers a fresh data pull from Shopify and all connected ad platforms. Completes within a few minutes for most accounts.
-
Sync specific platform: Go to Settings > Integrations and click the sync button on a specific platform card.
-
Full Resync: Go to Settings > Sync > Full Resync. This performs a comprehensive reconciliation of all data from the past 90 days. Use this when data seems fundamentally incorrect, not just stale. Full resyncs are resource-intensive and should not be triggered more than once per day.
Checking Sync Logs
Attribution.ai maintains a sync log accessible under Settings > Sync > History. Each entry shows:
- Sync time: When the sync started and completed
- Source: Which data source was synced (Shopify, Facebook, Google, etc.)
- Records processed: How many records were imported or updated
- Status: Success, partial success, or error
- Error details: If the sync failed, a description of the error
Review this log to identify specific sync failures and their causes. Common errors include expired tokens, rate limiting, and temporary API outages.
Data Freshness Indicators
The Attribution.ai dashboard shows data freshness timestamps on key metrics:
- "Last synced" timestamp: Shown on the Overview dashboard and on each integration card. This tells you when data was last successfully pulled.
- "Data through" date: Shown on charts and tables, indicating the most recent date with complete data.
If the "Last synced" timestamp is more than 12 hours old, there may be a sync issue. Check the Integrations page and sync logs.
When to Contact Support
Contact support if any of the following are true:
- You have reconnected your integrations and triggered manual syncs, but data is still not updating after 24 hours
- The sync log shows repeated errors that you cannot resolve
- Spend discrepancies exceed 10% consistently after verifying time zones and date ranges
- Orders are not appearing even though the Shopify webhook is connected and manual syncs complete successfully
When contacting support, please include:
- Your store URL
- The affected integration(s) or data source
- The date range of missing or incorrect data
- Screenshots of any error messages from the sync log or integrations page
- Whether the issue started suddenly or has been ongoing since setup