Skip to content

Build Not yet confirmed elsewhere1 publisher 2 min read Published

Uber Eats halved search time through many fixes, the largest around 200 ms

Uber Eats halved its search wait with no single change worth more than about 200 ms, a DEV Community summary of Uber Engineering's post says. The biggest saving came after Uber started timing the first fully drawn screen on the phone.

The Engineer · Build desk

Send a correction

Illustration accompanying Uber Eats halved search time through many fixes, the largest around 200 ms
Generated illustration
Uber Eats' search savings came from separate changes Time saved by separate changes to Uber Eats search, per a DEV Community summary of Uber Engineering's post.

Time saved by separate changes to Uber Eats search: removing slow word-matching retrieval strategies, about 120 ms; splitting hydration, more than 100 ms; request hedging, 40 ms; removing false dependencies, about 35 ms.

Uber Eats' search savings came from separate changes
FigureValueNoteClaim
Slow word-matching retrieval strategies removed120 ms, about8
Split hydration100 ms, more than10
Request hedging40 ms12
False dependencies removed35 ms, about11

What happened

  • Under the new clock the first problem was plain: the server built every result, one card at a time, before it sent any of them.
  • Uber now sends a small first page, caches the rest for scrolling and renders cards concurrently; together the two changes brought the first screen more than 200 ms sooner.
  • Dropping several slow, broad word-matching retrieval strategies that added little saved about 120 ms, by deleting code.
  • Splitting hydration into ranking and presentation fetches that run in parallel was worth more than 100 ms.
  • Request hedging, which resends a stalled shard's request to another copy and keeps the first answer, saved 40 ms.

Why it matters

  • What it limits constraint Backend response time stops before the network trip, card building and photo loading, so a dashboard built on it cannot show where this kind of saving comes from.
  • What it costs cost Reaching the cut took at least eight separate changes across page delivery, retrieval, hydration and ad scoring, so there is no single ticket to schedule.
  • Who has to decide decision Before copying request hedging, a team has to confirm the call is a read, because duplicated writes need idempotency keys first.

Uber's own engineers called the old search untenable [1]. The post's claim is that no single change saved more than about 200 ms, and some saved twenty [2]. This account comes from a DEV Community summary of the post Uber Engineering published in September 2026 [3]. The summary does not give a baseline latency in absolute milliseconds, so the list cannot be checked against the halving.

The summary puts figures on eight savings [18]. Added as if each were exact, they come to about 685 ms [17], and the first-page change is about 29% of that [19]. The total is loose. Several figures are "more than" floors, and savings on parallel paths do not add.

Hedging has the clearest conditions. A search fans out to many shards and is only as fast as the slowest one [15]. If a shard misses a time limit, Uber sends the same request to another copy and takes whichever answer comes back first [12]. The post says this works because the stalls were isolated, one shard at a time [12]. It is safe because hydration only reads [13]. We'd expect it to backfire where slow shards are slow from overload, since the duplicate request adds load. The post's case covers the isolated stall only.

Most of the other fixes remove work a later stage never used. Ranking no longer waits for prices it never reads [10]. The catalog is fetched once per product, and grouped that way it is roughly 100 times smaller [9]. Ad scoring reads one field across every bid, so Uber stores bids as columns [14]. Each of these needs someone to trace which fields the next stage actually reads. That tracing is the adoption cost.

For the numbers to transfer, a pipeline needs fan-out across shards and stages that fetch more than the next stage reads. The measurement change needs neither. In our view it is the part to copy first, because the new clock is what pointed Uber at the first-page fix [16].

What to watch

  • Whether Uber Engineering's own post gives baseline and final latencies in absolute milliseconds, so the list can be checked against the halving.
  • Whether Uber reports how much extra shard load request hedging adds when stalls are not isolated.
  • Whether the full post lists further changes after the ad-auction fixes.

Clarity's read

What the record supports and how the coverage leans. The claims behind it follow.

Reality

Evidence45
Adoption
Not scored
Hype gap+8
Incentives30
Confidence50
Why these scores

Claim ledger

Ranked by verification strength, evidence, and original report placement.

  1. [1]

    Uber Eats search had gotten so slow that Uber's own engineers called it untenable; Uber then cut the wait in half.

    Reported Supported Source: DEV Community summary of Uber Engineering's postView cited source
  2. [2]

    No single change saved more than about 200 milliseconds; some saved twenty.

    Reported Supported Source: DEV Community summary of Uber Engineering's postView cited source
  3. [3]

    Uber Engineering published every change behind the speedup in September 2026.

    Reported Supported Source: DEV CommunityView cited source

Get this ledger inside ChatGPT. Ask about any of our stories and the answer brings its figure, each claim’s verdict and the sources. Free, no account.

Add to ChatGPTAdd to Claude

Sources

1 independent publisher whose own reporting we read for this story.

  1. dev.to

    1 article · October 16, 2026

    How Uber Eats Halved Search Time With No Big Fix

Share your take

Let Clarity write the post for you.

Signed-in readers get a short post drafted on this story in the register they choose — narrative, analytical, or a direct position — editable to the last word before it goes anywhere. The share buttons at the top of this story work without an account.

Topics and entities

Follow any of these and your For You feed starts watching them — no settings page required.

Topics

  • Search infrastructureFollow
  • Tail latency and request hedgingFollow
  • Latency optimizationFollow
Loading related stories