Skip to content

Sources & integrations overview

Plutus pulls in three different kinds of data, each with its own connection flow:

  • Cost sources — spend data, pulled on a schedule (cloud bills, AI/LLM usage, SaaS invoices). See the sidebar groups under Cost sources for one page per provider.
  • Event sources — the non-cost annotations overlaid on your cost charts (deploys, incidents, releases, customer churn). See Event sources.
  • Usage sources — your own product usage telemetry, either pushed in via API or pulled from a metered-billing provider, used to compute unit economics (cost ÷ usage). See Usage sources and the usage ingestion API.

A number of cost and event sources also emit usage metrics as a byproduct of their normal sync — no separate usage-source connection needed. A source’s own page says so under what Plutus imports when it applies. See Usage Explorer for how this feeds unit economics alongside the two dedicated usage paths above.

Each source page follows the same layout: what Plutus imports, then how to connect it.

Cost and event sources sync on a schedule, not on demand — a background worker checks each connection’s next_sync_at and enqueues a job once it’s due. Every source has a default interval set at the catalogue level, but it’s staff-configurable per connection, so the interval an individual account sees can differ from the table below.

Category Typical default Why
Cloud infrastructure (AWS, GCP, Azure, Hetzner, DigitalOcean, …) 8 hours Matches how often the provider’s own billing data updates — most refresh their cost APIs 2-3 times a day.
AI / LLM (OpenAI, Anthropic, xAI, HuggingFace) 12-24 hours These providers publish usage as a daily billing feed, so polling more often doesn’t produce fresher data.
Data platforms (Databricks, Snowflake) 4 hours The sync itself runs a real query against the customer’s own warehouse, burning their compute credits — the interval is tightened only as far as the provider’s own 1-3 hour ingestion latency allows.
Business & finance (Stripe, Twilio) 2-8 hours Stripe’s Balance Transactions API is fast and generously rate-limited, so its default is tighter than the general 8-hour baseline.
Deploys & releases (GitHub, GitLab, Vercel, CircleCI) 30 minutes Free, near-real-time APIs, and these events are most useful lined up tightly against a cost chart.
Incidents & reliability (PagerDuty, Sentry, AWS Health) 30 minutes-6 hours PagerDuty and Sentry poll every 30 minutes; provider-status feeds like AWS Health move slower and sync every few hours.
Business events (Jira, Linear, Salesforce, Stripe Subscriptions) 1 hour Balances freshness against each provider’s own API rate limits.
News (RSS / Atom feeds) 6 hours A feed is cheap to poll, but news isn’t a signal anything acts on in minutes.
Usage sources (Stripe, Metronome, Chargebee usage) 8 hours Usage aggregates for billing purposes move slowly enough that polling more often adds no signal.

If a provider you use isn’t in the catalogue yet, request it on the feature request board. It’s public, so you can also upvote a request someone else already filed instead of duplicating it.