How to Turn Google News into an RSS Feed

Google News has no simple button for a keyword news feed you can pull into your own tools. If you want to monitor topics, competitors, or brand mentions, you are left with manual checks or paid media monitoring subscriptions. The NanoScrape Google News Scraper on Apify gives you a direct replacement: you give it a list of keywords, it pulls the Google News results for each one, and you get back a structured dataset with titles, sources, publication dates, and article URLs. Schedule it to run daily and you have a keyword news feed at $0.001 per article, with no monthly subscription.

Apify dataset table showing Google News articles returned by the Google News Scraper with columns for title, source, publication date, and URL
The dataset output (a run with 5 results): one row per article with title, source, publisher URL, publication date, and the Google News article link.
Difficulty: Beginner
Time: 8 minutes
Cost: $0.001 per article; free tier covers first $5/month (~5,000 articles)
Tools: Apify, NanoScrape Google News Scraper
Open the Google News Scraper on Apify See pricing details

In this tutorial

  1. What you get
  2. Prerequisites
  3. Step 1: Create a free Apify account
  4. Step 2: Open the Google News Scraper
  5. Step 3: Enter your keywords
  6. Step 4: Run and export the results
  7. Step 5: Schedule a daily news feed
  8. Advanced: multi-language and brand monitoring
  9. Connect to AI agents via MCP
  10. Key input and output fields
  11. What it costs
  12. FAQ

What you get

The NanoScrape Google News Scraper runs on Apify and queries the Google News RSS feed on your behalf. For each keyword you give it, it returns every article Google News surfaces: the cleaned article title, the publisher name, the publisher domain, the publication date in RFC 2822 format, and the Google News link to the article. Results are deduplicated across queries, so if the same article appears for two of your keywords you get one row.

One run gives you a snapshot. Schedule the actor to run daily or hourly and you have a rolling news feed for any set of topics, brands, or competitors.

Prerequisites

STEP 1

Create a free Apify account

  1. Open the actor page on Apify and click Try for free.
  2. Sign up with Google or email. The form takes about a minute.
  3. You land on the actor input form. The $5 free credit is added automatically.
Already have an account? Click the actor link above and you land directly on the input form.
STEP 2

Open the Google News Scraper

After signing in you are on the actor page. The Information tab shows the pricing, all input parameters, and example output. The Input tab is where you enter your keyword list.

Apify Console showing the NanoScrape Google News Scraper Info tab with the price in the header and the list of output fields
The actor's Information tab: the price per article in the header, the output field list, and MCP usage.
STEP 3

Enter your keywords

Click Input in the left sidebar. Add one keyword per line in the Search Queries field. Each keyword runs as a separate Google News search and its results are merged into a single deduplicated dataset.

{
  "searchQueries": [
    "your brand name",
    "competitor brand name",
    "industry topic you track"
  ],
  "language": "en",
  "country": "US",
  "maxResults": 100,
  "maxResultsPerQuery": 50
}

Key input settings:

Apify Console Google News Scraper input form with one search query, language en, country US and result limits of 50
The Input form with one example keyword ("artificial intelligence"). Add as many keywords as you like; each one is searched separately.
Start with 3 to 5 keywords for your first test. A run with 5 keywords at 50 articles each costs at most $0.251 ($0.001 start plus 250 articles at $0.001), and less if Google returns fewer articles.
STEP 4

Run and export the results

  1. Click Start at the bottom of the Input tab.
  2. The run opens automatically. The Log tab shows progress as articles are collected.
  3. When the status bar shows SUCCEEDED, click Dataset in the left sidebar.
  4. The table shows one row per article. To download, click Export and choose JSON, CSV, or XLSX.
Apify run log for the Google News Scraper showing articles being collected with status SUCCEEDED
The run log: the actor fetches the Google News RSS search feed for each keyword and pushes the articles to the dataset.

Each row in the dataset is one article. To process the results programmatically, download as JSON and filter by date to show only articles from the last 24 hours:

const articles = require('./dataset.json');
const yesterday = new Date(Date.now() - 86400000);

const recent = articles.filter(a => {
  const pub = new Date(a.published_at);
  return pub >= yesterday;
});

