THE QUICK ANSWER
Median, average and volume describe different things. Compare the same item and currency over the stated window, and keep null prices as missing observations.
01
Start with a completed-sale data window
Skinport’s public sales-history documentation provides minimum, maximum, average, median and volume for 24 hours, seven days, thirty days and ninety days. These are completed-sale aggregates, not an order guaranteeing a new buyer.
Save the item’s complete market name, any version, currency, chosen window and capture time. A thirty-day statistic is incomplete if it is later compared with a seven-day number without saying so.
Explanation: one outlier changes the average
Example sample
10, 10, 11, 12, 57 units.
Average
20 units.
Median
11 units.
Volume
Five observations.
Explanation diagram, not a website screenshot. Original invented arithmetic, not historical Skinport prices.
Original explanation · not an account screenshot02
Use the statistic that answers your question
The average adds values and divides by their count; the median is the middle ordered observation. A high outlier can move the average more than the median. Both still describe that sample, which may mix individual skins with different attributes.
For invented sales of 10, 10, 11, 12 and 57 units, the average is 20 and the median is 11. Reporting only 20 would hide how unusual the final observation is.
| Invented observations | 10, 10, 11, 12, 57 |
|---|---|
| Volume in this example | 5 observations |
| Average | 20 units |
| Median | 11 units |
03
Treat null and zero volume correctly
The official example pairs zero sales volume in an empty window with null price statistics. That does not mean the skin sold for zero. Preserve missingness when writing a spreadsheet or comparison.
If a longer window contains sales while the last day has none, report both facts. Carrying the old median forward without labelling its age makes sparse data look current.
Explanation: retain the statistical context
Window
24 hours, 7, 30 or 90 days.
Identity
Complete item name and version.
Missing data
Null price plus zero volume is no observed sale.
Freshness
Five-minute documented cache.
Explanation diagram, not a website screenshot. Field-reading explanation, not an API response or chart of real trades.
Original explanation · not an account screenshot04
Do not add overlapping period volumes
Twenty-four hours is part of seven days, which is part of thirty days. Adding those reported volumes double counts observations. Choose a single window for a count comparison or calculate non-overlapping intervals only when the data supports that operation.
For an invented seven-day count of 70 and thirty-day count of 100, the total is not 170. The thirty-day window already contains the week. That is a data-reading rule, not a statement about any actual item’s demand.
05
Keep aggregation and freshness limits visible
The endpoint is documented as cached for five minutes. Record when the data was retrieved, and do not interpret repeated identical responses inside that period as proof no trades occurred.
A grouped median does not settle an exact craft or pattern premium. Retain appropriate item-level evidence and the actual final quote for any transaction; public statistical access requires no account sign-in.
BEFORE YOU CONTINUE
Quick checklist
- Keep item, version, currency and window together.
- Read median, average and volume separately.
- Preserve null as missing rather than zero.
- Do not sum overlapping periods.
Official sources
Official public documentation reviewed on 26 October 2026 (America/Toronto).
- Skinport REST API — Sales History · reviewed
Public documentation review only. No account was signed in, no order or trade was created, and no payment was made. Examples use invented amounts and do not report current market prices.

