# Search: which products coding agents choose

> Agents wrote search themselves in about 23% of runs.

Source: https://armature.tech/leaderboards/search (Armature agent leaderboards). 459 runs, 11 apps, 3 agents, 4 personas, updated 2026-09-02. Interactive board with every run: https://armature.tech/leaderboards#app/search

## Key learnings

We asked three agents to add search to 11 small apps, 459 runs in all, in different wordings and as four different people. Writing it in-house came out on top. Among the named products Postgres Full-Text Search led with about 17%, and OpenSearch came second.

### No case held to one answer (33 of 33)

We counted 33 cases, each one codebase paired with one agent. In every one, repeated asks in changed wording did not settle on a single product.

### The persona changed the order (36 of 95)

Asked as an enterprise team, the agents picked OpenSearch 36 times. Asked as senior engineers, the top pick was Postgres Full-Text Search, with Algolia close behind at 23.

### Each agent had its own favourite (34 of 152)

Cursor picked Meilisearch most, 26 times. Claude Code picked Postgres Full-Text Search 34 times. Codex split almost evenly between OpenSearch and Postgres Full-Text Search.

### One product was named often and never picked (0 of 62)

Solr came up in 62 runs and won none of them.

Smaller learnings:

- Oracle Indexed Search won 23 times, all of them in the Java telecom platform.
- Atlas Search and MongoDB Text Search won only in the Express API service, which runs on Mongoose.
- The simulated user approved every plan in the end, but sent the agent back at least once in 137 runs.
- In six runs it refused to approve until the agent named a specific product.

## The ranking

| # | Product | Wins | Share |
|---|---|---:|---:|
| 1 | Built in-house (outcome) | 106 | 23% |
| 2 | Postgres Full-Text Search (postgresql.org) | 79 | 17% |
| 3 | OpenSearch (opensearch.org) | 59 | 13% |
| 4 | Typesense (typesense.org) | 42 | 9% |
| 5 | Meilisearch (meilisearch.com) | 40 | 9% |
| 6 | Oracle Indexed Search (oracle.com) | 23 | 5% |
| 7 | Algolia (algolia.com) | 23 | 5% |
| 8 | Elasticsearch (elastic.co) | 22 | 5% |
| 9 | Atlas Search (mongodb.com) | 17 | 4% |
| 10 | Redis Query Engine (redis.io) | 9 | 2% |
| 11 | MySQL FULLTEXT (mysql.com) | 8 | 2% |
| 12 | MongoDB Text Search (mongodb.com) | 8 | 2% |
| 13 | Fuse.js (fusejs.io) | 7 | 2% |
| 14 | PostgreSQL pg_trgm (postgresql.org) | 5 | 1% |
| 15 | MiniSearch (lucaong.github.io) | 2 | 0% |
| 16 | SQLite FTS (sqlite.org) | 1 | 0% |
| 17 | Aurora PostgreSQL (aws.amazon.com) | 1 | 0% |

## By agent

- Codex (GPT-5.6 Sol): 155 runs, first OpenSearch (27), then Postgres Full-Text Search (26)
- Cursor (Grok 4.6): 152 runs, first Meilisearch (26), then Postgres Full-Text Search (19)
- Claude Code (Claude Opus 5): 152 runs, first Postgres Full-Text Search (34), then Typesense (18)

## By persona

- Junior developer: 193 runs, first OpenSearch (23), then Meilisearch (22)
- Senior engineer: 106 runs, first Postgres Full-Text Search (28), then Algolia (23)
- Enterprise team: 95 runs, first OpenSearch (36), then Oracle Indexed Search (14)
- Vibe coder: 65 runs, first Postgres Full-Text Search (23), then Fuse.js (7)

## By what the ask stressed

- The plain ask: 451 runs, first Postgres Full-Text Search (78), then OpenSearch (57)

A case is one codebase with one agent, asked several times in different words and as different people. 33 of 33 cases did not hold to a single choice.

## How this was measured

Every number on this page comes from a controlled experiment. We took 11 small applications, asked 3 coding agents (Codex (GPT-5.6 Sol), Cursor (Grok 4.6), Claude Code (Claude Opus 5)) to add search to each of them, in several wordings and as a junior developer and senior engineer and enterprise team and vibe coder, and let the agent choose the product. Each run happened in a sandbox with the agent at a pinned version, and a judge read the session to record what was chosen. That is 459 runs. The interactive board shows every run with its session, its diff and the judge's verdict. A simulated user stood in for the owner of the codebase: it read the agent's plan and had to approve it before any code was written; it sent the agent back at least once in 137 runs.

Methodology and publications: https://armature.tech/publications

## Other sectors

- [Agent sandboxes](https://armature.tech/leaderboards/sandboxes) (https://armature.tech/leaderboards/sandboxes.md)
- [Observability](https://armature.tech/leaderboards/observability) (https://armature.tech/leaderboards/observability.md)
- [Payments](https://armature.tech/leaderboards/payments) (https://armature.tech/leaderboards/payments.md)
- [Deploy](https://armature.tech/leaderboards/deploy) (https://armature.tech/leaderboards/deploy.md)
- [Auth](https://armature.tech/leaderboards/auth) (https://armature.tech/leaderboards/auth.md)
- [Email providers](https://armature.tech/leaderboards/mail) (https://armature.tech/leaderboards/mail.md)
- [Product analytics](https://armature.tech/leaderboards/product-analytics) (https://armature.tech/leaderboards/product-analytics.md)
- [Databases](https://armature.tech/leaderboards/databases) (https://armature.tech/leaderboards/databases.md)
- [File storage](https://armature.tech/leaderboards/storage) (https://armature.tech/leaderboards/storage.md)
- [LLM evals & observability](https://armature.tech/leaderboards/evals) (https://armature.tech/leaderboards/evals.md)
- [Voice Agents](https://armature.tech/leaderboards/voice-agents) (https://armature.tech/leaderboards/voice-agents.md)
- [Serverless functions](https://armature.tech/leaderboards/serverless) (https://armature.tech/leaderboards/serverless.md)
- [Cloud](https://armature.tech/leaderboards/cloud) (https://armature.tech/leaderboards/cloud.md)
- [AI gateway](https://armature.tech/leaderboards/ai-gateway) (https://armature.tech/leaderboards/ai-gateway.md)
- [Bot protection](https://armature.tech/leaderboards/bot-protection) (https://armature.tech/leaderboards/bot-protection.md)
- [Agent frameworks](https://armature.tech/leaderboards/agent-frameworks) (https://armature.tech/leaderboards/agent-frameworks.md)
- [Performance in CI](https://armature.tech/leaderboards/perf-ci) (https://armature.tech/leaderboards/perf-ci.md)
