Methodology • qfi-recommend-v3

How your matches are chosen.

The recommender is deterministic arithmetic over stored review scores. No AI model runs when you ask for picks, and the same answers always produce the same list. The tables below are rendered directly from the engine's own weight tables, so what you read here is exactly what runs.

The formula

A weighted sum, nothing fancier

Every product in the catalog carries six community-researched scores from 0-10: bass, mids, treble, soundstage, technicalities, and value. Your match score is a weighted sum over the five sound axes:

match = bass·w₁ + mids·w₂ + treble·w₃ + soundstage·w₄ + technicalities·w₅

The weights always sum to 1, so the match score stays on the same 0-10 scale as the underlying data. Your sound preference sets the base weights, your use cases shift them, and the top 5 in-budget scores become your results. The value score is not part of the weighted sum. It powers the price tiebreak and value call-outs described below.

Step 1

Sound preference sets the base weights

BassMidsTrebleSoundstageTechnicalities
Bass-forward0.400.150.100.150.20
Balanced / neutral0.200.250.200.150.20
Bright / detailed0.100.150.350.150.25
Warm / relaxed0.300.300.050.150.20
I don't know yet0.200.200.200.200.20
Bass-forward
Bass quantity and quality dominate (0.40) because that is the axis the listener explicitly asked for; technicalities (0.20) keep the bass picks articulate instead of muddy, and treble gets the smallest weight since a dark tilt is acceptable here.
Balanced / neutral
Near-even weights across the tonal axes, with mids slightly ahead (0.25) because midrange correctness is what makes a set read as 'neutral': voices and most instruments live there.
Bright / detailed
Treble (0.35) and technicalities (0.25) lead because perceived detail comes from upper-register energy plus genuine resolution; bass gets the smallest weight since a lean low end fits this signature.
Warm / relaxed
Bass and mids share the lead (0.30 each) for a rich, full-bodied tone; treble is nearly unweighted (0.05) on purpose. A softened top end is the point of this signature, so a low treble score should not sink a pick.
I don't know yet
With no stated preference we weight every sound axis equally (0.20 each) rather than guessing a signature for you.

Step 2

Use cases shift the weights

Each use case is a vector of per-axis adjustments that sums to zero. It redistributes emphasis rather than inflating scores. When you pick several use cases, their vectors are averaged, so choosing two use cases means each counts half. The adjusted weights are clamped at zero and renormalized to sum to 1.

BassMidsTrebleSoundstageTechnicalities
Music at a desk-0.050-0.05+0.05+0.05
Commuting / travel+0.100-0.05-0.050
Competitive gaming-0.25-0.15-0.15+0.30+0.25
Immersive gaming / movies+0.10-0.10-0.10+0.15-0.05
Studio / mixing-0.20+0.15+0.10-0.15+0.10
Sport / workouts+0.1000-0.05-0.05
Music at a desk
Focused desk listening rewards resolution and a sense of space (+0.05 soundstage, +0.05 technicalities). There is no ambient noise to fight, so tonal exaggeration matters less.
Commuting / travel
Ambient noise masks the low end first, so extra bass (+0.10) survives a commute; soundstage subtleties are largely lost on a train, so it gives up weight.
Competitive gaming
Imaging and positional cues dominate competitive play: soundstage (+0.30) and technicalities (+0.25) take the big boosts because placing footsteps beats pretty tonality, while bass emphasis (-0.25) actively hurts by smearing directional detail.
Immersive gaming / movies
Movies and single-player games want scale and impact: soundstage (+0.15) for the big picture and bass (+0.10) for explosions, at the cost of midrange precision nobody is mixing against.
Studio / mixing
Mix decisions need honest mids (+0.15), honest treble (+0.10), and real resolution (+0.10); boosted bass (-0.20) and an artificially wide stage (-0.15) are exactly what you do not want when the mix has to translate elsewhere.
Sport / workouts
Workouts want energy: a bass boost (+0.10) keeps momentum, while micro-detail and staging (-0.05 each) are the first things you stop noticing mid-set.

