At Viral Launch, we thrive on understanding and discovering the intricacies and science of the Amazon marketplace. Because the more we understand about Amazon the better equipped we are to map out the process of selling successfully for you. One of our targets was to reverse engineer the Amazon Best Sellers Rank (BSR) algorithm.
The intent was to build an incredibly robust Amazon sales estimation algorithm with unprecedented accuracy. While we have built a far more accurate BSR-to-sales mapping algorithm than what is currently available, reverse engineering the Amazon Best Sellers Rank algorithm requires a far greater amount of data and sophisticated machine learning tactics.
Here are our findings on BSR and the downfalls of using Amazon’s Best Sellers Rank as a tool to estimate sales.
What is Amazon’s Best Sellers Rank?
A product’s Best Sellers Rank can be found on the product’s detail page. As you can see, products are typically listed in multiple product categories. There is usually a top level category: in this example it is #71 in Beauty & Personal Care. And there is a subcategory: this product is the #1 best seller in the sub category, Serums.
Often you’ll find a product in multiple subcategories and, somewhat less frequently, in multiple top level categories. For sales estimation equations, it is the top level category that the algorithms pay attention to. If someone had enough data to map out the current 64,000+ subcategories, they might use those numbers. But at the moment, that seems unlikely.
How is the Amazon’s Best Sellers Rank (BSR) Calculated?
The “best selling” product in a category has a BSR of #1 in that category. The second “best selling” product in a category has a BSR of #2 in that category. Amazon calculates a product’s Best Sellers Rank or BSR by considering the number of orders for that product compared to other products in the same category within a given amount of time.
We tried to figure out the time frame in which orders are taken into account using a few different machine learning algorithms. We wanted to know how much weight Amazon was placing on various timeframes. The most successful of these algorithms was Linear Regression.
[PRO INSIGHT: We also tried Decision Forest Regression, Bayesian Linear Regression, and Boosted Decision Tree Regression algorithms] Generally, with this kind of dataset, we would expect to use Linear Regression to help us understand how Amazon weights sales each hour. For example, using Linear Regression, we can determine that sales today are more heavily weighted than sales a year ago when calculating BSR.
To briefly explain how Linear Regression helped us reverse engineer the BSR equation, let’s break it down. Linear Regression is an AI equation that finds the proper coefficients for an equation by sorting through massive amounts of data. The equation looks something like BSR = X(a)+ Y(b) + Z(c)….. and so and and so forth.
Variables a, b, and c are the numbers of orders for each period of time, and X, Y, and Z are the amounts each period of time is weighted. For example, sales over the last hour (a) are worth 40% of the BSR calculation (X) and sales two hours ago (b) are worth 20% of the BSR calculation (Y).
Unfortunately, this approach did not return the exact calculation we were looking for. But it did help us uncover some great insights.
What We Discovered About BSR
Though BSR has been difficult to work with, through trial, error, and analysis of massive amounts of data, we definitely learned a lot! Some of these are not new discoveries, but for those unfamiliar here you go:
- BSR updates for a product within 2-3 hours of a sale (we assume depending on when the payment clears relative to Amazon updating the market’s BSR).
- The BSR calculation more heavily weights recent sales.
- Historical sales still hold considerable weight in the calculation.
- We’ve seen two products with near identical BSRs have different sales by a couple of hundred during the last month. (Ex. BSR #76,430 and #76,433 with monthly sales of 94 and 310 monthly sales respectively).
- We’ve seen products with much lower BSRs with far fewer sales (Ex. BSR #720 at 366 sales over the last month.).
- New items with no sales do not have an Amazon Best Sellers Rank.
- When it comes to listing variations, some types of variations do not have their own BSR. Instead sales roll up to the parent ASIN. Other variation types do have their own Best Sellers Rank.
- BSR is order dependent and unit independent. (e.g. 90 items in a single order has as much impact as an order for 1 unit).
- BSR can swing by tens, even hundreds of thousands in the lower ranks with a single sale. Likewise, BSR can plummet just as fast (we’ve seen drops of 10,000 per hour until another sale occurs).
- BSR is re-calculated every hour for every product. We’ve never seen two products with the same BSR in the same hour.. so you can’t just re-calculate the top X products each hour as some people suggest.
So as you can see, BSR can be both an indicator of how well a product has sold in the past and an indicator of how well it has sold over the last few hours. The problem is you can’t tell exactly which unless you have detailed BSR history. Becuase BSR fluctuates so drastically and frequently, it’s almost impossible to determine anything from a product’s BSR at a single given moment.
An Example of BSR Fluctuations
Let’s take Product A and Product B. Product A has been selling steadily at 40 units per day in the Patio, Lawn, and Garden department for the last 6 months and Product B has only ever had 1 sale which was 31 days ago.
Let’s say that Product B get’s their stuff together and starts really promoting their product. Let’s say it sells 120 units total over the last two days. We would expect Product B to have a very similar BSR to Product A even though Product B has only sold 120 units over the last 30 days and Product A has sold 1,200.
Pretty crazy huh?
Different Ranks But Same Sales
With there being millions of products per category it is very possible for two ASINs to have the same number of sales but have very different BSRs.
Let’s say that Product A has had 197 sales and Product B has had 200 sales over the last 30 days and their BSR is sitting at 12,000 and 10,0000 respectively.
Okay, now let’s say that Product A had three sales in the last three hours, while product B has had none. We would expect Product A to be ranking somewhere in the 8,000’s even though they have had the same number of sales over the last month.
Timing Is Everything
Product A has only ever had 2 sales on Amazon, and they both occurred 18 months ago. The product is now sitting with a BSR in Patio, Lawn, & Garden of #2,000,000. Product B on the other hand has only had 1 sale, but that sale occurred 12 months ago. Because Product B had a sale more recently than Product A, we would expect its BSR to be something like #1,000,000.
Even though Product A has had more sales, those sales happened earlier and reached “the bottom” of the BSR calculation, while Product B didn’t hit “the bottom” of the BSR calculation until much later. As BSR updates each hour, products that don’t report a sale generally get pushed down the ranks (increasing in BSR), and products that have a sale rise above.
BSR Is Bad For Sales Estimation (But It’s The Best We Have)
In our journey of crafting the most accurate sales estimation algorithm, we brainstormed all possible indicators of sales on Amazon’s platform. One thought was estimating sales based on an assumed average review rate per market, which would look something like this: if an average of 25 reviews were added per product in a month, and we assume review rate is 1% of organic sales then we would assume there were 2,500 sales that month.
This is obviously not the proper approach. But in brainstorming, no idea is a bad idea. The most popular alternative is tracking inventory levels, which has some major weaknesses. This approach does not allow for situations in which sellers are driving sales from external sources as well as listings whose inventory levels are above 999 units, or listings where the Max Order Quantity is set.
You may be wondering why we were so turned off by the way existing tools use BSR. Essentially, we were opposed to using the Best Seller Rank because it is such a volatile metric. BSR is globally updated per hour meaning each product’s Best Sellers Rank is calculated and adjusted each hour.
Each time Amazon pushes a BSR update, a given product’s rank can fluctuate dramatically. For example, we watched a product’s Best Seller Rank jump from 98,000 to 38,000 in one hour due to one sale. Then in the next hour it fell back down to 76,000. This drastic fluctuation is happening across the marketplace all the time.
Moving forward, let’s call the Amazon best sellers rank that you find on Amazon a “snapshot” (because it is just a snapshot in time as BSR changes hourly).
Let’s walk through an example of how snapshot BSR is a poor metric for estimating sales volume. Imagine you are wanting to source a tea kettle. When are people most likely to remember that they need to purchase a new tea kettle? Probably, most people remember to purchase a new tea kettle in the morning when they have their morning tea/coffee before work. That means, that BSRs for tea kettles are likely going to be lower (showing higher sales estimates) in the morning than at night.
So, if you do your sourcing research in the mornings, you are going to estimate higher sales volume than if you do your research at night. The same can be true for times of the week. Let’s say for example’s sake that half of tea/coffee drinkers only drink tea/coffee on work days to get some extra pep in their step on the way to work. That would mean that BSR/sales figures are going to be different when looking over the weekends versus weekdays.
Essentially because there is no direct calculation and because Amazon Best Sellers Rank can fluctuate so drastically within the scope of a day, week, and/or month, the Amazon Best Seller Rank is a poor indicator of past sales.
How We Built Our Sales Estimation Algorithm With This Knowledge
We don’t feel comfortable sharing too many specifics, but here are a couple of key aspects that allow us to have an incredibly accurate estimation algorithm in our Amazon product research tool.
As you can see, the Amazon Best Sellers Rank can be extremely volatile hour to hour, day to day, and week to week. So in order to build a sales estimation tool with any degree of accuracy, we had to build a tool that was going to take into account the vast fluctuations in BSR that occur all month, and we’ve done just that.
Using a snapshot of BSR to estimate the number of sales over the last month is like trying to predict the plot of a movie based on a single still frame. It can be extremely inaccurate. One feature of our algorithm that I would like to highlight is that we continually update our BSR-to-sales mapping algorithm each night.
Nightly updates allows our calculation to remain consistent with the natural trends of the market. Due to seasonal trends across Amazon, as well as Amazon’s increasing popularity, estimation tools that do not refresh their algorithm regularly will find their estimations quickly becoming stale and continuing to decrease in accuracy as time goes on.
See just how accurate our sales estimates are with a free trial of Market Intelligence!
- Amazon Advertising: Brand Analytics & Customer Behavior - March 28, 2019
- The Future of Amazon 2019: 22 Sellers and Thought Leaders Share Their Predictions - January 10, 2019
- Amazon Keyword Search Volume & Relevance Data Change - December 20, 2018
thank you guy !
There is a mistake on “Timing is everything” section: Even though Product B has had more sales… B SHOULD BE A!
Thank you for catching this! We updated it 🙂