Semrush Sensor Winners & Losers Scraper
Pricing
from $0.20 / 1,000 results
Semrush Sensor Winners & Losers Scraper
Track Semrush Sensor domains with ranking changes, keyword counts, and new or lost terms. Batch categories and choose a database for daily monitoring.
Track the domains with the largest Semrush Sensor movements by database and category. Review ranking change totals alongside tracked keyword counts and recent movement history.
What data can you extract?
| Field | Type | Description |
|---|---|---|
domain | String | Website hostname with a notable Sensor movement. |
diff | Integer | Net keyword ranking movement reported for this domain. |
keywords | Integer | Number of tracked keywords in the Sensor report. |
new_keywords | Integer | Tracked keywords newly appearing for the domain. |
lost_keywords | Integer | Tracked keywords no longer appearing for the domain. |
date | String | Report date returned for the selected Sensor market. |
category | Integer | Sensor category identifier associated with the movement list. |
diffs | Array<Object> | Recent numeric movement history with date markers and change values. |
input_category | Integer | Semrush Sensor category selected for this movement list. |
scraped_at | String | UTC date and time when this record was collected. |
Use cases
- SEO teams can spot domains with sharp visibility changes.
- Site owners can compare new and lost keyword counts by category.
- Analysts can monitor daily movement across desktop and mobile databases.
How to use
- Choose a Semrush database such as
USand add category IDs tocategories. - Leave
dateempty to use the current report date or provide a specific date. - Set
maxResultsto cap the number of domain movers saved.
{"categories": [{"category": 1}],"db": "US","maxResults": 20}
Input
| Field | Type | Required | Description |
|---|---|---|---|
categories | Array<object> | Yes | Semrush Sensor category IDs to check for ranking movers. |
categories[].category | integer | Yes per entry | Category sent to the source search. Allowed values: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25. |
categories[].db | string | No | Database sent to the source search. |
categories[].date | string | No | Date sent to the source search. When omitted, the report date defaults to two days ago, the most recent day Semrush Sensor has fully published. |
db | string | Yes | Database sent to the source search. |
date | string | No | Date sent to the source search. When omitted, the report date defaults to two days ago, the most recent day Semrush Sensor has fully published. |
maxResults | integer | No | Maximum dataset items to save across this entire run. |
Output example
{"domain": "papertrail.io","diff": 37,"keywords": 18420,"new_keywords": 146,"lost_keywords": 109,"date": "2025-09-01","category": 1,"diffs": [{"date": 1756684800,"diff": 12},{"date": 1756771200,"diff": 18},{"date": 1756857600,"diff": 24}],"input_category": 1,"scraped_at": "2026-10-01T12:00:00Z"}
Pricing
$0.30 per 1,000 results. Apify saves one dataset item per result and applies the Actor’s per-result price to saved items.
Set maxResults to cap the number of dataset items saved in one run.
FAQ
Is scraping this information legal?
Rules depend on the source, location, data type, and intended use. Check applicable laws and source terms, and make sure your workflow follows privacy and data protection requirements.
What limits apply?
Submit up to 100 batch entries per run. Use maxResults to cap saved items. Results also depend on source availability and your Scrappa API plan.
Can I start runs through the Apify API?
Yes. Send a POST request to https://api.apify.com/v2/acts/thescrappa~semrush-sensor-movers-scraper/runs with your Actor input, or use an Apify client library. Read the output from the run dataset.
Can I connect the results to other tools?
Yes. Apify integrations and APIs can pass dataset results to Make, Zapier, n8n, Google Sheets, and other data workflows.
What happens when one input fails?
The Actor logs a short source error and continues with the remaining entries. Transient rate limits and gateway errors are retried; if every entry fails, the run reports an error.
Which date is used by default?
When you leave date empty, the Actor uses today’s date for the Sensor report.