Credits and billing

1 credit unlocks 1 store: a row in an app's list, or a store's full app stack; counts are free, re-pulls within 7 days are free, and you pay only for stores found.

View as MarkdownOpenAPI specAll docs for LLMs

What costs what

Request Credits
GET /v1/apps/{slug}/companies 1 per store in the page
GET /v1/companies/{domain} 1 per store found; include=history adds 1
GET /v1/events 1 per distinct store in the page
POST /v1/webhooks 10 per change delivered; creating, listing and testing are free (Webhooks)
GET /v1/apps/{slug}/companies/count Free
GET /v1/apps, GET /v1/industries, GET /v1/usage, GET /v1/pricing Free

GET /v1/pricing returns this table as JSON, with no key.

Rules

  1. Charged only for stores found. An empty page or an error costs nothing.
  2. Re-pulls are free for 7 days. The same store for the same kind of request (a row from the same app's list, a lookup, or history) is free again within 7 days; meta.freeRepulls counts them. Scans are weekly, so a re-pull inside that window returns the same data.
  3. Counts are free and unlimited, so narrow a query before you pay for rows.
  4. Store lookups that miss (404) are free up to 2 × your lookups that found a store in the last 30 days + 100, then cost 1 credit each.
  5. A page the balance cannot fully cover is cut to the rows you can pay for; pagination.nextCursor resumes after the last one.
  6. Credits expire after 12 months. Each credit expires 12 months after it was added, and the oldest are spent first. They are non-refundable and not transferable.

Seeing what you spent

Every response carries:

Header Body Meaning
X-Credits-Charged meta.creditsUsed Credits this request cost
X-Credits-Remaining meta.creditsRemaining Balance afterwards (null for unlimited keys)
meta.freeRepulls Stores served free as re-pulls

GET /v1/usage shows the balance and the last 30 days by endpoint.

Packs

Credits Price $ per 1,000 stores Pack id (API)
500 $50 $100 starter
2,500 $150 $60 growth
10,000 $400 $40 pro
40,000 $1,000 $25 scale

A company email gets up to 50 free credits: 25 at sign-up, 25 when the email is verified (once per company domain). Webmail gets none. Buy on your account page (Stripe Checkout). Auto top-up, off by default, rebuys a chosen pack on the saved card when the balance runs low. Full detail: Pricing.

Limits

Per account per rolling 30 days: 40,000 distinct stores (402 usage_cap_reached) and $1,000 of purchases (402 spend_cap_reached). For more, talk to us.

Running out

A billed request the balance cannot cover answers 402 insufficient_credits and charges nothing. The error carries offers, so a script or agent can act on it:

{
  "error": {
    "code": "insufficient_credits",
    "message": "Not enough credits for this request (balance 0). Buy a credit pack, or turn on auto top-up.",
    "requestId": "6f1c2a9e-4b7d-4e2a-9c51-0d3b8e7f2a14",
    "balance": 0,
    "offers": {
      "pack": { "id": "starter", "name": "Starter", "priceUsd": 50, "credits": 500, "buyUrl": "https://installgraph.com/account?buy=starter" },
      "talkToUs": { "url": "https://installgraph.com/talk-to-us", "for": "More than $1,000 or 40,000 stores in 30 days, the full dataset, or a changes feed." },
      "pricing": "https://installgraph.com/pricing"
    }
  }
}

Either send a person to offers.pack.buyUrl, or, if the account owner has turned on agent purchases, buy with POST /v1/billing/purchase.