Plans and limits

What each plan costs and includes, what a pull request check and an AI credit pay for, how the Teams seat pool works, and what happens at a limit.

This page tells you what each plan costs, what it includes and where its limits sit, so you can pick one and predict what a month of work uses.

What each plan costs

Prices are in USD and exclude tax. An annual plan is charged once for the year; the monthly figure beside it is what that works out to each month, and annual billing saves 10%.

PlanMonthlyAnnualMembers
Free$0$01
Pro$11.99$129.48 a year, which is $10.79 a month1
Teams$9.99 a seat$107.88 a seat a year, which is $8.99 a seat a monthAny number, 3 minimum
EnterpriseBy contractBy contractAny number

The smallest Teams subscription is 3 seats, so Teams starts at $29.97 a month or $323.64 a year.

Pro and Teams carry a 7-day free trial, with a card taken up front and one trial per workspace. The trial carries the plan's full allowance.

Enterprise is sold by contract. Seats, checks and credits are set in the contract, and there is no self-serve price. Email hello@spectrace.io to talk about it.

What each plan includes

Allowance or limitFreeProTeamsEnterprise
Pull request checks a month106050 a seat, pooled across the workspaceBy contract
AI credits a month1001,0001,000 a seat, pooled across the workspaceBy contract
Members11Any number, 3 minimumAny number
Projects2UnlimitedUnlimitedUnlimited
Repositories a project1UnlimitedUnlimitedUnlimited

Every plan, Free included, carries:

  • GitHub pull request verification and GitLab merge request verification, within the check allowance.
  • Extraction, acceptance criteria and test generation, within the credit allowance.
  • The VS Code extension.
  • GitHub Issues sync.
  • Export in every format.
  • Pulse, the daily read on what changed and what it puts at risk.
  • Roles and permissions, which work the same on every plan.
  • Audit recording, with the Activity and Requirement history views.
  • Unlimited products.
  • Email support.

Pro adds Cycles, the MCP server that lets an AI agent read the spec, Jira sync, Linear sync, unlimited projects and unlimited repositories a project.

Teams adds the Audit view and export, Slack, the team surface of Cycles, and any number of members.

What a pull request check is

A check covers up to 20 changed code files and 80,000 characters of their changes. Each push that gets a fresh verdict uses a check. A pull request past either limit is split into several runs and costs one check for each, up to 4 for a single verdict.

These runs cost no check:

  • A push that reuses the previous verdict because nothing the verifier reads changed.
  • A pull request that matches no requirement.
  • A run excluded by the project's path filters, or one whose diff contains no code files.
  • A run superseded by a newer push.
  • A run that fails before it reaches a verdict. A retry of the same run is never counted twice.
  • A second run on a commit that was already charged, such as a duplicate trigger or an edit to a merge request description.

Re-verify, inline verification from an AI agent over MCP, and GitLab merge requests all use checks. See How PR verification works for the mechanics.

What an AI credit pays for

A credit pays for the AI work that is not verification: extraction, acceptance criteria, test generation, analysis, import and enrichment. One credit is one action, whatever that action costs to run, and the same action draws the same credit in the web app, in the VS Code extension and over MCP. Semantic search, the suggestions offered while you write, and the progress hints the VS Code extension sends draw nothing. See AI credits for the full table.

How the Teams seat pool works

Every workspace member is billed as a seat, with a minimum of 3. A seat is a member, or an invite that has been sent and not yet accepted, revoked or expired. Spectrace sets the quantity from the workspace itself and resynchronises it whenever an invite is sent, accepted, revoked or expires, and whenever a member leaves. Neither Checkout nor the billing portal offers a seat picker.

Checks and credits are counted per seat and pooled across the workspace, so a Teams workspace of 4 seats has 200 checks and 4,000 credits a month for everyone in it to share, and a 3-seat workspace has 150 checks and 3,000 credits.

Free and Pro are sold as one-member plans, and Teams is the plan that carries more than one member. Inviting a second member is not blocked today, so a Free or Pro workspace that invites one is asked for nothing and keeps working. See Seats on the Teams plan.

When allowances reset

Checks and credits reset on the 1st of each month, UTC, on every plan, annual plans and trials included. The reset date comes from one shared helper rather than from the subscription's billing period, so an annual plan resets monthly like any other. Settings → Billing shows what the workspace has drawn so far, its allowance and the reset date.

What happens at a limit

Nothing is billed as overage. A limit stops the work instead of charging for it.

  • Checks. Verification stops until the allowance resets. The run is recorded as limit_reached, the check run concludes neutral with the reset date in its title, and an existing Spectrace comment is edited to say that nothing was verified at that commit. A commit that already has a verdict keeps it. A verdict is never cut short part-way, so the run that takes the last check finishes and a workspace can end the month up to 3 checks over its allowance.
  • Credits. An action you start refuses with a message naming what it needed and what is left, and nothing is charged. Background work records itself as skipped with the reason and leaves the requirement as it was, so it can run later with nothing to undo.
  • Projects. Creating one past the plan’s limit is refused, with a message naming the limit. The repository and member counts in the table above are what each plan is sold with; neither is enforced at the moment, so going past one is not refused.
  • A feature the plan lacks. The action is refused with a sentence naming the plan that includes it.