X (Twitter) Search Scraper - Posts, Likes, Replies
Pricing
from $5.50 / 1,000 new mention alerts
X (Twitter) Search Scraper - Posts, Likes, Replies
Scrape X (Twitter) search results for any keyword, hashtag or query: post text, URL, author, likes, reposts, replies and date. Export to JSON, CSV or Excel, or call it as an API. No login or X API key needed. For brand research, trend analysis and lead discovery.
Pricing
from $5.50 / 1,000 new mention alerts
Rating
0.0
(0)
Developer
omar khandji
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
2
Monthly active users
2 hours ago
Last modified
Categories
Share
X (Twitter) Keyword Monitor — New Mention Alerts (Vigia)
Monitor X/Twitter for a brand, product or keyword and get only NEW posts since last check, with a mention-velocity spike signal. Charged only on new mentions, never per run. Ideal for social-listening and reputation agents.
Free tier — 10 results free on every run
The first 10 results of every run are free, on every run you ever make — not a one-off trial. Run it on your own subjects and see the real output before you are billed for a single result.
One guard: the free allowance never covers more than half of a run, so a run returning 6 results gets 3 free. That keeps the offer sustainable.
What it does
Watch X/Twitter for a brand or keyword and get only new posts, with a mention spike alert. You get only what changed since your last check — never a full re-dump to diff yourself.
Why Vigia — 5 advantages a raw scraper can't match
- You pay the alert price only for real change. New-mention alerts are billed only for genuinely new mentions since your last check. A quiet run bills just the small source-check fee (the cost of looking) — never the alert price on unchanged data. Raw scrapers bill every row of a full re-scan every run.
- Never billed on a failed source. The source check is charged only when the source actually responded. If it's down, you don't pay for our outage.
- Append-only delta + spike signal. The first monitored run stores a free baseline; later runs deliver only what's new, plus a velocity-spike alert when volume suddenly surges (trend / review-bomb / hiring-surge).
- Hard cost cap you control. Set
maxTotalChargeUsdand the run can never bill above it — predictable spend, no surprise invoice. - Agent-ready output. Clean, normalized rows and a
RUN_SUMMARY.jsonwith ready-to-use signals — chainable from any MCP / A2A agent in one step.
Example input
{"keywords": ["your brand","competitor name"],"monitorEnabled": true,"maxTotalChargeUsd": 1.0}
Set monitorEnabled: true so the first run stores a free baseline and later runs return only new results. Pin a monitorId to keep separate targets from sharing state.
Output
Each row is a normalized change record: record_id, query_id, title, url, author, published_at, score, text. A RUN_SUMMARY.json accompanies every run with the aggregated signal (counts, velocity spikes, trend).
How you're charged
- Mention alert — billed once per new mention since the last check (this is the only charge that scales with change).
- Source check ($0.05) — billed once per monitored target per run, only when the source responded. A failed source is free.
- A quiet run bills only the source check ($0.05), never the alert price. Vigia never scrapes the source itself; it chains a licensed scraper, caps every call, and passes you only the delta.
Part of the Vigia monitoring suite — change-only billing, outage-safe, agent-ready.
Related tools
- Already know the account? Watch it directly instead of searching. → X (Twitter) Profile Scraper
How to use it in 3 steps
- Click Try for free and fill in Search keywords (
keywords). - Optional: adjust the other fields; every one has a description and a sensible default.
- Click Start and download the results as JSON, CSV or Excel, or read them from the API.
Use cases
- Brand research
- Trend analysis
- Lead discovery
Use it from code (API)
Every Apify Actor is an API. Start a run and read the results with one call.
Python
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("om_kh/twitter-x-search-scraper").call(run_input={"keywords": ["your brand", "competitor name"]})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });const run = await client.actor('om_kh/twitter-x-search-scraper').call({"keywords": ["your brand","competitor name"]});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
One HTTP call (cURL) — runs the Actor and returns the dataset in the same response:
curl -X POST "https://api.apify.com/v2/acts/om_kh~twitter-x-search-scraper/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>" \-H "Content-Type: application/json" \-d '{"keywords": ["your brand", "competitor name"]}'
Integrations: n8n, Make, Zapier, Google Sheets
- n8n — the official Apify node, operation Run Actor and get dataset, Actor
om_kh/twitter-x-search-scraper. - Make — Apify › Run an Actor, then Apify › Get Dataset Items.
- Zapier — Apify › Run Actor; map the dataset items into your next step.
- Google Sheets, webhooks, Slack — add an integration from the Integrations tab of this Actor.
- Schedules — run it every hour or day from Schedules in Apify Console.
Use it from an AI agent (MCP)
This Actor runs in Standby and speaks the Model Context Protocol at /mcp,
exposing one tool, x_search_new_posts. Add it to Claude Desktop, Cursor, VS Code or any
MCP client through the Apify MCP server (https://mcp.apify.com), or call the
Actor's Standby URL directly with the same JSON as the run input.
FAQ
Is it legal to scrape X (Twitter)? This Actor collects only publicly available X (Twitter) data and never logs in. You are responsible for how you use it; check X (Twitter)'s terms and your local law (GDPR, CCPA) if you store personal data, and ask a lawyer if unsure.
Do I need an account, cookies or an API key? No. You only need an Apify account to run it.
What data do I get? Matching posts with text, likes, reposts, replies and author. Download it as JSON, CSV, Excel, HTML or XML, or read it from the API.
Am I charged when something fails? No. An input that fails is listed with its reason in the run summary and is never charged.
Can I run it on a schedule? Yes. Create a schedule in Apify Console (hourly, daily, weekly) and connect webhooks, Google Sheets, Slack, n8n, Make or Zapier.
Can I use it from Python, JavaScript or an AI agent?
Yes: see the code samples above, or connect AI agents through MCP with the x_search_new_posts tool.