Skip to content
Browse the documentation

Understand spend

Home

What a month cost, how much of it is explained, what changed, what to do next, and whether it ties out to the bill.

Home is the first page of a project: what the month cost, how much of it CostReveal can explain, what changed from the month before, the one change that would explain the most of the rest, and whether the figures tie out to what each provider billed.

Choose the month with the period control, and the currency with the Currency control, as on Explore. Home shows the project chosen in the project menu.

Before the first figures

Until a connection's first data arrives, Home says what it is waiting for, provider by provider: a connection still to finish, the export a provider is preparing, or the first read under way. A connection whose latest read failed says why, with the way to fix it under Connections.

Spend, explained and unknown

The month's spend is split in two, which together make the total:

  • Explained: spend whose owner some evidence names, on a basis of direct, inferred or allocated.
  • Unknown: spend nothing names an owner for yet. It is never spread across owners to look complete.

Not yet invoiced is a separate question: how much of the month no invoice confirms yet, such as the open month of a provider's estimates, which may still change whoever it is for.

Beside the split, Home shows each kind of provider's share of the month, such as cloud or AI and language models, what each provider billed, and, for a month under way, what the same days of the month before cost. When the explained share has fallen by 10 percentage points or more since the month before, Home points it out, with the way to Connections: a sharp fall usually means a connection stopped reading or a source stopped sending the tags it used to.

Coverage by dimension

Coverage by dimension shows how much of the month is explained on each of service, model, team, feature, customer and user. Model counts only spend that has one, such as an AI provider's; cloud spend is never counted against it.

Next best action

Next best action names the one change that would explain the most spend still unknown, about how much it would explain, and where that dimension's coverage would reach once it is done in full. It is one of:

  • adding a team tag to the AWS resources of the service with the most untagged spend;
  • naming the team behind an Anthropic workspace or OpenAI project;
  • sending usage data that names the customer behind each AI call, so shared AI spend is divided by who used it.

When nothing would help, it says so: spend that no resource carries, such as tax, stays unknown rather than guessed.

Where it went and what changed

  • Where it went lists the five services that cost the most, each with its basis, and links to every service in Explore.
  • What changed lists up to three services whose spend moved most against the same days of the month before, each by at least 1 percent of the larger month's spend, with both amounts. Only measured movements are shown, never a guessed reason. Explore divides any change by every dimension.

Unit economics

Unit economics shows the month's cost per active user and per call, from the usage data your application sends, and gross margin once Stripe brings revenue. A figure without its source says what unlocks it. Business has the detail.

Needs attention

Needs attention gathers what to act on: a connection whose latest read failed, with its reason; how much of the month is not yet explained, with the way to it in Explore; and the month's reconciliation.

Reconciliation

Every month is checked twice.

  1. Attribution adds up to the ledger. On every dimension, what CostReveal attributed must add up exactly to the billing lines recorded. If it ever does not, Home says Does not tie out with both amounts: that is a defect, and it is checked again on every sync.
  2. The ledger agrees with the provider's own total, wherever the provider states one: AWS Cost Explorer, Azure Cost Management, Oracle's Usage API, the Google Cloud billing export's invoice month total, Anthropic's and OpenAI's total cost reports, and Datadog's own total once it closes a month. Azure's and Oracle's need the optional access their setup guides describe.

While a month is open, a provider's total can differ from the lines recorded so far; Home says by how much, compares them again on every sync, and states when they must agree, such as once AWS issues the invoice. Once the figures are final, a difference is a variance, shown as Does not tie out for that provider, never adjusted away. When everything agrees, Home says Ties out, with the total recorded and each second source that agrees.

Snowflake states its charges in one place, and Grafana Cloud, Twilio, Cloudflare, Cursor and custom sources state no second total, so their months are checked by the first test alone. Databricks usage billed by Databricks is an estimate at list price, and New Relic's is consumption priced at the rates you entered; Home says so beside their figures.

Freshness

Under the figures, Home states when each provider was last read, and how late that provider's own data runs, such as AWS updating its report up to three times a day. While new billing data is being explained, the figures shown are the last complete ones, and Home says it is updating.