Head to head · Db vector · October 2026 research run
Elasticsearch vs Vespa
Vespa scores 70 (BB) on agent readiness against Elasticsearch's 67.7 (B), and leads in 6 of 7 scored categories. Elasticsearch leads on schema & documentation. Both do db vector.
Which one, for what
Good for Retrieval that needs keyword relevance, filters and vectors in one query, and teams already running Elastic for logs or security.
Ahead on
- Schema & documentation, 88 against 58
Watch for
More than 20 status notices marked major between 10 July and 8 October 2026, three of them regional service incidents
Vespa BB
Good for Teams that need hybrid retrieval with custom ranking at scale and can maintain a schema and application package.
Ahead on
- Reliability, 80 against 62
- Payments & pricing, 40 against 35
- Maintenance & community, 91 against 83
- Transparency & trust, 85 against 71
Also in its favour
- Agent-ready, a grade of BB or better
Watch for
No OpenAPI file was found in the docs index. The APIs are described in reference pages only
Score by category
| Category | Weight this run | Elasticsearch | Vespa | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 62 | 80 | Vespa +18 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 88 | 58 | Elasticsearch +30 |
| Agent ergonomics | 13%16.2 | 77 | 80 | Vespa +3 |
| Security & auth | 14%17.5 | 72 | 75 | Vespa +3 |
| Payments & pricing | 10%12.5 | 35 | 40 | Vespa +5 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 83 | 91 | Vespa +8 |
| Transparency & trust | 7%8.8 | 71 | 85 | Vespa +14 |
| Negative events | ≤15 | -2 | -2 | |
| Total | 67.7 · B | 70 · BB |
Facts side by side
| Fact | Elasticsearch | Vespa |
|---|---|---|
| Kind | HTTP API | HTTP API |
| Vendor | Elastic | Vespa.ai AS |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | HTTP | HTTP |
| Auth | OAuth or key | OAuth or key |
| Pricing | Pay per use | Pay per use |
| x402 | no | no |
| Licence | AGPL-3.0, SSPL-1.0 or Elastic Licence 2.0 at the user's choice for most source. The x-pack folder is under Elastic Licence 2.0 only. Elastic Cloud is a proprietary service under Elastic's terms | Apache-2.0 for the engine, the Vespa CLI and pyvespa. Vespa Cloud is a paid hosted service |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-10-06 | 2026-10-01 |
| Terms last updated | couldn't be read | no document linked |
| Privacy policy last updated | 2026-09-07 | no date given |
| Customer content may train models | couldn't be read | |
| Terms restrict automated access | couldn't be read | |
| Terms restrict benchmarking | couldn't be read | |
| Terms or service can change without notice | couldn't be read | |
| Arbitration or class-action waiver | couldn't be read | |
| Popularity | 3.1M npm/wk, 7.8M PyPI/wk | 7.1k stars, 180k PyPI/wk |
Verdicts
Elasticsearch
Keyword, dense and sparse vector, and hybrid search with rank fusion sit behind one OpenAPI-described REST API, with API keys scoped to indices and privileges. The status page lists more than 20 incidents marked major since July 2026, and Elasticsearch 9.5.0 returned incorrect results for some queries without raising an error.
Vespa
Vespa Cloud publishes hourly unit prices, a 99.5% uptime agreement for paying customers and a trial with $300 of credits and no card. Every call needs an application package deployed first, no OpenAPI file was found in the reviewed documentation, and Vespa.ai says it has no official public MCP server.
Before you call either
Elasticsearch
- Send
Authorization: ApiKey <key>to the project's Elasticsearch URL. The MCP server is on the Kibana URL at/api/agent_builder/mcp - Create the MCP key with
feature_agentBuilder.readand only the index patterns needed, or the endpoint answers 403 - On 429, wait and retry with exponential backoff. Do not set short client timeouts, because a retried request joins the back of the queue
- Page past 10,000 hits with
search_after, notfromandsize - Tool calls made directly through the Tools API skip Agent Builder's confirmation prompts, so restrict the key instead
Vespa
- Deploy an application package with a schema before feeding or querying. Use
vespa deployand wait for the endpoint to report ready - Send a token as
Authorization: Beareronly to the endpoint marked Token. The mTLS endpoint needs the client certificate and key - Set
hits,offsetandpresentation.summaryon queries.hitsis capped at 400 by default and the query timeout defaults to 0.5s - On 429 from
/document/v1reduce the feed rate and back off. On 507 stop feeding, because the cluster is out of memory or disk - Use the
conditionparameter for test-and-set writes and expect 412 when it fails or the document is missing
Questions
Which is better for AI agents, Elasticsearch or Vespa?
Vespa scores 70 (BB) on agent readiness against Elasticsearch's 67.7 (B), and leads in 6 of 7 scored categories. Elasticsearch leads on schema & documentation.
Do Elasticsearch and Vespa need an API key?
Both take an API key or an OAuth sign-in.
Can an agent call Elasticsearch and Vespa without installing anything?
No hosted endpoint is listed for Elasticsearch. No hosted endpoint is listed for Vespa.
Are Elasticsearch and Vespa open source?
Yes. Elasticsearch is open source (AGPL-3.0, SSPL-1.0 or Elastic Licence 2.0 at the user's choice for most source. The `x-pack` folder is under Elastic Licence 2.0 only. Elastic Cloud is a proprietary service under Elastic's terms). Vespa is open source (Apache-2.0 for the engine, the Vespa CLI and pyvespa. Vespa Cloud is a paid hosted service).
Other comparisons with Elasticsearch or Vespa
- Chroma API + MCP vs Elasticsearch
- Chroma API + MCP vs Vespa
- Elasticsearch vs Epsilla Vector Database
- Elasticsearch vs LanceDB
- Elasticsearch vs Milvus and Zilliz Cloud API + MCP
- Elasticsearch vs Pinecone API + MCP
- Elasticsearch vs Qdrant API + MCP
- Elasticsearch vs Typesense API + MCP
- Elasticsearch vs Upstash Vector API + MCP
- Elasticsearch vs Weaviate API + MCP
- Epsilla Vector Database vs Vespa
- LanceDB vs Vespa
- Milvus and Zilliz Cloud API + MCP vs Vespa
- Pinecone API + MCP vs Vespa
- Qdrant API + MCP vs Vespa
- Typesense API + MCP vs Vespa
- Upstash Vector API + MCP vs Vespa
- Vespa vs Weaviate API + MCP
Machine-readable
- This page as Markdown
/compare/elasticsearch-vs-vespa.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/elasticsearch.json·/api/v1/tools/vespa.json - From a terminal
anchor compare elasticsearch vespa(the CLI) - Over MCP
compare_tools {"a": "elasticsearch", "b": "vespa"}at/mcp, no key