Credits and pricing
Prepaid credits, per-request prices, subscription discounts and automatic top-ups.
Prepaid, pay as you go
The API runs on prepaid credits. One credit is one US dollar. Every API key on your account draws from the same balance. A search is rejected with 402 insufficient_balance when the balance cannot cover its estimate, and charged its actual cost when it finishes.
Add credits
- Sign in to Sourcely and open API and MCP in the left sidebar.
- In the Credits card, choose Add credits.
- Pick $20, $50, $100 or another whole amount between $20 and $1,000, then pay with a card on Stripe's checkout page.
Credits appear as soon as the payment goes through. Every payment is listed under Payments on the same page. Credits do not expire.
Automatic top-up
So that requests never stop for lack of credits, you can let Sourcely charge a saved card automatically:
- Save a card by ticking "Save this card for auto top-up" when you add credits, or with Auto top-up, then Add card, which charges nothing.
- Choose the rule: when the balance falls below an amount, add a fixed amount of at least $20. The defaults are "below $5, add $20".
- Set a monthly limit. Automatic top-ups stop once that much has been added in a calendar month. The default is $200.
The balance is checked after every request, and one top-up runs at a time. If the card is declined or the bank asks for confirmation, auto top-up turns itself off and the page explains why. Requests then use the remaining balance until you add credits or fix the card.
Price list
The price depends only on the options you send and on what comes back. Citation formats are free.
| Component | List price, USD |
|---|---|
| Quick retrieval, per finished track | 0.005 |
| Deep retrieval, per finished track | 0.150 |
Enrichment none, per returned source | 0 |
Enrichment low, per returned source | 0.002 |
Enrichment medium, per returned source | 0.008 |
Enrichment high, per returned source | 0.035 |
Deep retrieval includes searching widely, the shortlist and the final ranking described in How search works. A document request is one track. Each searched claim is another track.
MCP server
Searches through the hosted MCP server are included with Pro, Ultra and Max and do not use credits. Deep searches there count toward the plan's monthly deep search allowance instead. See Plan and limits.
Subscription discount
Sourcely subscribers pay less for every request. The discount comes from the subscription on the account that owns the key. It applies to estimated_cost, to actual_cost and to the balance check, and usage.discount_percent on every response shows the rate that was applied.
| Subscription | Discount | Quick, 20 sources with analysis | Deep, 15 sources |
|---|---|---|---|
| None | 0% | $0.165 | $0.675 |
| Pro | 15% | $0.140 | $0.574 |
| Ultra | 35% | $0.107 | $0.439 |
| Max | 50% | $0.083 | $0.338 |
A search keeps the discount it was created with, even if the subscription changes while it runs.
Estimate and actual cost
estimated_cost is the most a search can cost. It assumes every page is full: 10 sources per search phrase in quick mode, so 20 for most texts and 30 for texts over 3000 characters, and the full 15-source shortlist in deep mode. Omitted enrichment means medium for quick search and high for deep search.
actual_cost is null until the search finishes. A finished track is charged its retrieval fee plus enrichment for the sources it actually returned, including a track that returns none. Claims that were identified but not searched are free. A failed search costs nothing: it keeps the estimate and sets actual_cost to 0.
Next-page and claim-refetch calls are not priced yet.
Balance check
Creating a search reads the account's balance and discount:
- The key is invalid. The response is 401. No search is created.
- The balance is zero or below
estimated_cost. The response is 402insufficient_balance, anddetailsincludesestimated_costandcredits_remaining. No search is created and nothing is charged. A balance equal to the estimate is accepted. - Otherwise the search runs, and its
actual_costis deducted when it finishes.
The API does not place a hold. Two searches started at the same moment can both pass the check, so the balance can briefly go slightly below zero; the next search is then rejected until you add credits. GET, delete, next page and claim refetch do not run this check, and retrieving a search never costs anything.
Failed searches are not charged, so there is nothing to refund. Credits are not refunded to the card automatically.
Usage fields
See the Usage model. A null actual_cost means the search has not finished. Zero means the finished search was not charged.
Connection loss and retries
A timeout alone does not mean the search failed. When you have a search ID, retrieve that search. Repeating a create request may start and charge a second search, because idempotency keys are not supported yet.
Results expire one hour after completion by default. Expiry never charges again or restarts a search.