GreyScape.ai

Help · How it works

GreyScape.ai in five steps

The end-to-end mental model: how shadow-AI discovery, AI budget control, the approval workflow, and provider sync fit together. For the full marketing-site version with security model and architecture diagrams, see the link at the bottom.

  1. 1

    Connect a provider

    Add an admin API key for each AI provider (OpenAI sk-admin-…, Anthropic sk-ant-admin01-…). One key per provider, not per user — admin keys read usage across your whole organisation. Add yours on Connectors.

  2. 2

    We sync every 15 minutes

    A Railway cron job calls each provider’s admin API on a 15-minute cadence, pulls 14 days of bucketed usage + cost, attributes each row back to a project/key/model, and writes spend_events. The dashboard you see refreshes off that table. Live sync status on Connectors.

  3. 3

    Set budgets at any scope

    Caps live at organisation / team / user / project levels and nest hierarchically — a user’s ChatGPT Plus sub appears against their personal budget AND their team budget AND the org budget. Soft alert at 75%, hard alert at 100%. Manage on Budgets.

  4. 4

    Run the approval workflow

    Every new AI workload starts with a one-link request. The requester chats with the AI advisor for ~60 seconds to scope their use case. The advisor recommends a model and produces a monthly cost estimate. You approve a budget; we auto-create a project-scoped key (OpenAI) and a matching monthly cap. Start one on Approvals.

  5. 5

    Discover what’s outside your policy

    Personal-tier ChatGPT, Cursor signups, Claude Pro on expense cards — these are “shadow AI.” GreyScape.ai stitches signals from your card feed (CSV upload), SSO, browser extension, and email-receipt forwarding into one queue. Each finding gets a Triage decision: Sanction (move to corporate seat), Block (deny-list), Restrict (subset of users), or Defer (revisit). See Discoveries.

Where each number comes from

MTD spend
Sum of cost_cents from spend_events for the current calendar month, scoped to your tenant via Postgres RLS.
Forecast EOM
MTD × (days in month ÷ day of month). A naive but transparent forecast that updates daily.
Budget used
Forecast EOM ÷ active org-scope budget for this calendar month, capped at 100% for the progress bar.
Anomaly
Daily spend that deviates from the rolling 14-day baseline by more than 3 standard deviations.
Cost attribution
Bucket cost from each provider is pro-rated across the bucket's (key × model) rows using the rate-card weighted attribution from Wave 5.11 — high-rate models get a proportionally larger share.
Sync cadence
Every 15 minutes via Railway cron. Each run is recorded in sync_runs with success / error status.

Read the full How It Works (architecture diagrams, security model)