Case study

Caviar app


The meal delivery industry has become a staple of life for many Americans, whether you’re getting food delivered or are the one delivering it.

There are just a handful of major players in the space, but I chose to take a deeper look into Caviar as it was recently acquired by DoorDash.


The first thing you see when you open the app is often a promotional modal.

There is no clear way to get out of it other than tapping outside. This may work to get people to tap to “Order now” and take advantage of the promotion, but it feels a bit gimmicky.

After tapping out of the modal you see your home screen. The actions you can take without scrolling from top to bottom:

  1. Edit Delivery Location
  2. Express Reorder
  3. Browse Only on Caviar
  4. Browse Free Delivery

1. Edit Delivery Location

Editing delivery location is pretty critical as everything beneath it will change depending on what’s in your area.

2. Express Reorder

Being able to quickly reorder a previous delivery is pretty helpful as a quick action. This convenience seems like it would help retain repeat customers.

3. Browse Only on Caviar

Promoting what makes Caviar different, this seems like a reasonable call to action. It’s an attempt to make the experience feel more exclusive.

4. Browse Free Delivery

Free delivery is definitely a perk people will take. Although, if the business depends on delivery I’m not sure how this works with the bottom line. It would be interesting to see how many people who opt for locations with free delivery also order from locations that require paid delivery. And, if putting this category higher up helps to continuously bring people back to the app.

Express Reorder

Confirm Your Address
When you tap to reorder a previous delivery, the app prompts you to confirm your delivery location. Since this is a quick action, it’s helpful to explicitly reconfirm important information early on to avoid any mistakes or confusion.

Upon confirmation you can edit your order or proceed to check out. I opted to take a look and potentially edit an order. In this case, if someone wanted to remove the selected item, the first thing you see is quantity, so the first attempt may be to change the quantity to 0. However this isn’t an option. You must tap Remove From Cart in order to remove it.

This UX is a bit confusing as the styling of the Remove From Cart text is very similar to the names of the items in your cart on the previous screen. When quickly going between the two it’s easy to gloss over the Remove From Cart text. There’s probably room to have a more differentiated Remove From Card button or allow users to change their quantity to 0.

This screen is quite nice as its layout is consistent with the previous screens. You can see a receipt of your order before officially submitting the oder. And, upon submission you can see the status of your order. Being able to cancel from this screen is helpful as well.

Order status

After submitting an order, you can track its progress in the app. What’s also helpful is that you get text updates on what’s happening with your order.

Just because you’re not in the Caviar app anymore doesn’t mean the experience ends there though. Most of these messages are helpful, but for a short time Caviar would send a message that sounded almost threatening when your order arrived.

“Your courier has arrived! 🙌 Please call 3531234567 to connect with your courier, or your order may be forfeited. For more info, visit

There’s a few things to note about this text. Why is it the customers responsibility to contact the courier? The courier can call or text when they arrive. They certainly have your number. When you think about a traditional pizza delivery how would you feel if you had to call the delivery person instead because they didn’t want to ring the doorbell?

Also, “your order may be forfeited” sounds like Caviar doesn’t care about helping people receive their orders. Anything can happen, but a message like this closes off any hope of good customer support. It’s not unusual for orders to get stolen as well, so this messaging only adds onto that frustration.

It seems like Caviar has since removed this last message, which was a good call. Fixing the mishaps that can happen along the physical delivery process can’t be fixed with a passive aggressive text message.

Delivery times

Based off of the reviews it seems that the area with the most room for improvement is being able to more accurately predict delivery times, offer a better delivery experience, and improving quality of customer support.

These seem like wildly complicated problems. Looking at the reviews for Postmates and Uber Eats (both with a 4.8 rating on iOS), they both suffer from the same issues. Although, these things are all related.

1. Predicting delivery times

Delivery times are probably a combination of how long it takes to:

  • prepare the food
  • assign an available courier
  • courier travel time to restaurant, plus parking
  • travel from the restaurant to the delivery location, plus parking

With the right algorithms it seems like it would be possible to offer the right delivery times. Even pad them a bit so that the experience feels like your delivery came early. Although, if everyone saw a two hour delivery estimate that’s also a turn off. I wonder if the delivery times are intentionally optimistic to optimize the beginning of the funnel, with the trade-off being inaccurate at times at the last step of the funnel (delivery).

2. Better delivery experience

The delivery experience ultimately relies on fast delivery times. Although, there are some operational challenges around restaurants not being to respond to orders fast enough and couriers putting in minimal effort to ensure they hand off deliveries to the right person.

From a user perspective it would make a lot of sense to be able to somehow mark the quality of service based on the restaurant (time it takes to prepare food, order correctness) and the quality of service based on the courier (effort to deliver to the correct person).

From a restaurant and courier perspective that sounds quite awful, there needs to be some incentive to strive for providing a quality experience. I would want to test how to best do that. Perhaps instead of tips users can pay what’s fair for the delivery, and have it appropriately allocated to the courier and restaurant based on the service. Tips are basically the same concept, but tips in the US are viewed as a requirement. The expectation is to leave a minimum tip even if you had a bad experience. The goal is to reward restaurants and couriers for good experiences and create a positive environment as opposed to negative recourse for bad experiences.

There’s probably a lot of room for exploration here as all the major delivery services struggle with this. To really tackle the problem you’ll likely need a solution that’s radically different from the current model.

3. Customer support

This one is tough. But, people often go to customer support when they have a bad experience. Addressing the inaccurate delivery times and delivery experience would actually resolve the majority of the existing complaints.

Without more research on specific examples of poor customer service it’s hard to tell how this can be improved upon.


All in all the Caviar app is pretty easy to use. It’s fairly consistent and the design is solid with just a few areas for improvement. It’s not a surprise that the overall delivery experience is the weakest link. That’s not unique to Caviar, and whichever one of the major players in the space figures that out may end up taking the lead.