News & Brand Monitoring Scraper avatar

News & Brand Monitoring Scraper

Pricing

from $0.20 / 1,000 article founds

Go to Apify Store
News & Brand Monitoring Scraper

News & Brand Monitoring Scraper

Monitor any brand, competitor or topic across Google News in any country. Headline, outlet, timestamp and coverage-breadth stats per query - plus optional resolution of Google's redirect links into the publisher's own URL, which most scrapers cannot do. No API key.

Pricing

from $0.20 / 1,000 article founds

Rating

0.0

(0)

Developer

Eimantas V

Eimantas V

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 days ago

Last modified

Share

Track any brand, competitor or topic across Google News — in any country, with the coverage stats that tell you whether something is a story or just a beat reporter.

"tesla" 100 articles 51 outlets 15.5/day Electrek:12, Not a Tesla App:11, Yahoo Finance:8
"openai" 100 articles 43 outlets 14.5/day OpenAI:15, TechCrunch:10, Bloomberg:6
"rivian" 100 articles 47 outlets 14.6/day Yahoo Finance:12, eletric-vehicles:10
[Reuters] Pressured by Tesla, European regulators keep 'Full Self-Driving' safety review open
[Forbes] Tesla Headlights Are Illegally Bright, Recall Says

300 articles across three queries in 1.2 seconds. No API key, no login, no browser.


Google News hands out redirect addresses — news.google.com/rss/articles/CBMi… — which open fine in a browser and are useless to anything else. Most scrapers pass them straight through.

Older ones could be base64-decoded; these cannot, and following the link doesn't help because Google does the redirect in the browser. This Actor uses the same call the page itself makes, and turns them into real links:

insideevs.com https://insideevs.com/reviews/798129/rivian-r2-first-drive-review/
motortrend.com https://www.motortrend.com/reviews/2027-rivian-r2-real-world-range-test/
edmunds.com https://www.edmunds.com/car-news/2027-rivian-r2-performance-launch-package/

It costs two extra requests and about 600 KB per article, so it's off by default and billed separately. Turn it on when you need to fetch, archive or attribute the articles; leave it off when the headline and outlet are enough.


Outlets, not article counts

distinctPublishers is the number that tells you whether something is happening. Ten pieces from one outlet is a beat reporter; ten outlets carrying it is a story. Every summary row also carries topPublishers with counts, and articlesPerDay measured across the span the articles actually cover — not the window you asked for, so a 30-day search that returned one busy day reports that day's intensity rather than a thirtieth of it.


What you get

Per articletitle (outlet suffix removed), publisher, publishedAt, ageHours, position, googleNewsUrl, and with resolution on articleUrl + publisherDomain + resolutionStatus.

Per queryarticlesFound, distinctPublishers, topPublishers, articlesPerDay, oldest and newest article, resolution counts, duplicates.


Who this is for

  • PR and comms — who covered us this week, how widely, and how fast it spread.
  • Competitive intelligence — one run, one query per rival, weekly.
  • Investors and analysts — coverage volume and breadth per ticker or company.
  • Content teamssite: a competitor's domain to see everything they publish, which is exactly what a bare site: query is good for.

Input

{
"queries": ["\"acme corp\"", "\"acme corp\" OR acmecorp -recall"],
"country": "US",
"timeWindow": "7d",
"resolveArticleUrls": false
}

Google News search syntax works: quote a phrase, combine with OR, exclude with -, restrict with site:reuters.com.

OptionDefaultNotes
countryUSEach edition carries different outlets
languagefollows countryDE→de, JP→ja, BR→pt
timeWindow7d1h, 24h, 7d, 30d, 1y, any
resolveArticleUrlsfalseReal publisher links; see below
maxResolvedPerQuery25Caps the expensive part
maxArticlesPerQuery100Google's own ceiling
deduplicateAcrossQueriestrueSame story under two queries counts once

Five things worth knowing

Each was found by running against live data.

