Connect Anthropic
Cost Catch reads your Claude usage and cost. Anthropic reports billing through two different APIs depending on your product, so the one thing to get right is which one you have — they're not interchangeable.
Before you start
Two things, and the app generates the technical parts:
- An Anthropic key for your product (details below). Already have one with the right scope? Reuse it.
- A Snowflake ACCOUNTADMIN to store the key as a secret and allow outbound calls to
api.anthropic.com. The app generates the SQL.
Choose your options
Choose the product that matches you — the keys are created in different places by different roles. Not sure which you have? If you buy Claude through the developer platform at platform.claude.com, that's Console; if your organization uses Claude on an Enterprise plan through claude.ai, that's Enterprise.
- Claude Console (platform.claude.com) — create an Admin API key (Settings → Admin keys; you need the admin role). Starts
sk-ant-admin01-…. Reads org usage and cost only; it can't send messages. - Claude Enterprise (claude.ai) — create an Analytics API key with the
read:analyticsscope (primary owner only). Startssk-ant-api01-…. Scopes are fixed at creation.
No billing API: Claude Team and individual Pro / Max plans. Using Claude via Bedrock, Vertex AI, or Foundry? That spend is billed by the cloud provider — the AWS / Google Cloud / Azure connectors already cover it.
Create the key
The two products use different key types that aren't interchangeable — follow the branch that matches your product.
Claude Console (platform.claude.com)
You need the admin role in the organization:
- In the Claude Console, go to Settings → Admin keys and choose Create key.
- Name it (e.g.
cost-catch), set an expiration if you want, and create it. - Copy the key (it starts
sk-ant-admin01-…and is shown only once) and paste it into the wizard.
Reference: Create an Admin API key.
Claude Enterprise (claude.ai)
Only the primary owner can do this:
- Sign in to claude.ai as the primary owner and go to Organization settings → API.
- Enable public API access with the toggle — until it's on, every API request is denied.
- Create an Analytics API key. It carries the
read:analyticsscope, which is fixed at creation. - Copy the key (it starts
sk-ant-api01-…and is shown only once) and paste it into the wizard.
Reference: Analytics APIs. Cost figures apply to usage-based Enterprise plans; seat-based plans report usage credits.
Refresh cadence
Pick how often Cost Catch checks for new data. Every connection offers the same menu; we suggest a default that matches how often Anthropic actually publishes.
| Cadence option | Good for |
|---|---|
| Every hour | Tightest freshness; more runs |
| Every 6 hours | Same-day freshness, light footprint |
| Every 12 hours | Twice a day; low cost |
| Daily Recommended | Anthropic aggregates the previous day the next morning UTC, and the report is daily-grain — a daily pull sees everything an hourly one would. |
| Custom | Any schedule you like, on your own cron |
The app pre-selects Daily and shows this reasoning right next to the picker — override it any time.
What to expect
- Console: cost data appears within ~5 minutes, daily-grain. Note: Priority Tier spend isn't in the cost report — it has to be derived from the usage report separately.
- Enterprise: figures are revised for up to 30 days, then settle. Enterprise data starts 2026-01-01 — there's nothing to backfill before that. On seat-based plans these are usage credits.
- Where your data lands.
RAW.VENDOR_BILLING; current billing viaANALYTICS.ANTHROPIC_BILLING(settled days only:ANTHROPIC_BILLING_FINAL).
Connect it
Open Anthropic in the setup wizard, pick your product, and it generates the Snowflake secret and network access for you.
Stuck on a step? Email [email protected].