Search query classifier
Paste a query export and your term lists. The classifier gives every row a topic, an intent and a confidence, decides reportability separately and queues what the rules cannot settle.
Result
24 rows: 12 in the main summary, 8 in the review queue.
Main summary
| Topic | Queries | Clicks | Impressions | Share of impressions | Secondary |
|---|---|---|---|---|---|
| Repair | 5 | 414 | 9,380 | 19.7 % | 1 |
| Electric bikes | 2 | 237 | 11,700 | 24.6 % | 3 |
| Children's bikes | 3 | 157 | 3,080 | 6.5 % | 0 |
| Winter tyres | 2 | 132 | 2,970 | 6.2 % | 0 |
- Rows
- 24
- In the main summary
- 12
- Secondary (informational)
- 4
- Brand or navigational
- 3
- Unclassified
- 4
- Conflicts
- 1
- In the review queue
- 8
Review queue
- bike unclassified, 5,200 impressions
- cargo bike unclassified, 2,600 impressions
- bicycle helmet sizes unclassified, 1,900 impressions
- electric bike price price query: “price”
- electric bike service two topics at the same source: Repair, Electric bikes
- bike shop open sunday unclassified, 1,100 impressions
- cheap kids bike price query: “cheap”
- tune up cost price query: “cost”
Rows
| Query | Clicks | Impressions | Topic | Intent | Match | Confidence | Layer |
|---|---|---|---|---|---|---|---|
| bike repair near me | 312 | 4,820 | Repair | direct | bike repair (slug) | high | main |
| electric bike | 210 | 9,900 | Electric bikes | direct | electric bike (term) | high | main |
| velo example | 480 | 1,220 | – | brand | – | – | excluded: brand |
| best electric bike for commuting | 64 | 2,100 | Electric bikes | informational | electric bike (term) | high | secondary |
| kids bike 20 inch | 88 | 1,570 | Children's bikes | direct | kids bike (term) | high | main |
| how to fix a puncture | 41 | 3,300 | Repair | informational | puncture (term) | high | secondary |
| studded tyres for bikes | 120 | 2,250 | Winter tyres | direct | studded tyre (term) | high | main |
| ebike service | 36 | 640 | Repair | direct | service (term) | high | main |
| electric bike price | 27 | 1,800 | Electric bikes | direct | electric bike (term) | high | main |
| balance bike | 55 | 980 | Children's bikes | direct | balance bike (term) | high | main |
| bike shop open sunday | 19 | 1,100 | – | – | – | – | excluded: unclassified |
| velo example opening hours | 150 | 410 | – | brand | – | – | excluded: brand |
| winter tyre pressure | 12 | 720 | Winter tyres | direct | winter tyre (term) | high | main |
| cargo bike | 8 | 2,600 | – | – | – | – | excluded: unclassified |
| bicycle helmet sizes | 5 | 1,900 | – | – | – | – | excluded: unclassified |
| which e-bike motor is best | 22 | 860 | Electric bikes | informational | e-bike (term) | high | secondary |
| puncture repair kit | 30 | 2,050 | Repair | direct | puncture (term) | high | main |
| cheap kids bike | 14 | 530 | Children's bikes | direct | kids bike (term) | high | main |
| electric bike service | 47 | 1,300 | Repair | direct | service (term) | low | excluded: conflict |
| bike maintenance checklist | 25 | 1,450 | Repair | direct | maintenance (term) | high | main |
| pedelec vs e-bike | 9 | 310 | Electric bikes | informational | e-bike (term) | high | secondary |
| tune up cost | 11 | 420 | Repair | direct | tune up (alias) | medium | main |
| bike | 3 | 5,200 | – | – | – | – | excluded: unclassified |
| velo example e-bike | 26 | 180 | Electric bikes | brand | e-bike (term) | high | excluded: brand |
The tool did not load, so the page shows an example. Reload the page
How the classifier decides
A query and a term are normalised the same way: lowercase, one space between words, punctuation dropped except hyphens and apostrophes. A term matches at the start of a word, so “repair” also matches “repairs”, never inside a word.
Each source is matched separately and recorded as its own evidence: slug, term and alias. A written order decides: brand first, then slug, term and alias. When two topics match at the same source the row is a conflict: the first topic in the rules stays on the row with low confidence and the row is queued.
The kind of match sets the confidence: a slug or a term is high, an alias medium, a conflict low. A word from the modifiers list adds informational intent beside the topic without replacing it.
Reportability is its own step: a direct topic query reaches the main summary, an informational one the secondary layer, and brand, conflict and unclassified rows are left out with their reason. A sure match on a brand query is not a topic row.
The queue takes a conflict, a price query and an unclassified query with at least 100 impressions and no brand. The queue is for deciding, not accepting: a candidate is not a term until decided. The whole method is on the page “Classifying search queries by topic”.