Skip to main content
Sorting by revenue finds products that already won. By the time a listing tops that ranking, it is saturated: margin is compressed, creators are booked, and the window has closed. This guide builds a query that finds products on the way up.

What separates a breakout from a bestseller

Momentum over level

Rank on revenue_growth_rate, with a revenue floor so the list stays real.

Room left in it

A low creators_count at high revenue means the affiliate side is not crowded yet.

The query

Every filter is doing a specific job:
revenue_growth_rate is a ratio: 0.5 is +50%, not 50. Passing 50 filters for products that grew 5,000%, and returns nothing — the most common mistake in this query.

Separating real demand from discounting

A product can post explosive growth because it went on sale. Compare avg_sale_price against price.current:
A gap wider than about 20% usually means the growth is a promotion. That can still be worth copying — but it is a pricing decision, not a product discovery.

Checking whether the affiliate side is crowded

creators_count is the competitive signal. Two products at $150k revenue are in completely different positions at 12 creators versus 400.
Revenue per creator, sorted descending, puts the products carried by a small number of effective creators at the top — the ones where adding one more creator still moves the number.

Confirming it is not one video

High growth from a single viral video does not repeat. Check the shape:
If the top video accounts for most of the product’s revenue, you are looking at one lucky post. If revenue is spread across ten or more videos from different creators, the product converts — and that is what repeats.

Making it a standing process

Discovery is worth nothing as a one-off. Turn the query into a search tracker so new entrants come to you:
With no conditions, the tracker fires on membership change — you hear about a product the day it enters the set, which is the entire point.
Run the same tracker per leaf category rather than one broad one. Each gets its own result depth, and the events arrive already routed to whoever owns that category.