compare
Structured comparison of 2+ alternatives with consistent criteria and decision matrix
Compare
Structured comparison of 2+ alternatives. Enforces a comparison matrix with consistent criteria so every alternative is evaluated on the SAME data points.
Steps
-
Define the comparison frame:
- List all alternatives to compare (minimum 2)
- Identify the use case or decision context (WHY is this comparison needed?)
- Ask the user for must-have requirements vs nice-to-have criteria
-
Define evaluation criteria before searching (prevents cherry-picking):
- Choose 5-8 criteria relevant to the use case
- Common technical criteria: performance, developer experience, ecosystem/community, documentation quality, maintenance status, license, cost, learning curve
- Weight criteria: must-have vs important vs nice-to-have
- Every criterion MUST be evaluated for ALL alternatives (no gaps)
-
Research each alternative using
searchandextract:search(action="search", query="[alternative] [criterion] benchmark OR comparison")- For each alternative, gather the SAME data points
- Prefer quantitative data (benchmarks, stars, download counts, release frequency)
- Note data recency — a 2023 benchmark may not reflect 2026 reality
- Use
extracton official docs for feature verification
-
Build the comparison matrix:
| Criterion (weight) | Alternative A | Alternative B | Alternative C | |---------------------|---------------|---------------|---------------| | Performance (must) | [data+source] | [data+source] | [data+source] | | DX (important) | [data+source] | [data+source] | [data+source] |- Every cell must have a value — use "No data found" if genuinely unavailable
- Include source links for verifiable claims
- Use consistent units (same benchmark suite, same metric)
-
Produce decision recommendation:
- Best for [use case X]: [Alternative] — because [reason based on must-have criteria]
- Best for [use case Y]: [Alternative] — if the use case differs
- Tradeoffs: What you give up with each choice
- Avoid if: Dealbreaker scenarios for each alternative
- Confidence: High (extensive data) / Medium (partial data) / Low (limited data)
Rules for Fair Comparison
- Same data points: If you measure response time for A, measure it for B too
- Same recency: Do not compare A's 2026 benchmark with B's 2023 benchmark
- Primary sources: Official docs and benchmarks over third-party opinions
- Acknowledge bias: If most search results favor one option, note this and search harder for the other
- No false equivalence: If one alternative is clearly better on all criteria, say so
Common Pitfalls
- Popularity bias: Most-popular is not always best-fit for the specific use case
- Feature-list comparison: Having more features is not inherently better
- Ignoring migration cost: Switching cost is a real criterion, include it
- Stale comparisons: Framework landscapes change fast. Always check latest versions.
- Missing "do nothing": Sometimes the best choice is to keep what you already have
When to Use
- Choosing between libraries, frameworks, or tools
- Evaluating database options, hosting providers, or API services
- Comparing architectural approaches (monolith vs microservices, REST vs GraphQL)
- Any decision where multiple viable options exist and evidence should drive the choice