Google News Scraper & Monitor - $1 per 1,000 Articles avatar

Google News Scraper & Monitor - $1 per 1,000 Articles

Pricing

from $0.80 / 1,000 news articles

Go to Apify Store
Google News Scraper & Monitor - $1 per 1,000 Articles

Google News Scraper & Monitor - $1 per 1,000 Articles

Google News Scraper and news monitor: get headlines, publishers, publish dates, snippets and links for any keyword, country and language. Only-new mode returns just unseen articles for alerts. Date, phrase and publisher filters. $1 per 1,000 articles, no API key.

Pricing

from $0.80 / 1,000 news articles

Rating

0.0

(0)

Developer

Group Oject

Group Oject

Maintained by Community

Actor stats

1

Bookmarked

6

Total users

2

Monthly active users

2 days ago

Last modified

Categories

Share

Google News Scraper

Scrape Google News by keyword and get headlines, publishers, publish dates, snippets, and links as clean JSON, CSV, or Excel. Turn on only-new mode to get a news alert feed that bills you only for articles you have not seen yet. $1.00 per 1,000 articles. No Google API key, no login, no browser.

Google News has no public API. This Google News Scraper reads the public Google News search RSS feed for every query you give it, cleans the result into one row per article, removes duplicates across queries, and sorts everything newest-first. Use it as a Google News API for brand monitoring, competitor tracking, PR and crisis alerts, market research, and AI agent or RAG news feeds.

Google News Scraper output in Apify: title, source, publisher domain, published, query, type, snippet

Real output from a default run of Google News Scraper in Apify Console.

What can this Google News Scraper do?

  • Scrape Google News in bulk: run 1 to 1,000 search queries in one run, up to 100 articles per query.
  • Monitor news and get only new articles: only-new mode remembers what it already returned and outputs only unseen articles on the next scheduled run.
  • Filter by date: rolling window (postedWithinDays, for example the last 1 or 7 days) or a fixed dateFrom / dateTo range.
  • Filter by publisher: keep only certain domains (reuters.com, techcrunch.com) or exclude domains you never want.
  • Refine the query: require an exact phrase, exclude keywords, and use Google News operators such as OR and site: inside a query.
  • Localize results: choose the country (geo) and language for any Google News edition, for example US/en, GB/en, DE/de, FR/fr.
  • Optional headline analysis: add sentiment, a sentiment score, and entities extracted from each headline. Rule-based, no external AI API.
  • Use it anywhere: Apify API, Python and JavaScript clients, n8n, Make, Zapier, webhooks, and MCP for AI agents.

What data can I extract from Google News?

FieldExampleDescription
titleAdvisory Group on Mathematics and Artificial Intelligence - OpenAIArticle headline
sourceOpenAIPublisher name
sourceDomainopenai.comPublisher domain, normalized (good for grouping and filtering)
sourceUrlhttps://openai.comPublisher homepage from the feed
publishedAt2026-09-21T17:32:19.000ZPublish time in ISO 8601
snippetAdvisory Group on Mathematics...Short text from the feed
googleNewsUrlhttps://news.google.com/rss/articles/CBMi...Google News link that opens the article
guidCBMi...Stable article ID, use it as a deduplication key
query / appliedQueryartificial intelligence / artificial intelligence when:7dYour query and the exact query sent to Google News
position1Rank of the article in the feed
geo / languageUS / enEdition used
fetchedAt2026-09-27T16:39:03.077ZWhen the row was collected
sentiment, sentimentScore, entitiespositive, numeric score, ["OpenAI"]Only when enableAnalysis is on
isNewtrueOnly in only-new monitoring mode

Each run also saves SUMMARY (counts, top publishers, top queries), HEADLINES_BY_SOURCE (headlines grouped by publisher), and ERRORS (any feed that failed) to the run's key-value store.

How much does it cost to scrape Google News?

You pay per article saved to the dataset. Platform usage is included.

Apify planPrice per 1,000 articles
Free$1.00
Bronze$0.95
Silver$0.90
Gold, Platinum, Diamond$0.80

There is also a tiny start fee of $0.00005 per run per GB of memory.

Examples on the Free plan:

  • One-off research: 20 queries x 50 articles = 1,000 articles = about $1.00.
  • Daily brand monitor in only-new mode: you pay only for new articles. If 3 brand queries surface 40 new articles a day, that is about 1,200 articles a month = about $1.20 a month.
  • Baseline run (monitoringInitialRun: "baseline"): stores the current articles as "seen" and outputs nothing, so it costs only the start fee.

Set a maximum charge per run in the run options and the scraper stops before it goes over it. The Pricing tab always shows the current rates.

How to scrape Google News

  1. Click Try for free and open the input form.
  2. Add one or more Search queries, for example a brand, a competitor, a ticker, or a topic.
  3. Optional: set Published within (days), country, language, and publisher filters.
  4. Optional: turn on Only output new articles and give the monitor a stable Monitor key.
  5. Click Start. Download the results as JSON, CSV, Excel, or HTML, or read them through the API.
  6. For alerts, save the input as a task and add a Schedule (for example every hour or every morning).

Ready-made tasks: Brand News Monitoring, AI Industry News Feed, Competitor Launch Tracker.

Google News Scraper input example showing a one-query, seven-day search and ten-result cap

Input example

{
"queries": ["openai", "anthropic", "google gemini"],
"postedWithinDays": 7,
"excludeKeywords": ["opinion"],
"excludeDomains": ["example-content-farm.com"],
"geo": "US",
"language": "en",
"maxItemsPerQuery": 50,
"dedupe": true
}

All input fields

