Home / Blog / Amazon Reviews Summary API: Average Rating and Count from One Lookup

Amazon Reviews Summary API: Average Rating and Count from One Lookup

Pull a product's average rating, lifetime review count and Amazon's own short summary text from the same lookup call you already make - and tell a real zero-review product apart from a response that simply failed to parse.

October 16, 2026
2 min read
SellerMagnet Team
Share & Bookmark
Code editor with a product lookup call and the JSON review snapshot it returns, the null-vs-zero field highlighted

To get an Amazon product's review summary via API, call /api/amazon-product-lookup with the ASIN and marketplace: productInfo.reviews carries averageRating, totalReviews and Amazon's own reviewSummary text, for the same one credit a lookup already costs. A missing rating is null, not zero, so check totalReviews before trusting a star figure.

Key Takeaways

  • Reviews come free with a /amazon-product-lookup call - no extra endpoint, no extra credit.
  • averageRating is null, and totalReviews is 0, both when there are no reviews and when parsing failed - the field alone can't tell you which.
  • reviewSummary is Amazon's own short synthesis text, not a list of individual reviews.
  • For rating history over time, use /amazon-product-statistics instead of polling lookup repeatedly.
  • A seller or brand with a 0.0 displayed rating almost always has zero reviews, not one-star reviews.

Where does the review data live in the lookup response?

Review fields inside /amazon-product-lookup (October 2026).
EndpointFieldMeaning
/amazon-product-lookupproductInfo.reviews.averageRatingfloat, or null when no reviews / parse failed
/amazon-product-lookupproductInfo.reviews.totalReviewsint, 0 when no reviews / parse failed
/amazon-product-lookupproductInfo.reviews.reviewSummaryAmazon's own short summary text, or null

How do I read the average rating and review count?

The function below returns a flat dict and a has_reviews flag so a caller never has to check totalReviews == 0 twice. It treats a missing reviews key the same as an empty one, which matters for older or thinly-stocked listings. get() and new_session() come from the Python quickstart.

reviews_summary.py - rating, count and summary from one call

from sellermagnet import ApiError, get, new_session


def reviews_summary(session, asin: str, marketplace_id: str) -> dict:
    """One /amazon-product-lookup call to the review snapshot: average rating,
    lifetime review count and Amazon's own short summary text. averageRating
    is null and totalReviews is 0 when the product has no reviews or the
    parser failed - never read that as a 0.0-star product."""
    p = get(session, "amazon-product-lookup", asin=asin, marketplaceId=marketplace_id)["productInfo"]
    reviews = p.get("reviews") or {}
    return {
        "asin": p["asin"],
        "title": p["title"],
        "average_rating": reviews.get("averageRating"),      # float or None
        "total_reviews": reviews.get("totalReviews", 0),     # int, 0 on failure
        "summary": reviews.get("reviewSummary") or None,
        "has_reviews": bool(reviews.get("totalReviews")),
    }


if __name__ == "__main__":
    session = new_session()
    for asin in ["B0CL61F39H", "B0ZEROSTARS", "B0MISSINGKEY", "B0DEADASIN"]:
        try:
            print(reviews_summary(session, asin, "ATVPDKIKX0DER"))
        except ApiError as exc:
            print(asin, "failed:", exc)

Example output (illustrative ASINs)

reviews_summary: 4 scenarios OK, calls={'amazon-product-lookup': 4}
{'asin': 'B0CL61F39H', 'title': 'Widget', 'average_rating': 4.6, 'total_reviews': 3129, 'summary': 'Customers like the build quality.', 'has_reviews': True}
{'asin': 'B0ZEROSTARS', 'title': 'Widget', 'average_rating': None, 'total_reviews': 0, 'summary': None, 'has_reviews': False}
{'asin': 'B0MISSINGKEY', 'title': 'Widget', 'average_rating': None, 'total_reviews': 0, 'summary': None, 'has_reviews': False}
B0DEADASIN failed: 404: Product not found

Trimmed reviews object (example values)

{
  "productInfo": {
    "reviews": {
      "averageRating": 4.6,
      "totalReviews": 3129,
      "reviewSummary": "Customers like the build quality."
    }
  }
}
Blueprint breakdown of the reviews object inside a product lookup response
Three fields, one of them text, sitting inside the same lookup you already call.

Why does a product show no rating at all?

Either it genuinely has zero reviews (new listings, low-volume variations) or the parser found no review block on the page at that moment, both return the same null/0 shape, so a single snapshot cannot distinguish them. A second lookup a day later that still returns null/0 is stronger evidence of a real zero-review product than relying on one call. For a trend instead of a snapshot, the rating and review count history guide covers productRatingHistory, and the product lookup page lists every other field in the same response.

Blueprint comparison of a zero-review product and a parse failure, both returning the same null shape
Two different situations, the same null/0 shape - a second lookup is the tiebreaker.

Frequently Asked Questions

Does a null averageRating mean zero stars?

No. Null means no reviews or a parse failure, not a 0.0-star product; only a present numeric value is a real rating.

Is totalReviews the same number shown on the product page?

It is Amazon's own ratings count as parsed by the lookup, which can lag the live page by the scrape interval; re-fetch for a current figure.

Can I get review text, not just the summary?

FACTS.md lists no endpoint returning individual review text; reviewSummary is Amazon's own short synthesis, not a list of reviews.

Does this cost more than a normal lookup?

No, the review snapshot is part of the same /amazon-product-lookup response you already pay one credit for.

How do I track rating changes over time?

Use /amazon-product-statistics productRatingHistory and productRatingCountHistory instead, which store a point per recorded change.

Bottom line: read reviews straight off a lookup you already pay for, and treat null/0 as "no reviews yet", not "zero stars".

Ready to Extract Amazon Data at Scale?

Start building with SellerMagnet API today. Real-time product data, competitive pricing, and review analytics at your fingertips.

150 free API credits • No credit card required • Cancel anytime