Google's links are not the publisher's links, and they cannot be decoded. The modern ids decode to an opaque AU_yqL… blob, and following the URL returns HTTP 200 still on news.google.com because the redirect happens client-side. Resolution works by reading the signature and timestamp from the article page and calling the endpoint that page calls — 12 of 12 resolved in testing. The tokens sit 99.7% of the way into a 590 KB page, a Range header is ignored, and the search listing carries no signatures to amortise against, so it genuinely costs one full page per article. That is why it is opt-in, capped per query, and charged only when it succeeds.

site: does not intersect with your keyword — quote it. site:reuters.com tesla reads like "Reuters articles about Tesla" and returns Reuters' recent output instead. Measured across 100 results each: tesla alone put the word in 104 of 104 headlines, site:reuters.com tesla in 15 of 100, and site:reuters.com "tesla" in 71 of 100. Word order makes no difference and AND does not help. Quote the keyword. The Actor warns when it sees an unquoted one rather than rewriting your query, because narrowing a search on your behalf is not its business.

A feed stops at about 100 articles. That is Google's limit, not a setting. Queries that come back full are flagged truncated, and the way past it is a narrower window or a narrower query — "acme" when:24h run daily beats "acme" when:30d run monthly.

The outlet is appended to every headline, and cutting at the last dash mangles real ones. Tesla Q3 - what it means - Reuters and Rolls-Royce lands deal - BBC both contain dashes that belong. The <source> tag says exactly what to remove, so the suffix comes off only when it matches the outlet.

Only Google's own time windows work. Anything else goes into the query as words, so last week would be searched for rather than applied, and the run would quietly return articles containing that phrase. Unrecognised values are rejected with a warning and fall back to 7 days.


Output

{
"recordType": "article",
"query": "\"rivian\"",
"title": "Rivian R2 First Drive Review",
"publisher": "InsideEVs",
"publishedAt": "2026-08-12T18:46:00.000Z",
"ageHours": 6.5,
"position": 1,
"googleNewsUrl": "https://news.google.com/rss/articles/CBMi...",
"articleUrl": "https://insideevs.com/reviews/798129/rivian-r2-first-drive-review/",
"publisherDomain": "insideevs.com",
"resolutionStatus": "RESOLVED"
}

Three ready-made views: Articles, Coverage summary and Resolved links. Set flattenOutput: true for CSV.


Honest limits

  • No article body, author or sentiment. This reads Google's index, not the articles. Pair it with a content scraper on the resolved URLs if you need the text.
  • No share counts or reach figures. distinctPublishers is breadth of coverage, not audience size, and this Actor will not invent an audience number.
  • Google decides what is in the index, including which outlets and how far back. Two runs minutes apart can differ.
  • articleUrl is null unless resolution ran and succeeded — never a guess. resolutionStatus says which of RESOLVED, NOT_REQUESTED, NO_TOKENS or FAILED applies, and every article always keeps a working googleNewsUrl.
  • Failed queries, duplicate articles and failed resolutions are never charged.

Pricing

EventPriceWhen
Actor start$0.005Once per run
Query monitored$0.004Per query, including the coverage summary
Article found$0.0002Per article
Publisher URL resolved$0.0015Only when resolution succeeds

$0.20 per 1,000 articles without resolution. A daily 10-query watch costs about $0.25 a run. Mention and Brand24 start at $99–149 a month.


Tips

  • Run 24h daily rather than 7d weekly. You stay under the 100-article ceiling and get the same coverage with timestamps you can trend.
  • Diff on googleNewsUrl between runs to get only what is new since yesterday.
  • Watch distinctPublishers, not articlesFound. A jump in outlets is a story breaking; a jump in articles from the same outlet is not.
  • Add a -yourbrand exclusion to a competitor query to strip out the comparison pieces you already know about.
  • Resolve only the top 10. position reflects what Google considers the lead story, so the first handful are usually the ones worth reading in full.