Grubhub for Drivers: Take a Pause

Discovery

We hear from drivers regularly that although driving for multiple delivery services is the best way to maximize their income, they prefer driving for GH because their perception is they have the most earning potential with us. In addition to paying our drivers more, we’re always looking for ways to add value to the partnership, while balancing the supply needs of our markets.

One of the ways we add value is by allowing drivers to ‘pause’ their shift for a brief period of time. Of course, as independent contractors they can clock out whenever they choose. But pausing allows our dispatching algorithm to keep track of where the driver is during their break, whereas clocking out makes us blind to the driver’s location. This means that pausing puts the driver in the best position to receive lucrative orders when they return from a pause, and it puts Grubhub in the best position to keep track of available driver supply.

The additional benefit to the driver is they have time during a shift to use the restroom, fill up on gas, feed their cat, or whatever they choose.

Driver experience map

During discovery we identified three scenarios where pause functionality would be introduced:

  1. I’m clocked in and I’d like to take a pause while not actively working on a task

  2. I’m clocked in and I’d like to give heads up that I’ll be taking a pause after my active task is completed

  3. I’m clocked in and I’d like to take a pause while I don’t have any tasks scheduled for the next 30 mins


    Plotting these use cases alongside the delivery journey helped me call out a few pain points that could arise. Namely, I knew that we’d have to put logic in place so that drivers don’t receive new orders during their break time, or receive any advance orders after they’ve indicated they intend to pause after their current task.

    I also knew we needed to make the time period configurable. We were launching the feature as a 10 minute break, but wanted the flexibility to change that later based on feedback we get from drivers and data we collect on market impact.

Logic of a pause

How does a break work exactly? Once a driver has clocked in and delivered for two hours, they’re able to ‘take a pause’. They can choose to take it then, or wait till later. Once they’ve taken it, the two hour timer restarts from the beginning.

Methodology

Once any questions around driver journey and feature logic were answered, I started looking at user flows and how this feature might fit into the architecture of the existing app. Here, I decided it’d fit the driver’s mental model best if it were in close proximity to where they’d be clocking in. I also solidified how we’d keep the driver updated on what is happening at each stage of the pause. We’d display a state change when the pause is initiated, and communicate what happens next when the pause ends.

Userflow for scenario 1

I took some time here exploring different ways of displaying a module for the entry point, playing around with variations in layout, alignment, typography, iconography and form. I decided to go with a simple card UI as this would be most familiar to our drivers and in line with other areas of the app. We included an animation of a coffee cup to add a moment of delight to the experience and illustrate one of the many ways a pause could be used.

UI exploration for pause module

Solution & Outcomes

When the feature was first released, our data told us drivers were initiating pauses and ending them voluntarily before the time was up. We assumed this was due to it being a new feature and drivers wanting to ‘press the button’ to see what it does. Adoption data tells us around 15K pauses are being initiated per week by our drivers. Ideal next steps would be digging into the driver mindset a bit more to understand how they’re using the breaks and whether the length needs to be adjusted.

Final userflow

Figma prototype