FieldTypeDefaultWhat it does
queriesstring[]-Search terms. Google News operators (OR, site:, quotes) work.
queriesTextstring-Same, pasted one per line or comma-separated
exactPhrasestring""Phrase every result must contain (quotes added for you)
excludeKeywordsstring[][]Words or phrases to exclude
includeDomainsstring[][]Only keep these publisher domains
excludeDomainsstring[][]Remove these publisher domains
postedWithinDaysinteger-Rolling window, 1 to 365 days
dateFrom / dateTostring-Fixed range, YYYY-MM-DD, inclusive. Use this or postedWithinDays, not both.
geostringUSCountry edition (gl)
languagestringenLanguage (hl), a two-letter code such as en, de, fr
maxItemsPerQueryinteger50Articles per query, 1 to 100
maxQueriesinteger100Maximum queries per run, up to 1,000
dedupebooleantrueRemove the same article returned by several queries
enableAnalysisbooleanfalseAdd headline sentiment, score, and entities
monitoringModebooleanfalseOnly output articles not returned before
monitorKeystringdefaultName of the monitor, one per independent alert
monitoringInitialRunstringemitFirst run: emit current articles, or baseline to store them silently
requestDelayMsinteger500Delay between feed requests
maxConcurrencyinteger3Parallel feed requests, 1 to 10
proxyConfigurationobject-Apify Proxy settings. Recommended for scheduled and large runs.

Output example

{
"query": "artificial intelligence",
"queryType": "search",
"title": "Advisory Group on Mathematics and Artificial Intelligence - OpenAI",
"googleNewsUrl": "https://news.google.com/rss/articles/CBMi...",
"source": "OpenAI",
"sourceUrl": "https://openai.com",
"sourceDomain": "openai.com",
"publishedAt": "2026-09-21T17:32:19.000Z",
"snippet": "Advisory Group on Mathematics and Artificial Intelligence OpenAI",
"guid": "CBMi...",
"position": 1,
"geo": "US",
"language": "en",
"fetchedAt": "2026-09-27T16:39:03.077Z",
"appliedQuery": "artificial intelligence when:7d"
}

This row comes from a real run on September 27, 2026 (long IDs shortened). Watch the 9-second input-to-output walkthrough.

Google News Scraper output example showing article titles, publishers, and dates

Google News monitoring and alerts (only new articles)

Turn the scraper into a Google News alert feed:

{
"queries": ["OpenAI", "Anthropic", "Google Gemini"],
"postedWithinDays": 7,
"monitoringMode": true,
"monitorKey": "ai-competitor-alerts",
"monitoringInitialRun": "baseline"
}
  • The first run stores the current articles (baseline) or outputs them (emit).
  • Every later run with the same monitorKey, queries, and filters outputs only articles it has not returned before, each marked isNew: true.
  • A run with nothing new correctly returns an empty dataset, and you are not charged for articles.
  • The monitor remembers the latest 10,000 article IDs. Use a different monitorKey for each independent alert, and do not run two copies of the same monitor at the same time.

Schedule the task, then send new rows to Slack, email, Google Sheets, or a webhook with an Apify integration, Make, Zapier, or n8n. The scraper produces the data; delivery is handled by the integration you choose.

Use the Google News API from code

HTTP (one call, returns the articles):

curl -X POST "https://api.apify.com/v2/acts/groupoject~google-news-scraper/run-sync-get-dataset-items?timeout=120&maxTotalChargeUsd=0.10" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"queries":["artificial intelligence"],"postedWithinDays":7,"maxItemsPerQuery":10}'

Python:

from apify_client import ApifyClient
client = ApifyClient("<APIFY_TOKEN>")
run = client.actor("groupoject/google-news-scraper").call(run_input={
"queries": ["tesla", "rivian"],
"postedWithinDays": 1,
"maxItemsPerQuery": 50,
})
for article in client.dataset(run["defaultDatasetId"]).iterate_items():
print(article["publishedAt"], article["source"], article["title"])

JavaScript:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('groupoject/google-news-scraper').call({
queries: ['interest rates'],
postedWithinDays: 1,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.map((a) => `${a.source}: ${a.title}`));

No-code: use the Apify app in n8n, Make, or Zapier, or add a webhook to the saved task.

AI agents (MCP): the scraper is available as a tool through the Apify MCP server in Claude, ChatGPT, Cursor, and other MCP clients. Agents get compact JSON rows that are easy to summarize, filter, and cite.

FAQ

The scraper reads the public Google News RSS feed: headlines, publisher names, dates, short snippets, and links. It does not log in, does not bypass paywalls, and does not copy full articles. You are responsible for how you use the data, especially for republishing. If in doubt, ask a lawyer.

How many articles can I get per query?

Google News RSS returns up to about 100 articles per query. To collect more on one topic, split it into narrower queries (for example by company, product, or site:) or into several date ranges with dateFrom / dateTo.

Do I get the publisher's article URL?

You get googleNewsUrl, which opens the article through Google News, plus the publisher's name, homepage (sourceUrl), and domain (sourceDomain). The direct article URL on the publisher's site is not decoded.

Do I get the full article text?

No. You get the headline, snippet, publisher, date, and link. Pair the links with a web content crawler if you need full text.

Do I need a proxy?

Small runs work without one. For scheduled monitors and runs with many queries, enable Apify Proxy in the input to avoid Google rate limits.

Why is my dataset empty?

Check SUMMARY and ERRORS in the run's key-value store. In only-new mode, an empty dataset means nothing new was published. For a snapshot, try a broader query, a longer date window, or remove domain filters.

Can I scrape Google News in other countries and languages?

Yes. Set geo (for example GB, IN, DE, FR, BR, JP) and language (en, de, fr, pt, ja).

Questions or a feature request? Open an issue on the Issues tab.