How It's Made

Building Instacart Pickup

Instacart

Instacart

Jan 14, 2020

What happens when you fold a customer into your last mile?

By: Kevin Henrikson

I’m driving with my family from San Mateo to Juniper Lake for a camping trip. I need to stock up my cooler on the way, but I want to make sure we get to our campsite before it gets dark — it’s a long drive. I don’t have the time to shop at my regular grocery store, so I open up my Instacart app to see if any store along my route is offering curbside pickup with the new Instacart Pickup product. I pick my store of choice along Interstate 80, fill up my cart, and follow the in-app prompts to my designated pickup parking spot.

The experience is powered by a ton of new features we packed into the app including:

  • “Pick Your Pickup” UX that lets customers easily view and select the pickup location most convenient to their route.
  • Smart Storefronts that adapt to location-specific store inventories.
  • Opt-in, location-based alerts that allow customers to let the shopper know when they’re on the way and getting close.
  • Customized navigation and prompts which sends customers to the mapping app of their choice, automatically directing drivers from their current location to the store. As a customer nears a store, we send them prompts in real-time to guide them to the handoff location.
  • Send a Friend or Family Member which lets customers share their order details with friends and family to delegate pickup to another driver. Place the order and send a friend to pick it up!

While Pickup and Delivery products share a lot of the same technological DNA, Pickup flips the script of the typical delivery service model, folding the customer into the fulfillment chain’s last mile. When you involve the customer in the fulfillment flow, it presents a bunch of really interesting technical challenges for engineering and product teams.

Building a dynamic storefront

In our Delivery product, we identify a store location to deliver from based on the items a customer puts in their cart. With Pickup, customers choose their exact store — not just the actual retailer but the exact physical location of the store they want to pick up from. This prompted us to build a storefront that changes from location-to-location to reflect store-specific inventories.

When a pickup customer selects a store along their route, they’ll see location-specific inventories as they fill up their cart.

Our Item Availability model underpins this dynamic storefront. It relies on a combination of historical found/not-found rates, inventory data, and other inputs to predict whether the customer’s preferred items are in stock at any given store location along the customer’s route.

Sticking the landing

In contrast to the passive, one- and two-hour delivery windows available in our Delivery Product, with Pickup, customers participate in a choreographed curbside handoff. Even the smallest hitches and delays are magnified if you’re on the road with a kid in the car seat behind you, trying to get to a campsite before dark. We rely on a host of machine learning models, geolocation technologies, and in-app prompts to nail the second-by-second hand-off.

In-app prompts guide customers to designated curbside pickup areas.

Once a customer selects their store of choice and completes their order, our Drive Time model looks at historical transit times to estimate how long it will take a customer to arrive at the store. We’ve traced rings of geofences around each pickup-eligible store. If a customer with location-based alerts enabled crosses the fence, we’ll adjust the minute-to-minute arrival time.

We rely on historical fulfillment data to calculate just how long it can take someone to get in and out of store parking lots — we like to call this the “Parking Model”. This is especially useful for pickup customers in crowded urban centers vs. customers in suburban or rural stores with wide-open parking lots. From the data, we can see it takes longer to get through a parking lot on a crowded Sunday in downtown Los Angeles than it does in suburban Orange County, CA.

Even though Pickup and Delivery are two different products and experiences, the orders are being fulfilled by the same set of shoppers, and we’ve built an Order Prioritization model to choreograph the hand-off. The model organizes incoming orders in a shopper’s queue based on historical fulfillment data.

If a customer crosses a geofence, we will bump the pickup order to the top of a shopper’s queue, alerting the shopper that it’s time to make the handoff.


We’ve built the revamped Pickup to scale up in the future — Instacart Pickup is now live in 30 states, and we expect it to be in all 50 states over the next year. We also expect to more than double the number of Pickup stores on the platform this year.

Want to help us evolve Instacart Pickup, our fulfillment chain, and last-mile logistics? Our Product and Engineering teams are hiring! Check out our current openings.

*Learn more about Engineering at Instacart on our Tech blog.

Instacart

Instacart

Instacart is the leading grocery technology company in North America, partnering with more than 1,400 national, regional, and local retail banners to deliver from more than 80,000 stores across more than 14,000 cities in North America. To read more Instacart posts, you can browse the company blog or search by keyword using the search bar at the top of the page.

Most Recent in How It's Made

One Model to Serve Them All: How Instacart deployed a single Deep Learning pCTR model for multiple surfaces with improved operations and performance along the way

How It's Made

One Model to Serve Them All: How Instacart deployed a single Deep Learning pCTR model for multiple surfaces with improved operations and performance along the way

Authors: Cheng Jia, Peng Qi, Joseph Haraldson, Adway Dhillon, Qiao Jiang, Sharath Rao Introduction Instacart Ads and Ranking Models At Instacart Ads, our focus lies in delivering the utmost relevance in advertisements to our customers, facilitating novel product discovery and enhancing…...

Dec 19, 2023
Monte Carlo, Puppetry and Laughter: The Unexpected Joys of Prompt Engineering

How It's Made

Monte Carlo, Puppetry and Laughter: The Unexpected Joys of Prompt Engineering

Author: Ben Bader The universe of the current Large Language Models (LLMs) engineering is electrifying, to say the least. The industry has been on fire with change since the launch of ChatGPT in November of…...

Dec 19, 2023
Unveiling the Core of Instacart’s Griffin 2.0: A Deep Dive into the Machine Learning Training Platform

How It's Made

Unveiling the Core of Instacart’s Griffin 2.0: A Deep Dive into the Machine Learning Training Platform

Authors: Han Li, Sahil Khanna, Jocelyn De La Rosa, Moping Dou, Sharad Gupta, Chenyang Yu and Rajpal Paryani Background About a year ago, we introduced the first version of Griffin, Instacart’s first ML Platform, detailing its development and support for end-to-end ML in…...

Nov 22, 2023