Back to Blog
    benchmarkvector-searchqdrantendee

    Endee vs Qdrant

    Cover image for Endee vs Qdrant

    When we set out to build Endee, we made one promise: best-in-class performance without compromise. Not theoretical performance - real, reproducible numbers on standardised benchmarks that anyone can run.

    So we did exactly that. We ran Endee head-to-head against Qdrant on the industry-standard VectorDBBench framework, using the Cohere 1M dataset at 768 dimensions - the same setup used to compare vector databases across the ecosystem. The results were decisive.


    Test Setup

    All tests were run under identical infrastructure conditions to ensure a fair comparison.

    ParameterQdrantEndee
    Hardware4 vCPU / 16 GB RAM4 vCPU / 16 GB RAM
    DatasetCohere 1M vectors, 768DCohere 1M vectors, 768D
    Benchmarking ToolVectorDBBenchVectorDBBench
    Precisionfloat32int16

    Note on precision: Endee uses int16 quantisation by default. This is not a shortcut- it is a deliberate architectural choice that compresses memory footprint by ~2x while actually improving throughput and latency, as the numbers below demonstrate.


    Benchmark 1: Recall at ~250 QPS

    The first test measures how accurately each database returns the correct nearest neighbours at a sustained query rate of ~250 QPS, across multiple Top-K values.

    Recall vs Top-K

    Top-KQdrant RecallEndee RecallEndee Advantage
    150.99190.9987+0.68%
    300.99170.9984+0.67%
    500.99100.9976+0.66%
    1000.98700.9944+0.74%

    Endee delivers higher recall across every Top-K value tested. The gap widens at Top-K=100, where precision matters most - for applications like recommendation engines, semantic search, or RAG pipelines that need to surface a broad candidate set reliably.

    At Top-K=100, Endee's recall of 99.44% versus Qdrant's 98.70% may look like a small margin- but at production scale, that 0.74% difference translates directly to relevance quality for your end users.


    Benchmark 2: QPS vs Concurrency (at ~97.3% Recall)

    This test holds recall constant at ~97.3% for both databases (97.30% for Qdrant, 97.32% for Endee) and measures how many queries per second each system can serve as concurrent load increases. This is the throughput test - the one that determines how far your infrastructure can scale before you need to add more nodes.

    QPS vs Concurrency

    ConcurrencyQdrant QPSEndee QPSEndee Advantage
    266.81646.949.7×
    4127.171,270.6310.0×
    5146.191,348.519.2×
    6183.361,435.877.8×
    8281.021,675.896.0×
    16605.102,086.833.4×
    24605.692,185.583.6×

    Endee sustains up to 10× higher QPS than Qdrant at equivalent recall. At low concurrency (2–5 threads), the gap is the most dramatic - Endee is already handling 646–1,348 QPS while Qdrant is still in the double digits. Even at peak concurrency (24 threads), Endee delivers 2,185 QPS vs Qdrant's 605 - a 3.6× advantage.

    This matters enormously for cost efficiency. Higher QPS per node means you need fewer nodes to serve the same production traffic, directly reducing your infrastructure bill.


    Benchmark 3: P99 Latency vs Concurrency (at ~97.3% Recall)

    Throughput tells you how much work a system can do. Latency tells you how fast each individual user experiences it. This test measures P99 latency - the worst-case response time experienced by the slowest 1% of queries - as concurrency scales.

    P99 Latency vs Concurrency

    ConcurrencyQdrant P99 LatencyEndee P99 LatencyEndee Advantage
    249.9 ms3.7 ms13.5×
    449.9 ms3.7 ms13.5×
    549.0 ms3.8 ms12.9×
    650.4 ms3.7 ms13.6×
    849.8 ms3.9 ms12.8×
    1649.1 ms3.8 ms12.9×
    2449.3 ms3.7 ms13.3×

    Endee's P99 latency is ~13× lower than Qdrant's, and it stays flat as concurrency grows.

    Qdrant's P99 latency hovers between 49–50 ms across all concurrency levels - which means it hits a latency ceiling early and never improves. Endee, by contrast, maintains sub-4 ms P99 latency consistently from 2 to 24 concurrent threads. This is the signature of an architecture built for low-latency access patterns, not one that degrades gracefully under load.

    For latency-sensitive applications - real-time recommendations, AI copilots, fraud detection, in-game search - the difference between 3.7 ms and 49.9 ms is the difference between a seamless experience and a noticeable pause.


    Summary: Endee vs Qdrant at a Glance

    MetricQdrantEndeeWinner
    Recall @ Top-10098.70%99.44%✅ Endee
    Peak QPS (concurrency 24)605 QPS2,185 QPS✅ Endee (3.6×)
    Peak QPS (concurrency 4)127 QPS1,271 QPS✅ Endee (10×)
    P99 Latency (any concurrency)~49–50 ms~3.7–3.9 ms✅ Endee (13×)
    Latency stability under loadFlat ceiling at ~50 msFlat floor at ~3.7 ms✅ Endee

    Why Does Endee Perform This Way?

    These results come from deliberate architectural decisions, not hardware tricks:

    • int16 quantisation: Endee's default int16 precision reduces memory bandwidth pressure significantly compared to float32, enabling faster in-memory operations without sacrificing recall - in fact, improving it.
    • Optimised HNSW implementation: Endee's graph traversal engine is built from the ground up for high-concurrency workloads, avoiding the bottlenecks that appear in standard HNSW implementations at scale.
    • Memory efficiency: Endee's 10× lower memory footprint (compared to competitors) means more of the index fits in cache, reducing cache-miss latency at query time.

    Get Started with Endee

    If you're running vector search at scale and these numbers are relevant to your architecture decisions, we'd love to talk.