DoorDash uses LLMs and RAG to infer grocery preferences from restaurant order history
New DoorDash grocery and convenience customers had no shopping history, creating a cold-start problem where relevant item recommendations could not be generated at the start of their journey in a new vertical.
How it works
Common implementation structure
How this type of workflow is generally built, generalized across documented cases — not tied to any one vendor's stack. Click any stage to read what happens there. Specific products that implement these stages appear in “Tools commonly seen” below.
Stage 1 · Order history tag aggregation
Historical restaurant orders are represented using descriptive dish, dietary, and cuisine tags aggregated by recency and frequency to distill user preferences.
Tools used
LLMsRAGK-NNTTEMTML
Outcome
After launching the first version of the LLM-powered carousel, DoorDash observed statistically significant improvements to order penetration for both convenience and grocery, while the hybrid pipeline achieved approximately 10,000 times cost savings per run compared to the naive approach.
What failed first
A naive approach of feeding each customer's full restaurant order history and the entire grocery taxonomy directly to an LLM caused context bloat, hallucinations, and degraded output quality, and at DoorDash's scale could incur seven-figure costs per full run.