Amazon ReRank

Amazon's top-rated products kept disappointing me, so I built a Laravel app that threw out reviews that did not look genuine and re-ranked whatever was left. It ran publicly for about two years. The Medium write-up of the method is the best surviving record of it.
Amazon ReRank

Built 2019  ·  Status Retired  ·  Stack Laravel 5.7, PHP 7.1, MySQL, Amazon Product Advertising API, ReviewMeta, DiDOM

Amazon ReRank was a web app that discarded reviews it judged untrustworthy and then re-ranked products on whatever was left. The point was to see a different top result than Amazon's own sort would give me.

Purpose

I do a lot of product research before I buy anything, and I kept getting burned. Several highly rated purchases turned out to be disappointing, and once I started reading the reviews closely the pattern was hard to miss: the products sitting at the top were often the ones carrying the most suspicious reviews. A high star average is only useful if the reviews behind it are real, and a star rating does not carry that distinction. Anyone shopping by rating had this problem. I built the tool because I had it.

What it did

The app pulled product and review data through Amazon's Product Advertising API, parsed HTML with DiDOM, and stored what it collected in MySQL. It then evaluated reviews against filters meant to catch the ones that did not look genuine, dropped those, and recalculated each product's ranking from the reviews that survived. What a visitor saw was a set of browsable product categories, appliances, baby, beauty and electronics among them, ordered by the filtered review set rather than by the raw average.

It was a Laravel 5.7 application with its own accounts and sign-in, running publicly at rerank.jazmy.com. I wrote up the filtering approach and what it turned up in a Medium article, which remains the more detailed account of the method.

Impact

This was built to answer my own question and I will not claim more for it than that. It ran publicly for roughly two years before I took it down, and I have no user numbers for it. The lasting output turned out to be the write-up rather than the software: the Medium article is still up and still readable, while the application and its subdomain are gone.

Screens