Version 2026-10. This page covers
sort=trending on your own listings (GET /v1/workspace/listings and search_my_listings), and the previous_units and change it adds to each listing’s period. The units it compares are your real sales, counted as Listing stats describes. It isn’t the research trending list, which ranks other sellers’ products by estimates.The formula
Trending compares the units a listing sold in the period you ask for with the units it sold in the period just before, of the same length:change is a fraction: 0.33 means 33% more units than the period before, -0.5 means half as many. In the response, period.units holds the units of the period and period.previous_units those of the period before.
The periods. period is 7d, 30d, 90d or 365d, and 30d by default. Each ends yesterday, in UTC: 7d is the last 7 complete days. Or give from and to, both included. The period before has the same number of days and ends the day before from. Trending needs a period with an end, so period=all returns 400 invalid_request.
Which listings rank
- At least 5 units in the period. A listing that sold fewer is left out, so a jump from 1 sale to 2 doesn’t rank first. The minimum applies to the period you asked for, not the one before.
- Nothing sold before. When the period before had 0 units,
changeisnull: a rise from nothing has no percentage. These listings count as larger rises than any listing with achange, and among themselves rank by their units. - Order. Use
sort=-trending(descending) for the largest rise first, with the listings that sold nothing before at the top.sort=trendingreverses it: the largest fall first. Listings with the samechangeare ordered by listing ID.
When shops and listings are left out
Trending reads Alura’s daily sales data, so both periods must be inside the shop’s coverage: fromsales_from through sales_through, with no gap day in either period.
- A shop that doesn’t cover both periods is left out, and a
sales_not_coverednotice names it. Its listings don’t appear in the results. The other shops still rank. - A listing with an unknown input in either period, such as an order line with an unknown quantity, is left out. An
unknown_sales_inputsnotice names up to 50 such listings and gives the total count.
Limits
- Small numbers still swing. 5 units against 1 is a
changeof4, or +400%. Look atperiod.unitsandprevious_unitsbefore you act on a largechange. - Seasons look like trends. A Christmas listing rises every November against October.
- Recent days can still change. Orders that Etsy updates later, such as cancellations, change past days after the next sync.