Chewy Product Reviews Scraper avatar

Chewy Product Reviews Scraper

Pricing

Pay per event

Go to Apify Store
Chewy Product Reviews Scraper

Chewy Product Reviews Scraper

🐾 Export public Chewy customer reviews, full text, rating summaries, star distributions, dates, and helpfulness for product and sentiment monitoring.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Export public Chewy product reviews into clean JSON, CSV, Excel, XML, or RSS without copying review cards by hand.

The actor accepts regular Chewy product URLs and /product-reviews/ URLs. It returns full review text together with product context, ratings, reviewer names, dates, helpful votes, and the complete five-star distribution.

Use it for recurring pet-brand sentiment monitoring, product quality research, competitive analysis, and launch tracking.

  • 🐾 Extract real customer review records from Chewy product pages.
  • ⭐ Keep the aggregate score, counts, and rating distribution beside every review.
  • πŸ“… Filter by date and order newest reviews first for scheduled monitoring.
  • πŸ”Ž Select one or more star ratings to focus on critical or enthusiastic feedback.
  • πŸ”— Send the dataset to Google Sheets, webhooks, cloud storage, or your own API.

What does Chewy Product Reviews Scraper do?

Chewy Product Reviews Scraper turns public customer feedback into analysis-ready records.

For every saved review, it captures the review rating, title, complete body, reviewer name, submission date, helpful vote count, contributor badge, and incentive flag when Chewy exposes them.

The same row also contains the product name, brand, product identifiers, canonical URLs, image, average rating, total rating count, customer-review count, and five-star distribution.

Cursor pagination continues until the requested review limit or the end of the selected review set.

Who is it for?

Pet brands and manufacturers

Track fresh feedback about taste, packaging, ingredients, product consistency, delivery condition, and pet acceptance.

Marketplace sellers and category managers

Compare customer language, rating movement, and recurring complaints across competing pet products.

Product and reputation teams

Schedule a newest-first run and route negative feedback into triage workflows.

Pet-industry researchers

Build structured review corpora for trend, sentiment, and product-positioning studies.

Data teams and agencies

Deliver repeatable Chewy review exports without maintaining a scraper or reverse engineering pagination.

Why use this Chewy reviews scraper?

Manual review collection is slow and loses important product context.

This actor is designed for repeat workflows:

  • βœ… Stable review IDs support deduplication between scheduled runs.
  • βœ… Date and star filters keep monitoring datasets focused.
  • βœ… Full text supports keyword, topic, and sentiment analysis.
  • βœ… Typed numeric fields are ready for charts and BI tools.
  • βœ… Canonical source links preserve traceability.
  • βœ… Failed extraction does not silently become an empty successful run.

What Chewy review data can I extract?

Field groupIncluded data
Review identityreviewId, contentId
Product identityproductId, productPartNumber, productName, productBrand
Product linksproductUrl, productImageUrl, sourceUrl
Rating summaryaverageRating, ratingCount, reviewCount
DistributionCount and percentage for ratings 1 through 5
Review contentrating, title, reviewText
ReviewerreviewerName, contributorBadge
TimingreviewDate, scrapedAt
EngagementhelpfulVotes
DisclosureisIncentivized
Run contextsort

All displayed dataset fields are primitives, so CSV and spreadsheet exports remain easy to use.

How to scrape Chewy product reviews

  1. Open this actor in Apify Console.
  2. Add one or more Chewy product or product-reviews URLs.
  3. Choose a maximum number of reviews.
  4. Select newest or most helpful/relevant ordering.
  5. Optionally add star ratings or an ISO date range.
  6. Click Start.
  7. Open the Dataset tab and export the results.

The prefilled example requests only 10 reviews and is suitable for a quick first run.

Input parameters

ParameterTypeRequiredDefaultPurpose
productUrlsarrayYesExample Chewy URLProduct or product-reviews URLs
maxReviewsintegerNo50Global cap across all products
sortstringNonewestnewest or helpful
ratingsinteger arrayNoAllRatings from 1 to 5
dateFromstringNoβ€”Inclusive ISO lower date bound
dateTostringNoβ€”Inclusive ISO upper date bound

URLs must use the chewy.com domain and include a numeric product ID.

Input example

{
"productUrls": [
{ "url": "https://www.chewy.com/purina-pro-plan-shredded-blend-adult/product-reviews/114029" }
],
"maxReviews": 50,
"sort": "newest",
"ratings": ["1", "2"],
"dateFrom": "2026-01-01"
}

