FinOps Troubleshooting and Data Gaps

Who this is for

Anyone whose FinOps dashboard is showing missing data, incorrect totals, or error states.

What you will complete

Diagnose and fix the most common FinOps data problems: missing data, stale data, incorrect totals, and provider-specific billing gaps.


Problem 1: "No billing data" or "Configure billing" message

Cause A: Billing permissions are not set up for the cloud account.

Fix: Follow the billing setup steps in KB-08-02 for each provider. After granting permissions, click Refresh and wait up to 48 hours.

Cause B: The cloud account was connected recently and billing data has not yet been pulled.

Fix: Wait 24–48 hours after initial connection. Click Refresh to check if data is available sooner.


Problem 2: Cost total is much lower than cloud console

Cause: Billing data lag. Cloud providers make billing data available 24–48 hours after actual spend. The most recent 1–2 days of spend almost always appear as $0 or incomplete.

Fix: This is expected. Compare CloudAIPilot's total to the equivalent time period in your cloud console (subtract the last 2 days). If the discrepancy persists beyond 48 hours for older periods, check billing permissions and click Refresh.


Problem 3: Costs appear for one provider but not another

Cause: Billing permissions may be missing for the provider that is not showing data, or that provider's billing export may not be configured.

Diagnosis:

  1. Go to Cloud Accounts and check the health status for each account.
  2. Check if there is a billing-related warning on the account.

Fix: Follow the provider-specific steps in KB-08-02 for the provider with missing data.


Problem 4: FinOps totals are much higher than expected

Cause A: Multiple accounts covering the same resources are connected (consolidated billing + member accounts). See KB-08-11 for duplicate detection.

Cause B: An unexpected cost spike occurred (a large data transfer, accidental resource creation). Check the Anomalies card.

Cause C: A previously stopped server was restarted and is now incurring charges again.

Fix for A: Disconnect duplicate accounts per KB-08-11 guidance.

Fix for B: Investigate the spike in the Anomalies card and identify the source.

Fix for C: Review the By Account breakdown to identify which account has higher-than-expected spend.


Problem 5: Trend chart shows gaps (days with $0)

Cause: Normal for the most recent 1–2 days (billing lag). Also common on weekends for workloads with weekday-only traffic.

Fix: If gaps appear for periods older than 3 days, click Refresh. If gaps persist for historical data after 24 hours, check billing permissions — a gap mid-month may indicate a permission issue during that period.


Problem 6: Recommendations and waste findings are not appearing

Cause A: Insufficient history. Waste detection requires 7+ days of data to identify consistently idle or orphaned resources.

Cause B: Resources are being correctly utilized — there is no waste to find.

Fix for A: Wait 7–14 days after initial setup. Recommendations improve with more history.

Fix for B: No action needed — a lack of waste findings is a good outcome.


Problem 7: Forecast shows "Not enough data"

Cause: Fewer than 7 days of billing data are available.

Fix: Wait until 7 days of data are accumulated. Forecasting accuracy improves significantly after 30 days.


Problem 8: Refresh button is greyed out

Cause: A refresh was already triggered recently (rate limited) or is currently in progress.

Fix: Wait 5–10 minutes and try again. If the button remains greyed out for more than 30 minutes, reload the page.


General troubleshooting steps

  1. Click Refresh and wait 5 minutes.
  2. Check the "Last updated" timestamp in the FinOps header — if it is more than 24 hours old, there may be a data pull issue.
  3. Verify billing permissions for each cloud account.
  4. Check cloud account health status in Cloud Accounts.
  5. If all else fails, email support@cloudaipilot.com with the following information: which provider is missing data, how many days the gap spans, and the last successful data timestamp.

Related articles