for (const a of recent) {
  console.log(`[${a.source}] ${a.title}`);
  console.log(`  ${a.url}`);
}
The url field is a Google News redirect link, not the publisher URL directly. To reach the publisher page you need to follow the redirect. The source_url field gives you the publisher root domain (e.g. https://www.reuters.com) when you want the site without the specific article path.
STEP 5

Schedule a daily news feed

A one-off run gives you today's articles. To keep the feed current, schedule the actor to run on a regular cadence:

  1. In Apify Console, open the Google News Scraper actor and click Schedules in the left sidebar.
  2. Click New schedule. Give it a name such as "Daily news feed".
  3. Set the cron expression. For daily at 7 AM UTC: 0 7 * * *. For every 6 hours: 0 */6 * * *.
  4. In the Input field, paste your keyword list as JSON (the same input from Step 3).
  5. Click Save. Each scheduled run creates its own dataset with a timestamp in the run metadata.

To fetch the latest dataset via the API after each scheduled run:

# Get the most recent run's dataset
curl -s "https://api.apify.com/v2/acts/santamaria-automations~google-news-scraper/runs/last/dataset/items?token=YOUR_TOKEN&limit=50" \
  | jq '.[] | {title, source, published_at, url}'
For a daily news digest covering 10 topics, you pull roughly 50 to 500 articles per day. At $0.001 per article that is $0.05 to $0.50 per day, well within the free tier's $5 monthly credit.

Advanced: multi-language and brand monitoring

The actor supports two patterns that are especially useful for more targeted news monitoring.

Multi-language monitoring

To track the same topic across multiple countries or languages, run the actor once per locale with the appropriate language and country parameters. Google News has separate regional editions, so German news about a topic surfaces under language: "de", country: "DE" while the same topic in the UK surfaces under language: "en", country: "GB":

{
  "searchQueries": ["your brand name"],
  "language": "de",
  "country": "DE",
  "maxResults": 50
}

Brand mention monitoring

To monitor press coverage for a brand or product, add the exact brand name as a keyword. You can include common misspellings or alternate names as additional queries. Because results are deduplicated by article URL, an article that mentions both your brand and a competitor only appears once in the dataset:

{
  "searchQueries": [
    "YourBrandName",
    "Your Brand Name product launch",
    "CompetitorName vs YourBrandName"
  ],
  "language": "en",
  "country": "US",
  "maxResults": 200,
  "maxResultsPerQuery": 100
}

Connect to AI agents via MCP

The actor works as a Model Context Protocol (MCP) tool. Paste this server URL into any MCP-compatible client (Claude Desktop, Claude.ai, Cursor, VS Code):

https://mcp.apify.com?tools=santamaria-automations/google-news-scraper

Once connected, your AI agent can pull news on demand from natural language prompts:

Find the 20 most recent news articles about "open source AI" from Google News and summarize the top themes.

Clients that support dynamic tool discovery receive the full input schema automatically, so the model fills in all fields without manual parameter setup.

Key input and output fields

Input fields

Output fields per row

What it costs

The actor charges per article returned, plus a small flat start fee per run.

The Apify free tier gives $5 of monthly credit. At $0.001 per article that covers 5,000 articles at no cost. For a daily news feed covering 10 topics at 50 articles each, you pull about 500 articles per day (15,000/month), which costs about $15/month at full scale. Most users stay well within the free tier in testing.

Tracking 10 topics daily with 50 articles per topic runs about $0.50/day or $15/month. Tracking 3 topics daily is under $5/month, within the free tier.

FAQ

Does Google News still have RSS feeds?

Google News offers no simple "subscribe" button for a keyword feed. The actor reads the Google News RSS search endpoint on your behalf for any keyword you specify and returns the articles as a structured dataset.

How many articles can I get per keyword?

Google News RSS returns up to approximately 100 articles per search query. Set maxResultsPerQuery: 100 to pull the maximum. The number varies by keyword; niche topics return fewer.

How recent are the articles?

The date range depends on how much coverage Google News has for the keyword. Each row carries a published_at timestamp, so you can filter to the last 24 hours in your own code (see the snippet in Step 4).

Can I get the full article text?

No, not directly. The scraper returns the title, source, and URL from the Google News RSS feed. To get the full article text, you would need to follow the URL and scrape the publisher page. That is out of scope for this actor, which focuses on the news index layer.

Can I filter results by source or date?

The actor returns all results Google News includes for your query. Post-processing in your own code is the easiest way to filter by source or date. Export the dataset as JSON and filter the source or published_at fields. Google also supports advanced search syntax in the query string, for example "brand name" site:reuters.com to restrict to a single publisher.

Can I monitor news in languages other than English?

Yes. Set the language parameter to any ISO 639-1 code (e.g. de for German, fr for French, es for Spanish) and the country parameter to the matching ISO 3166-1 alpha-2 code. Google News has distinct regional editions, so combining both parameters gives the most accurate regional results.

Can I run it via the API or automate with n8n?

Yes. Use Apify's REST API endpoint POST /v2/acts/santamaria-automations~google-news-scraper/runs or the JavaScript/Python SDKs to trigger runs programmatically. For n8n, use the Apify n8n node with the actor ID santamaria-automations/google-news-scraper.

Related resources

Open the Google News Scraper on Apify Browse all actors