Credits
How the ReddGrow credit system works
ReddGrow uses a credit system to meter API usage. Every request consumes a number of credits based on how much work the server performs. Credits reset at the start of each monthly billing period.
Credit costs
Reddit reads are priced per Reddit page fetched, not per call. The cost scales with the limit you ask for, up to a cap of 8 pages per read.
| Read | Credits per page | Items per page | Default (limit 25) |
|---|---|---|---|
Job status (GET /v1/reddit/jobs/{id}) | 0 | 0 | |
Account info (GET /agent/me) | 1 | 1 | |
Subreddit posts (/subreddits/{name}/posts) | 2 | Single fetch, always 1 page (limit trims the first page, about 25 posts) | 2 |
Post comments (/posts/{subreddit}/{id}/comments) | 2 | Single fetch, always 1 page | 2 |
Subreddit comments (/subreddits/{name}/comments) | 2 | 25 | 2 |
User posts (/users/{username}/posts) | 1 | About 20 | 2 (2 pages) |
User comments (/users/{username}/comments) | 2 | 25 | 2 |
Post search (/posts/search) | 1 | 7 | 4 (4 pages) |
Domain mentions (/domains/{domain}/mentions) | 5 | 25 | 5 |
Examples: a search with limit=7 reserves 1 credit, limit=25 reserves 4, and limit=100 reserves 8 (the page cap). Domain mentions with limit=60 reserves 15 (3 pages x 5). A subreddit feed costs 2 credits whatever the limit.
limit defaults to 25, with a minimum of 1 and a maximum of 100. An invalid value falls back to 25.
How billing works
Reddit read endpoints are asynchronous. They return 202 Accepted with a jobId, and you poll GET /v1/reddit/jobs/{id} (free) for the result. See AI Agent Integration for the full flow.
- When you create a job, ReddGrow reserves the credits for the pages your
limitcan need. This is an upper bound. - When the job finishes, the scraper refunds the pages it did not need. The final charge is returned on the finished job as
creditsCharged. You are never charged more than the reservation. - If a job fails on ReddGrow's side (status
503, scraper unavailable), the full reservation is refunded andcreditsChargedis0. - If Reddit itself answers
403,404or429, you pay for the pages fetched (at least 1 page) and the rest is refunded.
Credit accounting is exact under concurrency, so parallel requests cannot overshoot your monthly pool or your overage spending cap, and usage is recorded per request.
The X-Credits-Used and X-Credits-Remaining headers on the 202 show the reservation. The job's creditsCharged is the final amount.
Response headers
Every API response includes three credit headers:
| Header | Description |
|---|---|
X-Credits-Used | Credits reserved by this specific request (the final charge is creditsCharged on the finished job) |
X-Credits-Remaining | Credits left in the current billing period |
X-Credits-Limit | Total credits available on your plan |
Example headers from a search request with the default limit (4 pages reserved):
X-Credits-Used: 4
X-Credits-Remaining: 486
X-Credits-Limit: 1000You can use these headers in your agent or application to implement backoff logic before the limit is reached.
Plan tiers
| Plan | Credits per month | Best for |
|---|---|---|
| Free | 50 | Evaluation and prototyping |
| Starter | 1,000 | Small projects and personal agents |
| Growth | 5,000 | Production agents with moderate traffic |
| Pro | 15,000 | High-volume applications |
| Enterprise | 100,000 | Large-scale or multi-tenant deployments |
Upgrade or change your plan at any time from Settings > Billing. Credit limits update immediately on upgrade.
Tips to reduce credit usage
Cache responses. Subreddit feeds and post data change infrequently. Cache results for 5–15 minutes to avoid redundant calls for the same data.
Lower limit to what you need. Cost scales with pages, so a search with limit=7 costs 1 credit while the default costs 4. Reading a post's comments or a subreddit feed is a flat 2 credits whatever the limit.
Paginate carefully. Fetching a large number of pages in a tight loop burns credits quickly. Fetch only as many pages as your use case requires and store results locally.
Poll for free. GET /v1/reddit/jobs/{id} costs 0 credits, so poll as often as you like.
Check headers before retrying. If X-Credits-Remaining is low, add logic to pause or degrade gracefully rather than exhausting the limit mid-run.