This example collects up to 50 recent one-star and two-star reviews submitted on or after January 1, 2026.

Output example

{
"reviewId": "UmV2aWV3OjE3ODI3NTk4",
"contentId": "UkVWSUVXOjI3ODE4NzAyNA==",
"productId": "114029",
"productPartNumber": "86252",
"productName": "Purina Pro Plan Shredded Blend Adult Small Breed Chicken & Rice Formula Dry Dog Food",
"productBrand": "Purina Pro Plan",
"averageRating": 4.6914,
"ratingCount": 6899,
"reviewCount": 2336,
"rating": 5,
"reviewerName": "stephen",
"reviewDate": "2026-07-20T23:28:39.000Z",
"title": "proplan",
"reviewText": "He has been on this his entire life recommended by the vet when we adopted him",
"helpfulVotes": 0,
"isIncentivized": false,
"sort": "newest",
"sourceUrl": "https://www.chewy.com/purina-pro-plan-shredded-blend-adult/product-reviews/114029"
}

Values change as Chewy customers add reviews and rate products.

Rating and date filters

Leave ratings empty to include every star rating.

Choose one value such as ["1"] for critical feedback, or combine values such as ["4", "5"] for positive-feedback research.

dateFrom and dateTo accept ISO dates or datetimes. Boundaries are inclusive.

Examples:

  • 2026-01-01
  • 2026-01-01T00:00:00Z
  • 2026-06-30T23:59:59Z

Invalid dates and reversed date windows fail clearly instead of returning misleading data.

Sorting and pagination

newest uses Chewy's newest-first review order. It is the best choice for scheduled monitoring and incremental collection.

helpful uses Chewy's most relevant order, which is the closest public ordering to the helpful-review experience on the product page.

The actor follows Chewy's cursor pagination in batches of 10 and deduplicates stable review IDs.

The global maxReviews limit stops output across all supplied products, which keeps run cost and dataset size predictable.

How much does it cost to scrape Chewy reviews?

The actor uses pay-per-event pricing: a small $0.005 start fee plus a tiered fee for each saved review.

The BRONZE per-review rate is $0.000059184. Calculate a run as the $0.005 start fee plus the per-review rate multiplied by the number of saved reviews.

Higher Apify plans receive automatic volume discounts. The current live pricing shown in Apify Console is authoritative.

You are charged for saved review rows, not Chewy pages that contain no qualifying output.

Monitoring workflows

Schedule the actor daily or weekly with sort: "newest" and a recent dateFrom value.

A practical workflow is:

  1. Run the actor for your monitored products.
  2. Deduplicate on reviewId in your destination.
  3. Flag ratings at or below two stars.
  4. Group review text by quality, flavor, packaging, delivery, or service themes.
  5. Send new critical reviews to the responsible team.

Stable IDs and timestamps make incremental pipelines straightforward.

Sentiment and quality analysis

The actor returns raw customer language rather than a generated sentiment label.

That gives your team control over the analysis method. You can:

  • Count recurring phrases.
  • Classify product, shipping, packaging, or service issues.
  • Compare topics by star rating.
  • Measure positive versus critical review volume.
  • Summarize changes after a formulation or packaging update.
  • Build a labeled dataset for an internal model.

Always retain sourceUrl and reviewId for verification.

Export and integrations

Apify datasets export to JSON, CSV, Excel, XML, and RSS.

Useful integration patterns include:

  • Google Sheets: append new review rows for category managers.
  • Slack or Microsoft Teams: alert when a new one-star review appears.
  • Airtable: maintain a tagged product-feedback repository.
  • BigQuery or Snowflake: join Chewy reviews with product and sales data.
  • Make or Zapier: trigger a workflow after a scheduled run finishes.
  • Webhooks: send run completion events to your own service.
  • Amazon S3 or Google Cloud Storage: archive periodic snapshots.

Run from the Apify API with Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/chewy-product-reviews-scraper').call({
productUrls: [{ url: 'https://www.chewy.com/purina-pro-plan-shredded-blend-adult/product-reviews/114029' }],
maxReviews: 20,
sort: 'newest'
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Run from the Apify API with Python