Step 3

Budget filtering and how prices are resolved

  1. Live merchant offers first. The best current coupon-adjusted, in-stock USD offer that is not stale (past its freshness window) sets the product's price, the same sorting the deals page uses. Budgets are in USD and we do no currency conversion, so offers listed in other currencies never compete here.
  2. Legacy retailer snapshots second. If no live USD offer exists, the cheapest stored USD retailer snapshot is used as a fallback.
  3. No price? Still shown and flagged. A product with no resolvable price is never silently dropped from your results. It is included, marked "price unknown", and skips the budget filter so you can decide for yourself.

Products with a known price outside your budget are excluded from results, but when nothing fits, the nearest picks above your budget come back as explicit "raise your budget by $X" suggestions instead of an empty page.

Step 4

Ranking, the value tiebreak, and trade-offs

Results are sorted by match score, then grouped into near-tie clusters: starting from the top-scoring pick, every product within 0.3 points of that cluster's leader joins its cluster, and each cluster is re-ordered cheapest first (products without a known price keep their score order at the back of the cluster). A product more than 0.3 points behind a cluster's leader starts the next cluster, so it can never leapfrog a meaningfully higher scorer. A 0.3-point gap on a 0-10 weighted score is inside the noise of aggregated review scores, so products that close to the top scorer of their group are treated as a near-tie and ranked cheapest first instead of pretending the score difference is meaningful.

Trade-offs are generated, not curated: any axis carrying at least 15% of your weight profile that scores below 5/10 is called out on the result, with the real number. A community value score of 7.5/10 or higher earns an explicit price-to-performance mention.

Stored comfort data adds honest flags without moving the ranking: picks with a glasses-friendliness rating get an explicit good/OK/poor line when you said you wear glasses. Stored product weight is compared against 400 g for commuting and sport requests: anything heavier gets an explicit weight trade-off line with the real number. Products without stored weight data are never flagged either way.

Honesty

What we don't have data for

Constraints you select never silently change the ranking. Where the catalog has no data, results say "no data" instead of guessing. This table is the engine's actual knowledge map:

ConstraintData?What results say
Wears glassesYesPartial data: editors record a glasses-friendliness rating (good / OK / poor) where community comfort reports support one. Rated picks get an explicit line; unrated picks still say no data instead of guessing. On IEM picks: As an IEM it sits in the ear canal, so glasses arms are unlikely to be an issue, but we store no comfort data to confirm it.
Small ears / canalsNoNo data: we do not track shell size or nozzle diameter yet, so we cannot verify fit for small ears.
Needs isolationNoNo data: we do not store isolation measurements. On IEM picks: As an IEM it should isolate well with a good tip seal, but we store no isolation measurements to confirm how well. On headphone picks: We do not track whether this headphone is open- or closed-back, so its isolation is unverified.
Needs a microphoneNoNo data: we do not track whether a mic or mic cable is included, so verify before buying.
Open-back OKNoNoted, but we do not store open/closed-back data, so we cannot filter on it either way.

Source gear is the same story: the catalog stores no impedance or sensitivity data yet, so your source answer adds an honest note to results rather than moving the ranking. The exact notes:

  • Phone: You listed a phone as your source. We do not store impedance or sensitivity data yet, so drivability is not factored into the ranking. Before buying a planar or high-impedance headphone, check that a phone can drive it.
  • Laptop / PC: You listed laptop/PC audio as your source. We do not store impedance or sensitivity data yet, so drivability is not factored into the ranking. Most IEMs are fine, but check power needs on demanding headphones.
  • USB dongle DAC: You listed a USB dongle as your source. We do not store impedance or sensitivity data yet, so drivability is not factored into the ranking. Good dongles drive most of this list, but verify demanding headphones.
  • Desktop DAC/amp: You listed a desktop amp as your source. Power is unlikely to be a problem for anything on this list.
  • Not sure: Source gear unknown. We do not store impedance or sensitivity data yet, so drivability is not factored into the ranking.
Find your match →Check the measurements yourselfHow sources are selected and weighted