Semrush API pricing
Semrush API pricing: Semrush API cost, API units and what rank data costs to pull
The short answer
The Semrush API needs the Advanced plan at $549 a month ($455.67 billed annually), and that plan starts with zero API units. Units are a second purchase, sold in 2, 5, 10 and 20 million packages with no published price, and unused units expire at renewal. Reading your tracked rankings costs 100 units per keyword per request.
Every figure here comes from Semrush's own developer documentation, its API help center article and its SEO pricing page, in US dollars.
Check a live Google position with no API key
Google rank checker
Live · checked today
Querying Google results…
Type any keyword and see today's top Google results (up to 10). Add your domain and we highlight where you rank. This is a live check of the positions the full product tracks for you daily.
- You
Track daily and get an alert the day it drops.
The same daily check our API returns on the Agency plan, with no unit meter.
Semrush API cost: the plan that unlocks it, then the units you spend.
Semrush sells its standard API (the SEO API for domain, keyword and backlink reports, plus the Projects API for Position Tracking and Site Audit) as an add-on to its top self-serve SEO plan. The pricing page lists four plans. Only Advanced carries "API data integration" on its card.
Upgrading is only step one. The developer docs say it in plain words: "after upgrading to the SEO Business plan the number of units will still be zero." You then open Subscription info, go to the API Units tab and buy a package. Only after that can you generate a key and make a paid call. The docs and help center still use the old name, Business, for the tier the pricing page now calls Advanced. It is the same plan.
The number nobody can quote you
Semrush publishes the package sizes (2,000,000, 5,000,000, 10,000,000 and 20,000,000 units) but no package prices on any public page we could find. You see the price inside the account after upgrading, or from sales. Any dollar figure per million units on a review site is that site's estimate, so we do not print one.
| Semrush plan | Monthly | Billed annually | Keywords tracked daily | Standard API |
|---|---|---|---|---|
| SEO | $139 | $117.33 | 500 | No |
| Starter | $199 | $165.17 | 500 | No (lists MCP access) |
| Pro+ | $299 | $248.17 | 1,500 | No |
| Advanced | $549 | $455.67 | 5,000 | Yes, units bought separately |
| Enterprise | Quoted | Quoted | Custom | Custom integrations and API |
Read from semrush.com/pricing/seo-ai-search. The Trends API (traffic data) is a separate product with its own Basic and Premium plans and does not use standard units. The Map Rank Tracker API is available to all Semrush users without units. Neither returns organic keyword positions.
Semrush API units: what each report costs per line or per request.
Each endpoint in the Semrush docs carries a price. Most analytics reports charge per line returned, so a report capped at 10 lines costs a tenth of the same report at 100 lines. Historical data (a past month's snapshot) costs five times the current data. Position Tracking charges per keyword returned, at a far higher rate than any analytics line.
The one lever Semrush documents for saving units is the display_limit parameter: ask
for fewer lines and you pay for fewer lines. Requests served from the SEO API that exceed your balance
return partial results rather than failing, which is worth knowing before you point a scheduled job
at it.
Semrush's own worked example
1,000 organic keywords for each of 100 domains costs 1,000,000 units with current data and 5,000,000 with historical data. Pulling both, the job needs 6,000,000 units, more than the 5 million package.
| Report or request | API | Current data | Historical data |
|---|---|---|---|
| Position Tracking: Organic positions | Projects | 100 units per keyword | Date range included |
| Position Tracking: add keywords to a campaign | Projects | 100 units per keyword added | n/a |
| Position Tracking: competitors discovery | Projects | 1,000 units per competitor | n/a |
| Position Tracking: landing pages | Projects | 1,000 units per landing page | n/a |
| Position Tracking: overview, visibility, campaign dates | Projects | 100 units per request | n/a |
| Organic Results (the top results for one keyword) | SEO | 10 units per line | 50 units per line |
| Domain Organic Search Keywords | SEO | 10 units per line | 50 units per line |
| Keyword Overview (one database) | SEO | 10 units per line | 50 units per line |
| Keyword Difficulty | SEO | 50 units per line | n/a |
| Related Keywords | SEO | 40 units per line | n/a |
| Competitors in Organic Search | SEO | 40 units per line | 200 units per line |
| Domain vs. Domain | SEO | 80 units per line | 400 units per line |
| API unit balance check | Standard | Free | n/a |
Prices as listed on each endpoint in developer.semrush.com. Semrush can change unit prices per endpoint, and the report cost of every call you make is shown in the API Queries log under your profile.
Semrush Position Tracking API cost: keywords times 100 units times how often you pull.
This is the part review sites skip. Semrush tracks your keywords daily whatever you do with the API, and the Organic positions report accepts a start and end date. Its response carries a position for every date in that range. The price is 100 units per keyword per request, not per keyword per day. So the cost is set by how often you pull, and a weekly pull that fetches seven days of daily positions costs a seventh of a daily pull that fetches one.
The table below applies that rule to three list sizes, one per Semrush tracking tier, and names the smallest unit package that covers each month. Months are taken as 30 days and weekly pulls as 52 a year. Every row still sits on top of the $549 Advanced plan, because no lower plan can buy units.
| Keywords | Pulled daily | Pulled weekly (7 day range) | Pulled monthly (30 day range) |
|---|---|---|---|
| 500 | 1,500,000 units: 2M package | 216,667 units: 2M package | 50,000 units: 2M package |
| 1,000 | 3,000,000 units: 5M package | 433,333 units: 2M package | 100,000 units: 2M package |
| 1,500 | 4,500,000 units: 5M package | 650,000 units: 2M package | 150,000 units: 2M package |
| 5,000 | 15,000,000 units: 20M package | 2,166,667 units: 5M package | 500,000 units: 2M package |
Worked from the "100 API units per keyword" price on the Organic positions endpoint. Adding the keywords to the campaign through the API costs another 100 units each, once. Competitor discovery and landing page reports cost 1,000 units per row and are not included.
Pull weekly, not daily
If your dashboard only needs to show daily positions, fetch them once a week with a seven day range. You get the same daily history for a seventh of the units, and even 1,500 keywords fits the smallest package.
Daily pulls get expensive fast
A same day alert built on the Semrush API has to pull daily. At 5,000 keywords that is 15 million units a month, the 20 million package, on top of $549. That is the job a tracker with alerts built in is for.
The 2 million floor
Even a monthly pull of 500 keywords, 50,000 units, has to buy the 2 million package, because that is the smallest one Semrush lists. Small jobs pay for capacity they will not use, and it expires at renewal.
Semrush API vs Ahrefs API vs a rank tracker API, priced for keyword positions.
If what you need from an API is your own keyword positions in a dashboard, a warehouse or a client report, three kinds of product compete for the job. They are not equal, and the table says where each one wins.
| Option | Cheapest plan with API | Rank data metered? | Tracking cadence | Where it wins |
|---|---|---|---|---|
| Semrush API | $549/mo Advanced, plus units | Yes, 100 units per keyword per request | Daily, up to 5,000 keywords | Keyword volumes, backlinks, competitor domain data through the same key |
| Ahrefs API | $129/mo Lite (100 rows per request) | No: Rank Tracker endpoints use no units | Weekly on every plan | Backlink and Site Explorer data, lowest entry price for an SEO database API |
| SerpsTracker API | $249/mo Agency ($124.50 billed yearly) | No, flat rate | Daily, 5,000 keywords, unlimited sites | Daily Google positions with stored history, no unit arithmetic |
| Raw SERP API | Pay per search | Yes, per search | Whatever you schedule | Building your own tracker or search product |
Ahrefs figures from ahrefs.com/pricing and docs.ahrefs.com, which state that Rank Tracker, Management and Public endpoints do not consume API units. For per search prices across SERP API vendors, see our SERP API pricing comparison.
When the Semrush API is worth $549 a month, and when it is the wrong bill.
Buy the Semrush API if your product or report needs Semrush's database: search volumes, keyword difficulty, a competitor's organic keywords, backlink counts. Nothing we sell returns that data, and Advanced also gives your team the full Semrush toolkit with 5,000 daily tracked keywords. For an agency already on Advanced, the API is the natural way to feed a warehouse.
Skip it if the only thing you want out of the API is your own rankings. You would be paying $549 a month for a keyword database you do not query, then metering access to rankings you already track. SerpsTracker includes its rank tracking API in the Agency plan: 5,000 keywords checked daily across unlimited sites, positions and history as JSON, same day rank drop alerts by email and Slack, and no unit balance to watch. A year costs the price of six months.
For the plan side of Semrush, including why SEO and Starter track the same 500 keywords, read our Semrush pricing breakdown. For the tracker on its own, see SerpsTracker vs Semrush Position Tracking.
Quick fit check
- Keyword and backlink data in your app: Semrush API or Ahrefs API.
- Rankings in Looker Studio or a warehouse, daily: a flat rate tracker with an API.
- Already on Semrush Advanced: pull weekly with a 7 day range and the 2 million package goes a long way.
- Building your own tracker: compare rank trackers with an API first.
Semrush API pricing questions, answered from Semrush's own docs.
How much does the Semrush API cost?
The Semrush API costs the price of the plan that unlocks it plus the API units you buy on top. Semrush lists that plan, Advanced, at $549 a month or $455.67 a month billed annually. The plan comes with zero units, and units are sold in packages of 2, 5, 10 or 20 million whose prices Semrush does not publish.
Which Semrush plan includes API access?
Advanced, at $549 a month, is the only self-serve plan whose card lists API data integration. The developer docs and help center still call that tier the Business plan, its old name. SEO ($139), Starter ($199) and Pro+ ($299) cannot buy standard API units. Enterprise includes custom integrations and API on a quoted contract.
Is the Semrush API free?
No. Semrush states that every API option needs an eligible paid subscription, and the standard API also needs purchased units. Two narrow exceptions exist: the Map Rank Tracker API and the Listing Management API do not use units. The balance check request is free too. Everything that returns SEO or Position Tracking data consumes units.
What is an API unit in Semrush?
An API unit is Semrush's billing currency for data pulled through the API. Each report has a published price in units, charged per line returned or per request. Domain Organic Search Keywords costs 10 units a line for current data and 50 for historical data. Position Tracking positions cost 100 units per keyword returned.
How many API units do I need for Semrush?
Multiply keywords by 100 units by the number of pulls a month for rank data. 1,000 keywords pulled daily is about 3,000,000 units a month, so the 5 million package. Pulled once a week with a seven day date range it is about 433,000 units, which fits the smallest 2 million package with room to spare.
Do Semrush API units roll over?
No. The Semrush help center says purchased units renew on the same day as your plan and that unused units expire instead of being added to the renewed amount. Size the package to your real monthly pull, not to a peak month, because anything left at renewal is lost. You can buy more units mid cycle if you run out.
What happens when you run out of Semrush API units?
It depends on the endpoint. The SEO API and the Position Tracking API return ERROR 132, and the Projects API and Local API return a 403. For SEO API reports priced per line, Semrush returns only as many lines as your balance covers, so a scheduled job can silently receive a partial report. Check the balance before large pulls.
Can I use the Semrush API on the Pro or Guru plan?
Those plan names are retired. The current ladder is SEO, Starter, Pro+ and Advanced, and only Advanced lists API data integration. Older guides saying the API needs the Business plan describe the same tier under its previous name. If you are on any plan below Advanced, standard API access means upgrading to $549 a month first.
Does the Semrush Position Tracking API update daily?
The tracking itself is daily on every Semrush plan. The API is how you read it, and one Organic positions request can cover a date range, returning a position for every date in it. You are billed 100 units per keyword per request, so reading a week of daily positions in one weekly call costs a seventh of reading it every day.
Is there a cheaper alternative to the Semrush API for rank tracking?
For rank data only, yes. SerpsTracker includes its API in the Agency plan at $249 a month with 5,000 keywords checked daily and no unit meter. Ahrefs lists API access from Lite at $129 and says Rank Tracker endpoints use no units, but its tracking is weekly. For backlink and keyword database data, the Semrush API has no like for like substitute here.
Start today
Your rankings through an API, with no unit meter.
5,000 keywords checked daily across unlimited sites, positions and history as JSON, drop alerts by email and Slack. API included on Agency at $249 a month.