Google News Scraper tracks public Google News results by keyword, country, language, and recency, then exports article metadata to Apify datasets.
Use it for media monitoring, PR tracking, topic research, competitor mentions, and lightweight news alerts without building your own RSS parser.
At a glance
- Extracts: article title, publisher, source URL when available, Google News URL, publication date, snippet text, GUID, locale, result position, and scrape time.
- Inputs: one or more Google News queries, country, language, optional CEID, recency filter, result limit, and deduplication toggle.
- Best for: brand monitoring, market coverage checks, topical alerts, research feeds, and scheduled media snapshots.
- Exports: Apify dataset rows that can be downloaded as CSV, JSON, Excel, or used from the API.
- Login: no Google account, cookies, or API key are required.
What can it do?
- Export Google News results: Save article titles, publishers, snippets, dates, URLs, thumbnails, and query context.
- Monitor mentions: Track brands, people, products, industries, or competitors by keyword.
- Control locale and recency: Use country, language, CEID, and date-range filters for localized news monitoring.
- Deduplicate coverage: Avoid repeated rows when several queries find the same article.
- Use as a Google News API workflow: Run from API, schedules, webhooks, or MCP-compatible agents and export CSV/Excel/JSON.
Common workflows
- Monitor brand and executive mentions: run a set of exact-match queries daily and export new article rows to a dashboard.
- Track issue coverage: combine topic terms with
when:7d,after:YYYY-MM-DD, or quoted phrases to watch a specific news cycle. - Compare markets: run the same query across different country and language settings.
- Build a lightweight alert feed: schedule the Actor and use Apify integrations or webhooks to send fresh rows to your stack.
Example input
{
"queries": ["Apify", "\"artificial intelligence startup\""],
"dateRange": "when:7d",
"country": "US",
"language": "en-US",
"maxItemsPerQuery": 10,
"dedupe": true
}
Example output
{
"query": "Apify",
"title": "Example article title",
"googleNewsUrl": "https://news.google.com/rss/articles/example",
"sourceUrl": "https://example.com/news/article",
"sourceName": "Example News",
"publishedAt": "2026-07-03T08:00:00.000Z",
"descriptionText": "Short article snippet from Google News.",
"language": "en-US",
"country": "US",
"position": 1,
"scrapedAt": "2026-07-03T09:00:00.000Z"
}
Tips for best results
- Use precise queries: quoted names, product names, and
ORgroups usually work better than very broad terms. - Keep recency explicit: use
dateRangeor includewhen:7d,after:YYYY-MM-DD, orbefore:YYYY-MM-DDin a query. - Localize intentionally: country and language affect which Google News edition is queried.
- Deduplicate across query sets: keep
dedupeenabled when overlapping terms may return the same article.
Limits and caveats
- Google News result pages change: counts and ordering can shift between runs.
- No full article extraction: this Actor saves Google News RSS metadata and snippets, not full article text behind publisher pages.
- Some source URLs can be absent: Google News may provide only its own result URL for some items.
- RSS availability varies by locale: very narrow terms can return fewer rows than requested.
API usage
Run from the Apify API or SDK with the same JSON keys shown above.
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/google-news-scraper').call({
queries: ['Apify'],
dateRange: 'when:7d',
country: 'US',
language: 'en-US',
maxItemsPerQuery: 10
});
console.log(run.defaultDatasetId);
MCP and AI agents
For AI agents, use the official Apify MCP server. The focused single-Actor URL is:
https://mcp.apify.com?tools=fetch_cat/google-news-scraper
The default MCP server can search and run Actors. The focused URL exposes this Actor directly to clients that support tool-scoped MCP connections.
Support
If a run fails, returns no data, or a field looks wrong, open an issue from the Actor page.
Please include the Apify run ID or run URL, input JSON, one example public URL, query, or input item, what you expected, and what the dataset returned. Small reproducible inputs make parsing or site-layout issues much faster to fix.