SEO Competitor Analyzer — Semrush Alternative
Pricing
from $10.00 / 1,000 seo records
SEO Competitor Analyzer — Semrush Alternative
Analyze SEO competitors from domains or seed keywords. Export organic keywords, competing domains, volume, CPC, difficulty, ranking URLs, and backlink context for repeatable competitive-research reports.
Pricing
from $10.00 / 1,000 seo records
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
2 days ago
Last modified
Categories
Share
Analyze SEO competitors from domains or seed keywords. Export organic keywords, competing domains, volume, CPC, difficulty, ranking URLs, and backlink context for repeatable competitive-research reports. For competitive-research teams, the dataset returns the selected domain overview or detailed keyword, competitor, and backlink records.
Workflow: put the results to work
Use the domain overview to establish the competitor's search footprint, then explore competing domains or organic keywords. Turn the selected rows into a focused competitive report and retain market settings for comparison. Review modeled metrics alongside the ranking evidence.
SEMRush Alternative — Keywords & Backlinks
This Apify Actor helps SEO teams, analysts, and AI agents turn a domain or seed keywords into Semrush-style SEO reports. It accepts a domain or URL for domain overview, organic keywords, competitors, and backlinks, plus keyword lists for keyword overview and keyword ideas. One dataset record represents one domain, keyword, competitor, or backlink row. Valuable fields include organicTraffic, organicKeywordCount, searchVolume, rank, backlinks, referringDomains, rankScore, anchor, and sourceUrl. The outcome is a structured dataset that is easy to review, export, or pass to an Apify MCP workflow.
Best fit and connected workflows
This Actor fits workflows where the next step needs structured SEO intelligence rather than raw page HTML.
- Use
domain_overviewfor a quick domain snapshot with organic traffic, keyword count, and backlink summary. - Use
organic_keywordsto review the keywords a domain ranks for, along with volume, CPC, difficulty, intent, and rank. - Use
competitorsto surface overlapping domains for market mapping. - Use
keyword_overviewto score seed phrases. - Use
keyword_ideasto expand seeds into a broader list. - Use
backlinksto review referring URLs, anchors, and dofollow signals.
How this workflow compares with Semrush
| Decision | This Actor | Semrush | Suitable fit |
|---|---|---|---|
| Scope | Six bounded domain, keyword, competitor, and backlink report modes | A broader SEO product experience with its own interface and product workflows | Use this Actor for focused, programmable reports; use Semrush when the broader product experience is central to the work |
| Starting point | A domain, URL, or seed-keyword list supplied for one selected mode | Inputs and projects managed inside the Semrush product | Use this Actor when the starting information already exists in an automated workflow |
| Output | Structured Apify dataset rows plus OUTPUT and RUN_SUMMARY | Output presented through Semrush's own product surfaces | Use this Actor when dataset export, API readback, or Actor chaining is required |
| Billing | Pay per event plus Apify platform usage, with current terms on the live Pricing tab | Semrush's own current commercial terms | Compare the current plans against the exact report volume and operating workflow |
| Integrations | Apify API, dataset exports, schedules, webhooks, and Apify MCP | Semrush's broader native product workflows | Choose according to the downstream system that needs the result |
This Actor is a focused automation route for the documented reports rather than a representation of Semrush's complete product suite.
Input fields
| Field | Type | Purpose |
|---|---|---|
mode | string | Selects the report type. Supported values: domain_overview, organic_keywords, competitors, keyword_overview, keyword_ideas, backlinks. |
target | string | Domain or URL to analyze for domain-based and backlink modes. Example: ahrefs.com. |
keywords | array of strings | Seed phrases for keyword_overview and keyword_ideas. Example: ["seo tools"]. |
locationName | string | Country for keyword and domain Labs reports. Default: United States. |
languageCode | string | Language code matching the country, such as en, de, or es. Default: en. |
maxResults | integer | Maximum rows to write, from 1 to 100. Default: 5. |
includeSubdomains | boolean | Includes subdomain data in organic keyword and backlink summary output. Default: true. |
excludeTopDomains | boolean | Filters large generic domains from competitor results. Default: true. |
Valid input example
{"mode": "organic_keywords","target": "ahrefs.com","locationName": "United States","languageCode": "en","maxResults": 5,"includeSubdomains": true}
Output fields
One dataset item represents one row for the selected report type.
| Field | Meaning |
|---|---|
mode | Report type that produced the row. |
target | Normalized domain or page analyzed. |
keyword | Keyword associated with the row, when present. |
domain | Domain associated with the row, when present. |
locationName | Country used for the report. |
languageCode | Language used for the report. |
searchVolume | Estimated search volume for a keyword row. |
cpcUsd | CPC value in USD for a keyword row. |
keywordDifficulty | Difficulty score for a keyword row. |
searchIntent | Search intent label for a keyword row. |
rank | Position or rank for the row. |
rankingUrl | URL associated with the ranking keyword row. |
estimatedTraffic | Estimated traffic for a keyword row. |
organicKeywordCount | Organic keyword count for a domain row. |
organicTraffic | Organic traffic estimate for a domain row. |
backlinks | Backlink count for a domain or backlink summary row. |
referringDomains | Referring domain count for a domain or backlink summary row. |
rankScore | SEO rank score included in the report. |
sourceUrl | Source URL for backlink rows. |
targetUrl | Target URL for backlink rows. |
anchor | Anchor text for backlink rows. |
dofollow | Dofollow signal for backlink rows. |
source | Provenance label for the row. |
fetchedAt | Fetch timestamp. |
status | Row status. |
Illustrative dataset record
{"mode": "domain_overview","target": "ahrefs.com","domain": "ahrefs.com","locationName": "United States","languageCode": "en","organicTraffic": 45000,"organicKeywordCount": 1200,"backlinks": 9000,"referringDomains": 1200,"rankScore": 450,"source": "semrush_alternative/domain_overview","fetchedAt": "2026-08-21T18:00:00.000Z","status": "OK"}
How it works
This Actor uses owner-managed DataForSEO credentials configured in Apify secrets. The selected mode determines the upstream SEO task. Domain modes normalize the target to a hostname, while backlink mode keeps page-level URLs when present. Keyword modes read from the keywords array. Rows are written to the default dataset, and execution metadata is stored in the default key-value store as OUTPUT and RUN_SUMMARY.
Use with AI agents (MCP)
This Actor is available as an Apify Actor usable through Apify MCP. The precise tool behavior is to generate Semrush-style SEO rows for a chosen mode and persist them to the Apify dataset for downstream reading.
Actor identity: khadinakbar/semrush-alternative
Use
khadinakbar/semrush-alternativeindomain_overviewmode forahrefs.comin the United States. Return the dataset rows and summarizeorganicTraffic,organicKeywordCount,backlinks,referringDomains,rankScore,source, andfetchedAt. Read theOUTPUTrecord for outcome and items pushed, then checkRUN_SUMMARYfor event counts and provider cost.
When interpreting results, treat each dataset row as one SEO record from the selected mode. source and fetchedAt provide provenance and freshness context. Pagination is controlled by maxResults, and keyword modes cap the returned rows accordingly. For cost planning, consider both event counts and Apify platform usage, then review the live Pricing tab before running larger batches.
Apify API example
import { ApifyClient } from 'apify-client';const client = new ApifyClient({token: process.env.APIFY_TOKEN,});const run = await client.actor('khadinakbar/semrush-alternative').call({mode: 'organic_keywords',target: 'ahrefs.com',locationName: 'United States',languageCode: 'en',maxResults: 5,});const dataset = await client.dataset(run.defaultDatasetId).listItems();console.log(dataset.items);const output = await client.keyValueStore(run.defaultKeyValueStoreId).getRecord('OUTPUT');console.log(output.value);
Best results and outcome guidance
Use a valid hostname such as ahrefs.com when you need a domain report. Choose keywords for keyword overview or keyword ideas, and keep target for domain and backlink modes. Start with a small maxResults value when you want to inspect the row shape, then increase it for larger exports. includeSubdomains is useful when subdomain coverage matters in keyword and backlink summaries. excludeTopDomains helps competitor research stay closer to market rivals.
Design note
I found that the dataset contract exposes a single shared schema across modes, with rows that may populate different field groups such as keyword metrics, domain metrics, or backlink details. That makes the mode value especially important for interpreting which fields are meaningful in each record.
FAQ
Which mode should I use for a domain snapshot?
Use domain_overview. It returns one domain row with organic traffic estimate, organic keyword count, backlinks, and referring domains.
Which mode works for keyword research from seed phrases?
Use keyword_overview for scoring seed phrases and keyword_ideas for expansion. Both use the keywords input array.
Which mode is the right fit for competitor discovery?
Use competitors. The excludeTopDomains input helps keep the list focused on closer market rivals.
Which mode returns referring URLs and anchors?
Use backlinks. That mode is built around sourceUrl, targetUrl, anchor, dofollow, and related backlink fields.
Can I use this Actor through Apify MCP?
Yes. The Actor is MCP-ready and designed for Apify MCP workflows that read the dataset and the key-value store records after a run.
Responsible use
Semrush is a trademark of its owner. This independent Actor is not affiliated with, associated with, or endorsed by Semrush.
Use this Actor for public SEO research and internal analysis that you are authorized to perform. Review the returned metrics in the context of your own compliance and data-governance process.
Pricing and run costs
This Actor uses Pay per event plus Apify platform usage. The Pricing tab lists the current event rates and billing terms.
| Event | Billing unit | When it applies |
|---|---|---|
apify-actor-start | Actor Start | Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event). |
seo-api-request | SEO API request | Charged once for each successful upstream SEO API task used to build the report. |
seo-record | SEO record | Charged once for each validated domain, keyword, competitor, or backlink row persisted to the dataset. |
Run cost combines the charged events and Apify platform usage. Review the run charge limit and requested result count before starting.
Connect an AI agent
Use the Apify MCP configurator to choose an available client connection. Inspect this Actor’s current input schema and required credentials before running it.