import os
from apify_client import ApifyClient
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/chewy-product-reviews-scraper').call(run_input={
'productUrls': [{'url': 'https://www.chewy.com/purina-pro-plan-shredded-blend-adult/product-reviews/114029'}],
'maxReviews': 20,
'sort': 'newest',
})
for item in client.dataset(run['defaultDatasetId']).iterate_items():
print(item)

Run from the Apify API with cURL

curl -X POST \
"https://api.apify.com/v2/acts/automation-lab~chewy-product-reviews-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"productUrls": [{"url": "https://www.chewy.com/purina-pro-plan-shredded-blend-adult/product-reviews/114029"}],
"maxReviews": 20,
"sort": "newest"
}'

Use the returned run ID to inspect status and retrieve the default dataset.

Use with Apify MCP and AI assistants

Connect the actor to Claude Code:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=automation-lab/chewy-product-reviews-scraper"

For Claude Desktop, Cursor, or VS Code, add an HTTP MCP server:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=automation-lab/chewy-product-reviews-scraper"
}
}
}

Example prompts:

  • β€œCollect the newest 30 reviews for this Chewy product and summarize recurring complaints.”
  • β€œExtract only one-star Chewy reviews since January and group them by quality issue.”
  • β€œCompare rating distributions and recent review themes for these three products.”

Tips for reliable Chewy review extraction

  • πŸ§ͺ Start with 10 reviews while validating a new product URL.
  • πŸ“† Use newest with dateFrom for scheduled monitoring.
  • ⭐ Query selected ratings when the workflow only needs critical or positive feedback.
  • πŸ”’ Raise maxReviews only after confirming expected source volume.
  • πŸ”— Keep canonical Chewy URLs rather than shortened or redirect links.
  • πŸ†” Deduplicate recurring exports by reviewId.
  • πŸ•’ Store scrapedAt separately from the customer’s reviewDate.

Error handling and troubleshooting

The actor validates inputs before extraction and retries bounded transient requests.

It skips an individual invalid or unavailable product in a multi-product batch, then continues with the remaining products.

If every product fails or no rows match the filters, the run fails rather than producing an unexplained empty success.

Why did my run return no reviews?

Check that the URL is a public Chewy product URL with a numeric product ID. Also remove restrictive ratings or date boundaries to confirm the product has qualifying reviews.

Why is the review count larger than my output?

reviewCount reports all customer reviews visible for the product. maxReviews, rating filters, and date filters intentionally limit saved rows.

Why do rating count and review count differ?

Chewy can include rating-only submissions in ratingCount, while reviewCount represents full customer reviews available to the review connection.

Data freshness and limitations

The actor extracts public fields Chewy exposes at run time.

Review counts, average ratings, ordering, and helpfulness can change after a run.

Chewy may rename fields, alter its page, or change review ranking. The actor reports extraction failures clearly so scheduled workflows do not confuse a blocked page with zero reviews.

The actor does not create reviews, access customer accounts, expose private profile data, or infer reviewer identity.

This actor extracts publicly accessible product-review information.

Whether a particular use is lawful depends on your jurisdiction, purpose, volume, contractual obligations, and handling of personal data.

Use reasonable request volumes, follow applicable laws and platform terms, and avoid using reviewer information for harassment, discrimination, or unwanted contact.

You are responsible for deciding whether your use case is compliant.

Frequently asked questions

Can I use regular Chewy product URLs?

Yes. Both product URLs and /product-reviews/ URLs are accepted when they contain the product ID.

Can I scrape several products in one run?

Yes. Add up to 100 URLs. The global maxReviews cap applies across the batch.

Can I export one-star reviews only?

Yes. Set ratings to ["1"].

Can I retrieve reviews from a date window?

Yes. Set dateFrom, dateTo, or both with ISO-formatted values.

Does the output contain full review text?

Yes. reviewText contains the full text returned by Chewy’s public review service.

Does it support pagination?

Yes. The actor follows cursor pagination until it reaches the source end or your review limit.

Can I schedule it?

Yes. Use an Apify schedule and deduplicate downstream by reviewId.

Does it require Chewy login cookies?

No. The actor does not require a Chewy account or user-provided cookies.

Build broader retail and review-monitoring workflows with other automation-lab actors:

Support

For a reproducible issue, include:

  • The public Chewy product URL.
  • The input JSON with secrets removed.
  • The run ID.
  • The expected and observed behavior.
  • Whether the problem affects all products or one product.

This information makes source changes and filter edge cases faster to diagnose.