Chrome Extension Reviews Scraper avatar

Chrome Extension Reviews Scraper

Pricing

from $5.00 / 1,000 results

Go to Apify Store
Chrome Extension Reviews Scraper

Chrome Extension Reviews Scraper

Extract extension metadata & user reviews from the Chrome Web Store. Scrapes ratings, version, developer info, user count & review text. Supports bulk extension IDs. Residential proxy required. JavaScript rendering via Playwright.

Pricing

from $5.00 / 1,000 results

Rating

0.0

(0)

Developer

Logiover

Logiover

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Extract reviews, ratings, metadata and developer replies from Chrome Web Store extension pages β€” no API key required.

Apify Actor Chrome Web Store Playwright Proxy Required


πŸ” What Is This Actor?

Chrome Extension Reviews Scraper is an Apify Actor that automatically collects structured data from any Chrome Web Store extension page. It scrapes both the extension metadata (ratings, user count, version, category) and the user reviews (text, stars, date, helpful votes, developer replies).

Ideal for:

  • πŸ“Š Extension developers monitoring user feedback and sentiment
  • πŸ•΅οΈ Competitive intelligence β€” analyze what users love or hate about rival extensions
  • πŸ”¬ UX researchers identifying pain points and feature requests from real users
  • πŸ€– AI/ML training data β€” build sentiment or NLP datasets from real product reviews
  • πŸ“ˆ Market analysts tracking adoption trends and satisfaction scores over time

⚑ Features

FeatureDetails
πŸ“¦ Extension metadataName, developer, rating, user count, version, size, category, description, icon
⭐ Star breakdownCounts per star rating (5β˜… / 4β˜… / 3β˜… / 2β˜… / 1β˜…)
πŸ’¬ User reviewsReviewer name, star rating, full review text, date, helpful votes
πŸ—£οΈ Developer repliesCaptures developer response text and reply date
πŸ“„ PaginationAutomatically scrapes all review pages until your limit is reached
πŸ”’ Bulk inputMultiple extension URLs or IDs in a single run
πŸ”½ Sort controlMost Helpful or Most Recent
🌟 Star filterScrape only 1β˜…, 2β˜…, 3β˜…, 4β˜… or 5β˜… reviews
πŸ”’ Proxy supportResidential proxy routing (required β€” see below)

πŸš€ Quick Start

Option 1 β€” Extension URLs

Paste one or more Chrome Web Store URLs into Start URLs:

https://chromewebstore.google.com/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm
https://chromewebstore.google.com/detail/grammarly/kbfnbcaeplbcioakkpcpgfkobkghlhen

Option 2 β€” Extension IDs

Paste the 32-character extension IDs directly into Extension IDs:

cjpalhdlnbpafiamejdnhcphjbkeiagm
kbfnbcaeplbcioakkpcpgfkobkghlhen

Tip: The extension ID is the last segment of the URL after /detail/extension-name/.


πŸŽ›οΈ Input Configuration

ParameterTypeDefaultDescription
startUrlsArrayβ€”Chrome Web Store extension URLs
extensionIdsArrayβ€”Raw extension IDs (32 lowercase chars)
scrapeReviewsBooleantrueWhether to scrape user reviews
maxReviewsInteger100Max reviews per extension. 0 = unlimited
reviewSortByStringhelpfulhelpful or recent
filterByStarsIntegerβ€”Filter to a specific star rating (1–5)
proxyConfigurationObjectRESIDENTIALProxy settings (residential required)

Example Input JSON

