compsapi.com / comic book comps

Comic comps where one word moves the median 100x

Comics are the category where keyword matching fails hardest, and it does not fail by a few percent. It fails by two orders of magnitude.

The measurement

Incredible Hulk 181 is the first full appearance of Wolverine. A graded copy is a four figure book and a reading copy is not. Here is the same book, same three year window, same API, on 17 October 2026, with nothing changed but the search text.

QuerySalesMedian25th75th
incredible hulk 181190$20.00$6.24$349.99
incredible hulk 181 CGC193$2,000.00$102.50$3,605.00
minus words, no grader term190$398.75$16.98$2,600.00

One word, CGC, moves the median from twenty dollars to two thousand.

The twenty dollar figure is not a bug and it is not our matching being loose. It is what the keyword honestly returns. We pulled the same search as raw rows and counted what was in it: of 239 sales, 67 were facsimile editions, 24 were reprints, and a large block were modern trading cards that happen to picture the cover, like the 2025 Topps Chrome Deadpool Cover Stars insert and the 1990 Impel Marvel Universe card. There were also posters, a magnet and a t shirt. Sixty eight rows did mention CGC, and those ran up to $9,500. One result set, two orders of magnitude, one median that describes nothing in it.

eBay matches every word in a seller written title and nothing else. Price a book off the first number and you are not slightly wrong, you are wrong by 100x.

Those figures come from /v1/comps, which already drops obvious junk by default and trims outliers before it reports a median. The twenty dollars is what survived that. It is not one unlucky book either. Same day, same window:

QuerySalesMedian25th to 75th
amazing spider-man 300188$74.95$24.43 to $400.00
new mutants 98181$245.23$23.99 to $355.00
batman 423190$68.97$6.99 to $230.00

Read the spread, not just the median. A 25th to 75th range that runs from twenty four dollars to four hundred is telling you the result set holds at least two different products.

How to actually price a comic

Put the grader in the search text. CGC or CBCS in q is what separates slabs from raw copies, because that is what the seller typed in the title. Add the grade the same way when you want one tier: incredible hulk 181 CGC 6.0.

Then cut what is left with minus words. Comics need more of them than any other category we have measured: -reprint -facsimile -lot -shirt -figure -poster -copy -digital.

And use min_price as a floor when you know roughly what tier you are in. It will not fix a bad keyword, but it drops the three dollar noise out of the stats.

curl -G https://api.compsapi.com/v1/comps \
  -H "Authorization: Bearer YOUR_KEY" \
  --data-urlencode "q=incredible hulk 181 CGC" \
  --data-urlencode "days=1095" \
  --data-urlencode "min_price=250"

One honest limitation

Our structured grade filters, graded=true, grader and grade, are tuned to trading card titles. On comics they still work, but they under match: on amazing spider-man 300 over three years, graded=true returned 7 rows of 188, median $400.00. Those 7 are real graded sales and the number is sane, but it is a strict filter on this category rather than a complete one. For comics, the grader word in q is the reliable tool and the structured filter is the cross check. We would rather say that here than let you find it in production.

Offers, and why three years matters

Keys, slabs and runs get negotiated constantly, so eBay's public sold page shows the asking price on an accepted offer rather than what the buyer paid. Across 5,859 matched sales that gap ran to a median of 14.9%. We return the accepted amount with a best_offer flag on every row.

Depth matters here more than in fast moving categories. A key issue in a given grade might sell a handful of times a year, so ninety days of history is frequently zero sales, and zero sales is not a price. Growth and above read the full 1,095 days.

Price from what things
actually sold for

100 free requests a month · every filter on · no card

Get a free key