Best Grok scraper APIs for 2027: answers and X post sources
Grok answers draw on the open web and on X, so one answer can cite a review site and three posts. To collect those answers as JSON for 2027 you can buy a scraper that sends prompts to the Grok app, call xAI’s API with its search tools, or run your own collector. Grok is the hardest of the major assistants to buy for: of the five vendors whose pages describe a Grok product, one documents a working scraper for new prompts, and none states that its Grok product works today.
Vendor facts come from each vendor’s own pages, linked and checked on 2026-10-26; “not documented” means not found on those pages on that date. This is a buyer’s guide for 2027 budgets with facts as of October 2026; re-check status and prices before you commit.
Comparison
| Option | Other engines | Sources / citations | X posts | Searches Grok ran | Geo | Pricing (checked 2026-10-26) |
|---|---|---|---|---|---|---|
| Bright Data Grok Scraper | ChatGPT, Perplexity, Gemini, Copilot, Google AI Mode | Citations, attached links (prose only) | Not documented | Not documented | Not documented for Grok | Unavailable per its docs; list price $1.50/1K records, 5K free a month |
Scrapeless scraper.grok |
ChatGPT, Perplexity, Copilot, Gemini, Google AI Mode, AI Overview | web_search_results, footnotes |
x_search_results |
tool_usages with tool_args |
country (required) |
No per-request price on its pricing page |
| ScrapingBee Grok Scraper API | ChatGPT, Gemini | “Can be parsed” from a shared chat | Not documented | Not documented | country_code |
5 to 75 credits per request; Hobby $19/month for 75,000 credits |
Nimble grok_mirror_prod_data |
ChatGPT, Gemini, Google AI Mode | sources (may be empty), links |
Not documented | Not documented | Not documented | $1 per 1,000 pages; 5,000-page trial |
| AnswerLine | ChatGPT, Gemini, Perplexity, Copilot, Google AI Mode, Google Search, Google News | sources[] with position |
In sources[], with creator |
searchQueries[] |
country, any country |
$0.00218 per request on every tier; 100 free requests (pricing) |
| xAI API, web and X search | Not applicable | Citations for your call | x_search tool |
Tool usage counts | Not documented | $5/1K web search calls; $5/1K X posts, $10/1K X profiles; plus tokens (pricing) |
| Build it yourself | Whatever you build | Whatever you parse | Whatever you parse | Only if you capture it | Your own infrastructure | Engineering time plus infrastructure |
Terms used below:
- Grok app answer: what a person gets at grok.com for a prompt, with the pages and posts it cites.
- X post source: a cited post,
https://x.com/{handle}/status/{id}, which you attribute to an account rather than a domain. - Searches Grok ran: the web and X queries Grok sends before it answers. They explain why a page or post was cited.
What to measure first
The fields you need follow from the metric:
- Mention rate: the answer names your brand. Any option with answer text works.
- Citation share by domain: needs a sources list in display order.
- Post and author share: which X accounts the answer draws on. Needs post URLs, and ideally the handle as a field.
- Retrieval: which searches led to a citation. Needs the queries Grok ran.
- Market variation: needs country targeting.
On Grok the first question comes before all five: does the vendor’s Grok product work this month?
The options
Bright Data Grok Scraper
Bright Data still sells a Grok Scraper on its product page, with no outage notice there. Its AI scrapers docs mark Grok “Currently unavailable”, and its release notes say Grok was “unavailable again as of June 14, 2026, due to a renewed blocking issue on Grok’s side”, after a May outage and a return on June 11. No later note restoring it was found on 2026-10-26.
The product page describes the Grok output in prose: prompt, answer text, answer HTML, citations, attached links, country and answer URL. The docs name web_search as the only Grok input. The product page lists $1.50 per 1K records pay as you go, with 5K records free a month and a Scale plan at $499 a month for 384,000 records, and charge only for successful deliveries; delivery is by API, webhook or cloud storage.
Fits teams already on Bright Data, once its docs show Grok as available again.
Scrapeless Grok scraper
Scrapeless documents a Grok scraper called with POST https://api.scrapeless.com/api/v2/scraper/execute and actor scraper.grok. Inputs are prompt, a required country, a required mode (MODEL_MODE_FAST, MODEL_MODE_EXPERT or MODEL_MODE_AUTO; the product page also lists MODEL_MODE_GROK_4_1_THINKING), an optional should_fetch_share_link and a webhook.url.
The response has full_response, web_search_results (title, URL, preview), x_search_results (post ID, user name, text, view count, create time), footnotes, follow_up_suggestions, tool_usages with each tool’s name and arguments, user_model, conversation metadata and share_url. The searches Grok ran are readable from tool_usages[].tool_args rather than a queries field.
Its pricing page lists Regular and Enterprise tiers paid from a prepaid balance at a “CU-based rate (CPM)”, with no Grok price per request, and says it charges “only for successful data”. Ask for the Grok rate in writing.
Its separate post and web arrays, with post view counts, are the most detailed Grok schema of the vendors checked. The mode input means your dataset depends on which mode you pick; keep it fixed in one series.
Fits teams that want raw tool usage and post metadata and can get a quoted price.
ScrapingBee Grok Scraper API
ScrapingBee’s Grok Scraper API covers “Grok Shared Chat Surfaces”: you pass a grok.com URL of a chat someone has shared, and it does not send new prompts. Parameters are its general scraping options, render_js, premium_proxy, stealth_proxy, country_code, extract_rules and ai_extract_rules. The page names no response fields; it says prompt text, response text, citations and conversation structure “can be parsed”.
A Grok request costs 5 credits with JavaScript rendering, 25 with premium_proxy and 75 with stealth_proxy. New accounts get 1,000 free credits; Hobby is $19 a month for 75,000 credits (pricing).
Fits archiving known shared chats. For a prompt set you track, it does not apply.
Nimble Grok agent
Nimble documents a Grok agent, grok_mirror_prod_data, in a blog post; no Grok docs page was found. The post calls it with nimble.agent.run(agent=..., params={"prompt": ...}) and lists answer, answer_html, links, images and sources, noting sources may be empty. Geo input is not documented. The post prices “Web Search Agents” at $1 per 1,000 pages, with a 5,000-page free trial.
Its $1 per 1,000 pages is the lowest list price here. Confirm with Nimble that the agent is current, which countries it runs in, and how often sources comes back empty, since an empty sources list rules out citation share.
Fits a low-cost pilot of Grok answer text.
AnswerLine
POST /v1/monitor/grok takes a prompt and a required country, any country. A US state is refused with a 400 and not billed.
curl -X POST https://api.answerline.dev/v1/monitor/grok \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Which robot vacuums do owners recommend for pet hair?",
"country": "US",
"include": { "markdown": true }
}'
Under result, per the API reference:
text, andmarkdownwhen requested. Citation chips are removed from both.sources[]: web pages first, then X posts, each withpositionandurl. A page addslabel,descriptionandpreview; a post addslabel(the author’s display name),preview(the post text) andcreator(the handle).searchQueries[]: the searches Grok ran on the web and on X.relatedQueries[]: the follow-ups Grok suggests.model: the nullable model identifier, to segment runs when the served model changes.
There is no citationPills field on Grok; count citations from sources. include.html links the answer’s public page on grok.com, and include.rawResponse returns the answer as normalized stream events.
A Grok request costs $0.00218 on every tier, whatever you include. A new account’s 100 free requests work on Grok, and failed requests are not charged (credits).
The request shape is shared with the ChatGPT, Gemini, Perplexity, Copilot, AI Mode, Google Search and Google News endpoints, and async batches take up to 500 tasks with webhooks and idempotency keys. It has no post view counts and no mode choice; Grok answers in its default search mode.
Fits brand and reputation teams that track which posts and authors Grok cites, next to other assistants.
xAI’s API with web and X search
xAI’s Responses API offers a web_search tool with allowed_domains or excluded_domains (up to 5) and an x_search tool with allowed_x_handles or excluded_x_handles, from_date and to_date. Per the tools overview, “The API automatically returns source URLs for information gathered via tools”; usage reports x_search_calls, x_posts_fetched and x_users_fetched.
Pricing checked 2026-10-26: web search $5 per 1,000 calls; X search $5 per 1,000 posts and $10 per 1,000 profiles, where every returned post counts, parent and quoted posts included; tokens on top.
You choose the model, the instructions and which domains and handles are searched, so the answer shows your configuration. xAI’s docs do not say the API reproduces the grok.com answer. Use it to build on Grok; use a scraper to measure what grok.com tells people. The provider APIs comparison makes the same distinction for other engines.
Building it yourself
The Bright Data release notes show the risk: Grok blocked its collection twice between May and June 2026. A home-grown collector needs per-market collection, a parser for answers, pages and posts, and someone on call when Grok changes. Build vs buy itemizes the work.
How to choose
- Check that it works. Read the vendor’s status or release notes, then run 20 of your prompts before signing.
- New prompts or shared chats. Tracking needs new prompts; ScrapingBee’s page covers shared chats only.
- Post attribution. If X matters to your brand, require the post URL and handle per source.
- Retrieval. If you need the searches Grok ran, check for a queries field or tool usage in the schema.
- Markets. Country targeting is documented by Scrapeless and AnswerLine only.
- A published price. Budgeting for 2027 needs a per-request rate in writing.
- Failure billing. Bright Data, Scrapeless and AnswerLine state success-only charges; with a blocked engine, that decides what an outage costs you.
Cost example
100 prompts, two countries, daily for 30 days: 6,000 Grok answers a month. List prices checked 2026-10-26, before taxes and discounts. Recurring monthly free allowances are netted; one-time trials (Nimble’s 5,000 pages, AnswerLine’s 100 free requests) are not:
| Option | Billing | Monthly cost for 6,000 answers | Effective $ per 1K answers |
|---|---|---|---|
| Bright Data, pay as you go | 5K records free a month, then $1.50 per 1K | $1.50, while Grok is unavailable: none collected | $0.25 |
| Nimble | $1 per 1,000 pages | $6.00 | $1.00 |
| AnswerLine | $0.00218 per request from a prepaid balance | $13.08 | $2.18 |
| xAI API, one web search per prompt (not the app answer) | $5 per 1K calls, plus tokens and X search | $30.00 plus tokens | $5.00 before tokens |
| Scrapeless | Prepaid balance at a CU-based rate | Not published | Not published |
| ScrapingBee | 5 to 75 credits per shared chat | Not applicable: no new prompts | Not applicable |
Bright Data’s $1.50 buys no Grok answers while its docs mark Grok unavailable. Count a missed week of data, and a second vendor as backup, when you compare totals. AI monitoring cost planning covers budgeting across engines.
An hourly Grok reputation job on AnswerLine
Posts move Grok’s sources within hours, so reputation work samples per hour. An idempotency key with the hour stops a retried scheduler from submitting twice:
import os, datetime, requests
API = "https://api.answerline.dev"
HEADERS = {"Authorization": f"Bearer {os.environ['API_KEY']}"}
hour = datetime.datetime.now(datetime.timezone.utc).strftime("%Y-%m-%dT%H")
prompts = ["Is Example Vac good for pet hair?", "Example Vac vs Sample Bot: which do owners prefer?"]
tasks = [
{
"taskType": "GROK",
"payload": {"prompt": p, "country": c},
"idempotencyKey": f"vac-{i}-{c}-{hour}",
"webhook": {"url": "https://example.com/hooks/grok"},
}
for i, p in enumerate(prompts)
for c in ("US", "GB")
]
r = requests.post(f"{API}/v1/async/task/batch", json=tasks, headers=HEADERS, timeout=30)
r.raise_for_status()
print(r.json()["summary"])
In the webhook handler, split the sources of a COMPLETED task into posts and pages:
def split_sources(result):
sources = result.get("sources", [])
posts = [(s["position"], s.get("creator"), s["url"]) for s in sources if s.get("creator")]
pages = [(s["position"], s["url"]) for s in sources if not s.get("creator")]
return posts, pages
Store the authors from posts per hour; a new account among the cited handles is often the first sign of a story. Verify webhook signatures before trusting the body.
Pitfalls that skew Grok data
- Counting X posts by domain. Every post is
x.com; attribute posts by handle, or X swamps your domain share. - Comparing hours. Post sources change within hours, so compare runs from the same window and sample several times per window; see AI answer volatility.
- Ignoring the model. Grok’s served model changes; store
modelwith each run and segment on it. - Mixing modes or vendors. A fast-mode answer and a default answer, or an API answer and an app answer, are different series.
- Treating a vendor outage as absence. A blocked run is missing data, not a run where your brand was absent.
Mentions and citations are measured differently; see mentions vs citations. The Grok engine page lists every field, and monitoring Grok walks through a first integration.
Questions
Which Grok scraper APIs work in October 2026?
Of the vendor pages checked on 2026-10-26, Scrapeless documents a Grok scraper that takes new prompts. Bright Data's own docs mark its Grok scraper unavailable since June 14, 2026, ScrapingBee's Grok page reads public shared chats only, and Nimble documents its Grok agent in a blog post. AnswerLine returns Grok answers for new prompts from any country.
Does xAI's API return the answer grok.com shows?
xAI's docs do not say so. Its Responses API runs the model you pick with web_search and x_search tools you configure, and returns citations for your call. Pricing checked 2026-10-26: $5 per 1,000 web search calls, $5 per 1,000 X posts and $10 per 1,000 X profiles, plus tokens.
Can a Grok scraper tell X posts from web pages?
Scrapeless returns separate web_search_results and x_search_results arrays. AnswerLine returns one sources[] list, web pages first, where an X post carries creator, the author's handle.
What does a Grok answer cost on AnswerLine?
$0.00218 per request on every tier, whatever include flags you send. A new account gets 100 free requests, and failed requests are not charged.
Can I target a country or US state for Grok answers?
Scrapeless takes a required country. AnswerLine takes any country; a US state is refused with a 400. Bright Data's Grok docs name no geo input, and Nimble's blog post documents none.