{
"startUrls": [
{ "url": "https://chromewebstore.google.com/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm" }
],
"scrapeReviews": true,
"maxReviews": 50,
"reviewSortBy": "recent",
"filterByStars": 1,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

πŸ“¦ Output Format

The dataset contains two record types distinguished by the type field. Both types are stored in the same dataset.

Extension Record (type: "extension")

One record per extension, containing full metadata.

{
"type": "extension",
"extensionId": "cjpalhdlnbpafiamejdnhcphjbkeiagm",
"extensionName": "uBlock Origin",
"extensionUrl": "https://chromewebstore.google.com/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm",
"developer": "Raymond Hill",
"developerUrl": "https://chromewebstore.google.com/publisher/...",
"averageRating": 4.8,
"totalRatings": 52341,
"userCount": "10,000,000+ users",
"version": "1.61.2",
"updatedDate": "January 15, 2025",
"size": "6.95MiB",
"category": "Productivity",
"description": "An efficient blocker. Easy on CPU and memory...",
"iconUrl": "https://lh3.googleusercontent.com/...",
"ratingBreakdown": { "5": 44200, "4": 3100, "3": 1200, "2": 800, "1": 2041 },
"scrapedAt": "2026-03-13T10:00:00.000Z"
}

Review Record (type: "review")

One record per individual user review.

{
"type": "review",
"extensionId": "cjpalhdlnbpafiamejdnhcphjbkeiagm",
"extensionName": "uBlock Origin",
"extensionUrl": "https://chromewebstore.google.com/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm",
"reviewerName": "John D.",
"reviewerUrl": "https://google.com/maps/contrib/...",
"rating": 5,
"reviewText": "Best ad blocker out there. Lightweight, reliable, and completely open source. My browser feels faster with it.",
"reviewDate": "January 10, 2025",
"helpfulCount": 142,
"developerReply": null,
"developerReplyDate": null,
"scrapedAt": "2026-03-13T10:00:00.000Z"
}

Output Fields Reference

FieldTypeDescription
typestring"extension" or "review"
extensionIdstring32-char Chrome extension ID
extensionNamestringExtension display name
extensionUrlstringFull Chrome Web Store URL
developerstringPublisher name
developerUrlstringDeveloper Store profile URL
averageRatingnumberAverage star rating (1.0–5.0)
totalRatingsintegerTotal count of star ratings
userCountstringActive users string, e.g. "10,000,000+ users"
versionstringCurrent version, e.g. "1.61.2"
updatedDatestringLast updated date
sizestringPackage size, e.g. "6.95MiB"
categorystringStore category
descriptionstringFull extension description
iconUrlstringExtension icon URL
ratingBreakdownobject{ "5": N, "4": N, ... }
reviewerNamestring(review) Reviewer display name
reviewerUrlstring(review) Reviewer Google profile URL
ratinginteger(review) Stars given (1–5)
reviewTextstring(review) Full review body
reviewDatestring(review) Date of the review
helpfulCountinteger(review) Helpful vote count
developerReplystring(review) Developer reply text, if any
developerReplyDatestring(review) Date of developer reply
scrapedAtstringISO 8601 scrape timestamp

πŸ”’ Proxy Configuration

Residential proxies are required. Chrome Web Store actively blocks requests from datacenter IP ranges. Without a residential proxy, you will receive 403 errors or empty responses.

Configure via the Proxy Configuration input field:

{
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}

Apify Residential proxies rotate automatically and provide global coverage.


πŸ’‘ Use Cases & Examples

Monitor your own extension's reviews

Track user feedback in real time. Pipe the output into a Google Sheet, Slack notification, or email digest whenever new 1-star reviews appear.

Competitive analysis

Scrape the top 10 extensions in your category. Compare average ratings, review volume, and recurring complaints. Discover gaps your extension can fill.

Sentiment analysis & NLP training

The structured reviewText + rating fields make this dataset ideal for training sentiment classifiers, fine-tuning LLMs, or benchmarking NLP pipelines on real product data.

Extension market research

Aggregate userCount, averageRating, and ratingBreakdown across hundreds of extensions to map the competitive landscape of any niche.


βš™οΈ Technical Notes

Rendering

Chrome Web Store requires full JavaScript execution. This Actor uses Playwright with headless Chromium β€” CheerioCrawler or raw HTTP will not work here.

Selector stability

Google uses obfuscated/generated class names (e.g. nDnNFb, Mqkyhb) that may change without notice. This Actor relies on aria-label attributes, time elements, and semantic HTML which are far more stable across Google UI updates.

If data fields appear empty after a Google update

  1. Run the Actor with a screenshot enabled (add await page.screenshot() temporarily)
  2. Inspect the review container in DevTools
  3. Update the page.evaluate() selector logic in src/main.js
  4. Key stable anchors: [aria-label*="out of 5"], time, [itemprop="description"], a[href*="/category/"]

πŸ“Š Performance & Costs

MetricEstimate
Speed~10–20 records/min (browser overhead)
Memory1024 MB recommended
Cost per result~$0.008

Cost scales with number of reviews. Extension metadata records are cheap; long review lists on popular extensions may take several minutes.


πŸ“ License

Apache 2.0 β€” free to use, modify, and distribute.