How Search Works
Search is built to find the right card on the first try, from the words collectors actually type. This page covers how it reads a query, finds and ranks cards, learns from what people pick, and how we measure it.
Search Built for Collectors
Collectors don’t type catalog names. They type aa for alternate art, moonbreon for one very specific Umbreon, and etb when they mean an elite trainer box. Search is built to understand that language, and it works in four steps.
Inspired by PageRank
Google’s early breakthrough, PageRank, rested on two ideas. Every page had a standing score before anyone searched, and links from other pages worked like votes, with a vote from a trusted page counting for more.
Our search borrows both ideas and applies them to cards.
| Idea | PageRank | ATLS |
|---|---|---|
| Standing score | Importance from the links pointing at a page | A card’s market value |
| Votes | Links from other pages | Collectors picking a card for their words |
| Weighted votes | Links from important pages count more | Corrections and admin picks count more |
| Staying current | The web is crawled again | Older votes fade over time |
We don’t run PageRank itself, since cards don’t link to each other the way web pages do. The principle carries over, though: a result earns its place from evidence outside the query, not just from matching the words.
1. Understand the Query
First, we break the query into its parts: the name words, a set code and number (op04-001, or just op04 1), a cert number, a grade, the game, and whether you’re after sealed product.
Then we widen the words using three vocabularies. None of them replace what you typed; your own words always still count.
- Word aliases map shorthand to catalog names. moonbreon also means umbreon vmax, and etb means elite trainer box.
- Phrase aliases handle nicknames that span several words.
- Rarity words describe rarity rather than the name. In One Piece, leader means rarity L.
2. Find Candidates
We look for matches in several ways. The fast, exact methods always run, and the slower ones only step in when results are thin.
| Method | Catches | Runs when |
|---|---|---|
| Code | op04-001 → that card and its reprints | A code is typed |
| Words | Every word, or its alias, in the name | Always |
| Spelling | luffi → luffy | Under 3 results |
| Meaning | straw hat captain gear 5 → the card it describes | Under 3 results |
| Near words | Close misspellings | Under 5 results |
A spelling fix only sticks if it finds cards the typo couldn’t, so a rare but real word never gets “corrected” into a popular one. The meaning search is tuned for a catalog full of near-identical cards, where a confident wrong match is worse than none. And if any one method is slow or down, the others still answer.
3. Rank the Results
Results are sorted by a list of rules, and each rule only breaks ties left by the one above it:
2 cards before sealed (unless you asked for sealed)
3 matched the most words
4 first word starts a word in the name
5 market value, high to low
6 where the word sits, then shorter names
Putting market value ahead of the alphabet is deliberate, and it’s the standing score from PageRank’s playbook. Someone typing luffy almost always wants the chase Luffys, not whichever Luffy happens to come first. There are a few special cases, too: sealed searches prefer the single product over a case of ten, 1st place means the prize card itself, and a set code prefers its original set over later reprints.
4. Learn from Picks
Every time someone picks a result, we treat it as a vote that says “these words mean this card.” Once enough people agree on an answer, it shows first for everyone.
Like links in PageRank, not every vote tells us the same amount, so they’re weighted. Picking our top result tells us little, since people tend to click whatever is first. Scrolling past it is a correction. Looking up a card we didn’t show at all is the strongest signal.
shown first for everyone at 2.0 or more
- Each person gets one vote per search.
- Your own correction applies to your next search right away, before anyone else agrees.
- Set codes and cert numbers can’t be overridden. They are the answer.
Search also picks up new vocabulary. Every 12 hours, the system reviews searches that failed and suggests new aliases. Each suggestion is checked against the catalog, then a person approves or rejects it. Nothing is added automatically.
Measuring Search Quality
The number we care about most is simple: is the right card the top result on the first try?
To track it, we keep an expert-curated validation set: real collector searches across the games, each paired by our team with the card it should find.
Every change to search has to pass the full set before it ships, so improving one game can’t quietly break another. Alongside that, we watch searches that return nothing, picks below the top result, and speed.
Try It Yourself
Search already knows a lot of the names collectors actually use. Here are a few favorites. Tap one to see where it lands.
Pokémon
One Piece
Every one of these goes straight to the right card, and the list keeps growing as collectors search and our team approves new words.