Skip to content

Plans and limits

What each plan includes, what is counted per organisation and what per project, and what happens to your setup when the plan changes.

A plan sets how many checks you get each month, how much you can configure and how long content is kept. Start on Free to try the basic check. Move to a paid plan when you need your own templates, stored content or a team.

The table is read from the plan catalog when this site is built. It is the same catalog the API enforces, so the numbers here are the numbers a request meets.

LimitFreeStarterGrowthBusiness
Price a month$0$89$289$849
Checks a month15010,000100,000250,000
Requests a minute, per API key603006001,500
Objects in one batch request1050100100
Organisations on the plan, per owner1UnlimitedUnlimitedUnlimited
Projects12520
Members151550
API keys, per project1520100
Webhook endpoints, per project131050
Templates, per projectNot included520100
Guidelines, per projectNot included520100
Wordlists, per projectNot included520100
Content retentionNot storedUp to 30 daysUp to 90 daysUp to 365 days
Advanced policiesNot includedNot includedIncludedIncluded
SimulationNot includedIncludedIncludedIncluded
Extra-check packsIncludedIncludedIncludedIncluded
Audio and videoSoonNot includedIncludedIncludedIncluded
Saved viewsSoonNot includedIncludedIncludedIncluded
CasebookSoonNot includedNot includedIncludedIncluded

Prices are in US dollars and exclude tax. Pricing shows what a year costs.

How to read a limit

A limit is one of three things:

  • A number. You can have that many.
  • Unlimited. Nothing is counted. The catalog writes this as null.
  • Not included. The plan does not have the thing at all. The catalog writes this as 0. For content retention the table says "Not stored".

The catalog is public. GET https://api.useinfrared.com/plans needs no key and returns every plan with its monthly_checks, its limits and its features.

What each limit counts

Counted perWhat
OrganisationChecks, shared by all its projects. Projects that are not archived. Members: every membership plus every pending invitation.
ProjectTemplates that are not archived, the basic check excluded. Guidelines and wordlists, enabled or not. API keys that are not revoked, live and test together. Webhook endpoints, active or disabled.
API keyRequests a minute.
RequestObjects in one batch.

Content retention is a ceiling, not a count: each project sets its own number of days under it. Data retention and privacy explains how.

When you reach a limit

A request that goes past the plan answers 403 with the code plan_limit. This one named a template on the Free plan:

403 ForbiddenJSON
{
  "error": {
    "code": "plan_limit",
    "message": "Templates are not included in the Free plan. Send the request without `template` to run the basic check, or upgrade to use your own.",
    "details": [{ "field": "template", "message": "not included in plan" }],
    "request_id": "req_4f0c2a9d8e7b46a1b3c5d6e7f8091a2b"
  }
}

details tells a limit that is used up from a thing the plan leaves out:

Casedetails[].fielddetails[].message
A count is used up: one project, key or template too manyThe limit, such as api_keyslimit N, with the plan's number
The plan does not include the thingThe thing, such as template or guidelinesnot included in plan
A template enables an advanced policy the plan lackspoliciesThe policy, then requires advanced policies
A batch holds more objects than the plan takesitemslimit N

In the dashboard the same refusal is a notice titled Plan limit reached or Not included in your plan, with a See plans button.

Running out of checks is a different error, 402 quota_exceeded. Checks and usage covers it.

What a downgrade does

A smaller plan starts at the end of the period you have paid for; Billing has the steps. Limits are checked when you create something, never afterwards, so the move deletes nothing.

  • Projects, members, API keys, templates, guidelines, wordlists and webhook endpoints above the new limits stay and keep working. You cannot add more until you are back under the limit.
  • The new plan's rate limit and batch size apply at once.
  • The current month's checks are not taken back. The smaller allowance starts with the next month.
  • Extra checks you bought remain.
  • Content already stored keeps its own removal date. New content follows the new plan.

Moving to the Free plan

The Free plan runs the basic check only. Your templates, guidelines and wordlists are kept and stay visible in the dashboard, and they stop running:

  • A request that names any template other than basic answers 403 plan_limit, whether or not that template exists.
  • A request that names none runs the basic check. That holds even when the project has a default template, and no error says so.
  • New moderations store no input and no media.

Everything runs again the moment the organisation is on a plan with templates.

Features that come with a plan

  • Templates, guidelines and wordlists: Starter and up.
  • Simulation: Starter and up.
  • Advanced policies: Growth and up. Today that is made_with_ai.
  • Extra-check packs: every plan, Free included.

Advanced policies are checked when a template is saved. A template published while the plan had them keeps running them, and is charged for them, after a move to a plan without.

Organisations on the Free plan

Every new organisation starts on the Free plan, and the Free plan limits how many organisations on it one person can own. Organisations on a paid plan do not count toward that. Organisations and projects describes what you see at the limit.

Limits agreed with the Infrared team

An organisation with its own terms can have limits that differ from the table. Settings, Organisation lists the limits that apply to you under Plan limits.

Next

Something missing or unclear on this page? Write to support@useinfrared.com.