Skip to main content
← Back to Articles
Guide AI FinOps

Sync Cursor Teams Spend to Your Warehouse with Airbyte

An open source Airbyte connector for preserving Cursor Teams spend, usage, member, and event data before the API retention window rolls forward.

4 min read By Hermann Lotter

Data streams

4

Recommended sync

Daily

Cost precision

Fractional cents

SEO Focus Topics

Cursor TeamsAirbyteAI FinOpsLLM Cost ManagementData Engineering

Key Takeaways

  • • Cursor exposes useful team spend and usage data through its Admin API, but the available history is limited and moves forward over time.
  • • The connector syncs members, daily usage, current cycle spend, and granular usage events into any Airbyte destination.
  • • Cursor cost fields can contain fractional cents. Declaring them as integers can silently turn valid spend into null values.
Sync Cursor Teams Spend to Your Warehouse with Airbyte

The problem is not getting Cursor data once

Cursor gives team administrators an API for members, daily usage, spending, and individual usage events. That is enough to answer useful questions about adoption and cost today. It is not, by itself, a durable reporting system.

The spending endpoint reports the current calendar month, while usage endpoints operate inside a limited retention window. Once older data falls outside that window, a new integration cannot reconstruct it. If you want six month spend trends, seat history, or evidence for an annual review, you need to start saving snapshots before you need the answer.

Install now, history starts accruing now. The connector cannot recover data that Cursor no longer returns.

What the open source connector syncs

I built a declarative Airbyte source for the Cursor Teams Admin API. The manifest is open source and can be imported directly into Airbyte Connector Builder today. It has also been submitted to the Airbyte catalog for review.

The connector exposes four streams. Together they give engineering and finance enough raw material to track adoption, spend, model usage, and inactive seats without maintaining a custom ingestion service.

  • Members, a full refresh roster keyed by email.
  • Daily usage, incremental activity data including agent, chat, composer, tab, and accepted line metrics.
  • Spend, a paginated snapshot of current cycle spend and limits per member.
  • Usage events, incremental event level model, token, and cost data.

The schema bug that silently erased spend

The connector grew out of a real production failure. Cursor cost values that had behaved like whole cents began arriving as fractional numbers. A value such as 9445.474115 is valid JSON, but an Airbyte schema that declares the field as an integer cannot represent it.

The dangerous part was the failure mode. The pipeline kept running, records kept landing, and the cost fields became null. A green sync was therefore not proof that the financial data was intact.

The fix is simple once you know the cause. Every money field in the connector uses JSON Schema type number, including spendCents, includedSpendCents, chargedCents, cursorTokenFee, requestsCosts, and tokenUsage.totalCents. A monthly canary calls the live API and fails if required cost fields are missing or null.

  • Treat API money fields as measured values, not assumed integers.
  • Test field values after they land in the destination, not only at the source.
  • Add a canary for null cost fields because successful transport does not guarantee usable financial data.

How history accrues

Daily usage and usage events use incremental cursors with short lookback windows so late arriving records are collected on the next run. The API limits date ranges, so the connector requests data in bounded windows and advances state after each successful sync.

Spend behaves differently. Cursor returns a current cycle snapshot rather than a permanent monthly ledger. To build history, configure the destination to append each daily spend snapshot. You can then reconstruct how spend changed during a billing cycle and retain the final state after the Cursor dashboard moves on.

  • Run the connection daily.
  • Use incremental append for daily usage and usage events.
  • Use append for spend snapshots if you want month over month history.
  • Keep raw timestamps and billing cycle fields so reporting logic can be changed later.

What you can measure once the data lands

The connector deliberately stops at reliable ingestion. Your warehouse and reporting layer decide what good usage looks like for your organisation.

The most useful views combine the streams rather than reporting each one in isolation. A paid seat with no recent activity is a clean review candidate. High spend with strong accepted usage may be healthy. High spend with low activity or unexpected model mix needs investigation.

  • Current spend and overage by person, team, and billing tier.
  • Inactive or removed seats that still appear in historical spend.
  • Model mix and event level cost concentration.
  • Daily adoption trends across agent, composer, chat, and tab usage.
  • Accepted AI output compared with seat cost as a directional value signal.
Request counts alone are a weak cost proxy. Use the actual spend and event cost fields when making budget decisions.

Install the connector in Airbyte

Setup takes three steps: create the Cursor key, download the manifest, then import and configure the connector in Airbyte.

  1. Open Cursor Admin API settings , then create a dedicated key named Airbyte Cursor Teams. Copy the key immediately because Cursor only displays it once.
  2. Download manifest.yaml from GitHub and save the file locally.
  3. Follow the connector setup and stream configuration : create a custom source in Airbyte Connector Builder, import manifest.yaml, add the API key, and choose a start date. Test all four streams, publish the source, preserve spend snapshots with append mode, and schedule a daily sync.
Configuration note: the API key is the username for HTTP Basic authentication and the password is empty. Choose a start date inside Cursor available history because older data cannot be recovered. The connector limits concurrency to one and retries rate limits and server errors with backoff.

Why this matters beyond Cursor

AI coding tools are becoming a material software cost, but their management APIs are still young. Fields change, pricing models change, and dashboards are designed for the current billing conversation rather than durable analysis.

The durable pattern is the same one FinOps already uses for cloud infrastructure. Pull usage data into a ledger you control, preserve the raw history, validate the money fields, then connect spend to adoption and outcomes. Cursor is one source. The operating model should work across every AI tool you buy.

Frequently Asked Questions

Does Airbyte have a Cursor Teams connector?

An open source Cursor Teams source connector has been submitted to the Airbyte catalog and is awaiting review. You can use it now by importing its manifest.yaml file into Airbyte Connector Builder.

Which Cursor Teams data can I sync?

The connector syncs team members, daily usage metrics, current cycle spend per member, and granular usage events including models, tokens, and cost fields.

Why should Cursor spend fields use number instead of integer?

Cursor can return fractional cents. JSON Schema integer cannot represent values such as 9445.474115, which can cause valid spend fields to land as null. JSON Schema number preserves the full value.

Can the connector backfill all historical Cursor usage?

No. Cursor only returns data inside its available API retention window, and the spend endpoint is a current cycle snapshot. The connector preserves history from the point you start syncing.

How often should I sync Cursor Teams data?

Run it daily. Daily syncs preserve spend snapshots and reduce the chance that usage events leave Cursor retention before they reach your warehouse.

HL

About the author

Hermann Lotter

FinOps practitioner who has led cloud and AI cost optimization inside a 180-person organisation, identifying six-figure annual savings across AWS and LLM spend. He writes Easy Entropy from hands-on engagements, not theory. LinkedIn

Free Assessment

Want this outcome in your AWS bill?

Get a free cloud cost analysis and a prioritized optimization roadmap.

Request Free Analysis →

Related Articles