Skip to content

Billing & Credits

The Developer Platform bills in credits: only tasks that successfully return an answer are charged. Failed tasks, canceled tasks, and rejected requests cost nothing.

  • You pay per successful task. Each succeeded task is charged once; failed and canceled tasks are free.
  • Prices depend on platform and tier. Each platform has a P1 Priority price and a P2 Standard price; tasks submitted without priority are billed as P2.
  • The price is locked at submission. A task is billed at the price in effect when it was submitted; later price changes don’t affect tasks already submitted.
  • Country targeting and thinking mode cost nothing extra.
  • Reads are free. List Platforms, Retrieve a Task, and List Tasks don’t consume credits.
  • One balance per account. All API keys, MCP calls, and the console Playground in the same account share a single credit balance. The Playground always bills at the P1 price.
  • 1,000 free credits on first use. The first time you use the Developer Platform — by opening the Developer Console or calling any endpoint with an API key — 1,000 credits are added to your personal account automatically. They never expire, and you don’t need to create a key or submit a task first. Each account gets them once; using them up or replacing or deleting keys doesn’t grant them again.
  • Top-ups: contact sales for more credits.

The free credits count toward your credit balance, shown on the console’s Overview and Usage pages.

Two ways:

  • Call List Platforms: p1_credits and p2_credits on each platform are the credits charged per successful call for each tier.
  • Open the Pricing page in the Developer Console for a price table by platform.

Prices follow each platform’s crawling cost and vary significantly between platforms. In code, use the API response rather than hardcoding them.

Credits are reserved at submission and settled when the task reaches a final status. The task object’s credits field reflects this:

Task status credits value Effect on your balance
queued, dispatching, pending, running The price at submission (reserved) Reserved, so your available balance goes down by that amount
succeeded The price at submission Charged
failed, canceled 0 The reserved credits are released

Available balance = valid credit balance − credits reserved by in-progress tasks. If your available balance is lower than the price of a submission, the request returns 1023 right away — no task is created, and your balance never goes into overdraft.

Your current balance and credits on hold (reserved) are shown on the console’s Usage page. Until billing is enabled, List Platforms returns an empty list and submitting a task returns 1022.

  • Per task: the task object’s credits is what the task was charged (succeeded) or has reserved (in progress). The tier it actually ran on is raw_result.priority.
  • By key, platform, and day: the console Usage page breaks down credits and requests by day, by platform, and by source (each API key / the Playground), with days split on Beijing time (UTC+8). The API Keys page shows each key’s spend this month.
  • On your own: page through List Tasks by time range and sum credits over tasks whose status is succeeded. Note that List Tasks only returns tasks submitted with the current key.

Estimated cost = number of questions × the sum of the per-platform prices you send each question to (only successful tasks are charged).

For example: 50 questions a day, each sent to ChatGPT, Perplexity, and Gemini on P2. Assuming P2 prices of 10, 10, and 8 credits respectively (check the API for actual prices), that’s at most 50 × (10 + 10 + 8) = 1,400 credits a day, with failed tasks not counted.

Common ways to keep costs down:

  • Use P2 for batch and scheduled work.
  • Compare the value of each platform’s answers on a small set of questions first, then send to only the platforms you actually need.
  • Avoid submitting the same question twice (see Avoiding duplicate submissions).