Uploading your data

Importing AI & LLM usage

The AI usage section tracks your team's spending on large language model APIs — OpenAI, Anthropic, Google, and others. It answers questions like "which workflow is costing the most?" and "which user is driving 60% of our AI spend?"

What to upload

A CSV where each row is one LLM API call or a daily/monthly rollup of calls. Columns:

ColumnRequiredNotes
providerYese.g. openai, anthropic, google
modelYese.g. gpt-4o, claude-3-5-sonnet
workflow_typeYese.g. email-draft, data-extract
source_typeNoe.g. api, sdk, zapier
user_emailNoWho triggered the call
occurred_atYesISO timestamp or date
input_tokensNoInput token count
output_tokensNoOutput token count
cost_usdYesCost for this row in USD

Download the exact template from AI Usage → Import → Download template.

Where to get this data

OpenAI — go to platform.openai.com → Usage → Export.

Anthropic — go to console.anthropic.com → Usage → Export CSV.

Google (Gemini/Vertex) — export from your Google Cloud billing dashboard, filtered to AI/ML services.

Your own logs — if your team routes all AI calls through an internal gateway or proxy, export from there and map your column names to the template.

How to import

  1. Go to AI Usage → Import in the left sidebar.
  2. Click Choose file and select your CSV.
  3. Click Import.

The AI usage importer is stricter than the spend importer — column names must match exactly.

What you see after import

  • Summary cards — total cost by provider, model, and workflow
  • Event table — filterable by provider, model, workflow type, and source
  • Cost trend — month-over-month spend per provider
  • Monthly delta — how much this month compares to last month

Spike detection

If Nagata sees month-over-month AI spend growth of 50% or more and the dollar delta is at least $200, it creates an alert automatically. This requires at least two months of data to fire.

Common problems

Column names must match exactly — unlike the spend importer, AI usage won't guess column mappings.

cost_usd must be a plain number — 0.0032 works; $0.0032 does not.

Only one month of data — the spike alert and MoM comparisons require at least two months.