49: Delivering a Fluid User Experience in a Restaurant’s Online Ordering App

Published October 27, 2020
Run time: 00:24:35
Listen to this episode with one of these apps:

For a restaurant, a customer leaving with a bad taste in their mouth is the ultimate faux paus. And we’re not just talking about food. A stellar user experience when ordering from a restaurant’s app can be a differentiator in this competitive industry. Rob and Tim chat about their experience building a delivery app for a Midwest pizza chain, then take a trip further down memory lane to the hip days of AOL, floppy disks, AIM, and Space Jam.

In this episode, you will learn:

  • When a restaurant might consider building a custom delivery app
  • Where to look for UX inspiration
  • What payment integration options exist
  • The importance of finding the ideal flow to get customers in and out of the app quickly
  • Which features and integrations add complexity but also increase productivity
  • How to use push notifications to provide value to your customers
  • The interesting data you can gather from live order tracking

This episode is brought to you by The Jed Mahonis Group, where we make sense of mobile app development with our non-technical approach to building custom mobile software solutions. Learn more at https://jmg.mn.

Recorded October 2, 2020 | Edited by Jordan Daoust | Produced by Jenny Karkowski

Show Notes:

Episode Transcript:

Tim Bornholdt 0:00
Welcome to Constant Variables, a podcast where we take a non-technical look at all things technical. I'm Tim Bornholdt.

Rob Bentley 0:06
And I'm Rob Bentley. Let's get nerdy.

Tim Bornholdt 0:21
Today on the podcast, we're going to cover what it takes to build a delivery app for a restaurant. So obviously, Rob, you know, we've got COVID-19 going on. There's all kinds of issues with being able to eat inside a restaurant, so more and more and more people are taking to apps to order their food. So we figured on this show, on this episode, we can talk about our experience in building apps for restaurants, specifically, we've worked on an app for Green Mill, which is a chain of restaurants here in the Twin Cities and the Midwest. So we kind of know a little bit about it, and maybe we should talk about that. What do you think, Rob?

Rob Bentley 1:02
Well, yeah, I'm sure almost everyone has ordered delivery more than they would have through COVID-19. So just food delivery itself has been exploding. And a lot of times too, people have been using solutions like Doordash and Grubhub. That's not necessarily what we're going to be talking about here today. What we're going to be discussing and going over is if you wanted your own custom solution for getting food delivered from your restaurant.

Tim Bornholdt 1:32
And up front, we'll go through all the different things that is required to build an app like that. But one thing that we should probably just preface up front is, building a custom app is not cheap. And it's probably something we've preached a lot on this show. But if you're a restaurant, and there's so much struggling that's going on with a restaurant, throwing on a $100,000 app buildout is probably not the right way to go. This is probably more if you have a few restaurants or you can kind of spread the cost out across multiple, different locations that you have. That might be a better choice. You've got to kind of evaluate which one is right for you. And I would say this episode is geared towards those that are looking to build an app for maybe more of a chain of restaurants or something like that.

Rob Bentley 2:24
Yeah, there will be an upfront cost for this for sure, as opposed to going with Doordash and Grubhub. And you probably have to go with those too, because users are there. But what they take off is 20 to 30% of every order going through. So over time, it would definitely add up. And you can give your users and customers just a better experience by having an app that's tailored to your menu, what you offer and just your own branding.

Tim Bornholdt 2:55
And we have actually gotten into the weeds before about what it takes to build an app like Doordash or Grubhub, where you kind of have to have that three sided marketplace built out, where you've got yourself in the middle and you've got restaurants and you've got customers. So if you want more information about building those three sided marketplaces, we did that on a previous show. You can check that out in the show notes.

But why don't we just jump right in, Rob, and talk about just some of the tips and things we've learned over the years of building apps for restaurants. We can kick it off with where it all begins, is kind of the the user interface.

Rob Bentley 3:31
Yeah, what we've noticed is, apps for restaurants, they're going to be used by a wide variety of people, whether it's old or younger, or what have you. So we like to try to make the app very easy to use, big buttons on a screen where you have one of two options to go forward.

So the Green Mill app, for example, you start off on the home screen, and it says, "Do you want to take out or do you want delivery", just keeping it simple for people, and then just kind of walking them through the process of getting through the menu and getting everything ordered. So to get to a place where it's simple for a customer to use takes a lot of work up front to get that design just right.

Tim Bornholdt 4:12
And it helps to really look at a lot of different options, different apps that are out there and see in your particular niche, if you serve pizza, you might want to look at, say, well, obviously the Green Mill app, but also some of the bigger ones, like look at Domino's and Pizza Hut. Look at what they're doing, because they're definitely investing time and money into finding optimal interfaces. So you should look and see what other people are doing in your industry. If you have an Indian restaurant or Chinese restaurant, you know, there's different apps, different conventions service those different types of food. So, you know, pizza, for example. There's a lot of customization in a pizza. If you're going to just do a pizza from scratch, you need to have the ability to add on toppings and say less sauce or whatever, but if you have something like Five Guys where, yeah, I guess Five Guys is a bad example. But there's certain restaurants like Chinese food, there's not a whole lot of customization to Chinese food. You can say maybe you want it a little hot or not. But for the most part, your orange chicken is your orange chicken. So it might help to look at other interfaces of other apps that are in your industry to make sure that you're kind of doing it the right way.

Rob Bentley 5:20
Right, not only can you draw off the research, and time they've put into their interfaces, but it also gives your users an experience that they're used to with ordering that kind of food. So that's another benefit to it as well. When we were going through the process of doing the Green Mill app, we definitely took a lot of inspiration from what Domino's was doing, because I've always loved their app. It's really easy to use, really fast. And I've just had a great experience with it.

Tim Bornholdt 5:51
Yeah, I think Domino's, in the pizza app space, has been kind of the pioneers and the other apps, the other big chains have caught up. And I still think that Domino's holds a lead in my heart at least for the best UX for a pizza app. Again, second only to Green Mill.

Rob Bentley 6:09
Yeah, yeah. But we used that as inspiration.

Tim Bornholdt 6:15
Another thing you need to think about when you're dealing with a mobile app is how you're going to make money. And typically, that's done through credit card processing and other forms of payments. We've certainly had a lot of fun incorporating various POS systems and various payment methods through apps. More often than not, you already have a vendor, if you're running a restaurant, and you probably want to incorporate that. We as developers would probably prefer to use something like Stripe or a different service. But we kind of just use whatever you've already got at your disposal, and try to incorporate that in. But it really depends on whoever your vendor is, and whether they have a good enough API to do that.

Rob Bentley 6:58
Right. And if they do have a robust enough API, you can even include a very convenient way to pay, which is just using the Apple or Google Pay right on the user's phones. So all they have to do is authenticate with their face or their thumbprint, depending on which phone they have. And then you can just get a really easy payment going through instead of having to enter credit card numbers and stuff like that.

Tim Bornholdt 7:21
Yeah, it's much preferred from a user experience standpoint to just use your face, use touch ID, Google Pay. We were looking before the show, because we couldn't remember what it was called because Google's changed the name of their service so many times. And it's like Google Pay, G Pay, Pay with Google, Google Wallet. But whatever Google is, and then Apple Pay. It's good to incorporate those things. Because most apps incorporate those things now. And it's just easier for your user. And at the end of the day, the ideal flow for a user would be to get in and out and have their pizza ordered as fast as possible. So if they don't have to pull their card out of their wallet and type in the 16 numbers and the expiration date and the CVV and the zip code, just tap your thumb or push the button on the side of your phone a couple times, and it's done. That's so much easier.

Rob Bentley 8:14
Yeah, exactly. Another one of those kind of nice to have features is just little things too. Like I want to get through my ordering my pizza as fast as possible. When you have your own custom app, you can do things like have the app remember what they ordered last time, have it real simple for them to touch that. Because a lot of people order the same food every time. So you can just quick order it, get it through the system, then be done with it in a few seconds.

Tim Bornholdt 8:43
Yeah, that is like a nice advanced power feature move that we'll get to a little further in the episode. But yeah, I think that is one of the advantages to building a custom app, as opposed to something that you can maybe get off the shelf. Again, this is all dependent on size. And there's so many factors that go into whether a custom mobile app for your business is important. But that is one of those nice features that you can have, you can customize it, it can be a lot more streamlined for your user, which then hopefully will end up in your users buying more pizza.

Rob Bentley 9:15
Yeah. And going back to the thoughts of how you design your user interface to be friendly. Another challenge that you would have and that we would hopefully help walk you through is just how you're going to manage the actual data on the menu and making sure that that all makes sense for ordering and keeping track of things. Again, this can get kind of complicated depending on your menu structure, such as doing pizzas, you have build your owns and then you have half toppings and making sure the price is reflected for only doing topping on the left or right side and things like that. And then also giving different locations the ability to add their own specials per location instead of a company wide thing and it can get a little bit tricky.

Tim Bornholdt 10:04
Yeah, the bigger your organization is too, you know, if you're the size of Domino's or Pizza Hut, you've got thousands of chains around the country, and you probably don't want to get too specific. But at the same time, you know, the whole pizza game is coupons and deals, and you want to be enticing with those options. Again, if you're a different kind of restaurant, if you're a Chinese restaurant, or name any other type of restaurant, they might have different deals and different things that you would want specific per location. So that's one thing that we found to be an interesting challenge with building out the Green Mill app is managing those menus, especially if your food product has a lot of customization to it. All that customization needs to be managed somehow. Especially if you're going to charge per topping, is there a different cost for a topping that gets added to a medium pizza versus a large pizza? Are there differences in, like Rob was saying, different deals for different locations? Those are different aspects that you're going to have to keep in mind when you're designing out the back end to your app. And that's our job, obviously. But just something to keep in mind when your specking this out yourself is, how are you going to make that menu make sense, when you have so much variability in it?

Rob Bentley 11:24
Right. Not only that, but just giving different locations the ability to offer different rewards for loyalty points that you may have gained at a different store, keeping track of all that. There's a lot of, like I said, a lot of cool things you can do to keep your users engaged and your customers coming back to the app, but it does take quite a bit of work.

The other thing to consider too when having this kind of app built is sometimes your reward system is going to be with a different company. And then your credit card processing is with a different company, and maybe your menu hosting, you had maybe a website before. And now you want it to be a mobile app as well. So you'd have to work with all that data. And getting all of those different sources of data to talk to your app can add time and cost to it too, which kind of adds to the complexity of the whole thing.

Tim Bornholdt 12:18
Yeah, again, if it's one location and one store, it's not too challenging to keep track of all that. But as soon as you have a second location, and you want to have different abilities per location, then things get more complicated more quickly. And in technology, we always say that going from zero to one is one certain cost, and then going from one to two is a completely different cost. But as soon as you have the ability to go from one to two, then you pretty much have the ability to go from one to many. So as long as you spend the time upfront to understand what you want customizable in your app and on your website, then you can kind of build the system to be flexible to handle as you add on more locations and open more stores. You can easily add them into the app and also give them the ability to customize it for whatever makes sense for their local environment.

Rob Bentley 13:15
Going back to all the different integrations and all the different systems that have to work together, I probably left out the most important one, which is your POS system, getting data from either the website or the app. It all has to flow through the POS system so that everything can work in the restaurant like it should, like tickets printing up in the kitchen, and just making sure all the payments go through. And all of these things have to work together. So that is definitely part of the challenge too. Because the way you might enter in the menu would be different on the POS system versus how it's programmed to work in the app. But the challenge is really just getting all the data to be the same.

Tim Bornholdt 13:54
Oh, and real quick, POS, what is that?

Rob Bentley 13:58
Point of sale system.

Tim Bornholdt 13:59
So yeah, that'd be like you were saying, the little kiosks that they punch the orders into and the receipts come out and everything like that. There's a few different major POS systems that have integrations to them. But if you've had a restaurant for a while and you're using something older or out of date...

Rob Bentley 14:20
Like pen and paper.

Tim Bornholdt 13:54
Yeah, or like a fax machine. Things can be tricky to integrate with. So yeah, I think being able to have a good relationship with your POS vendor is super important from our perspective, because when we're building software, the whole point of software is to make people's lives easier. And while it's obviously critical to make your customer's life easier, we also want your life to be easier. And we've heard horror stories of restaurant chains that they sign up with one of those big food delivery services, and when a new order comes in, someone has to sit there with an iPad and translate the order into their POS system, like manually type it in so that it prints out a ticket and does all that. And it's like, what a pain. You already don't have time as it is.

Rob Bentley 15:16
Right during a lunch or dinner rush when you need that employee to be helping with guests or running food or whatever else they could be doing, they're sitting there just taking orders from a computer and putting them into your POS system. So if it's able to integrate with other services, like Doordash, or your own app, all the better to keep your productivity where it should be.

Tim Bornholdt 15:40
Another big thing that is useful for a food delivery app is the ability to send push notifications. Now this can be a little contentious, because if you look at the letter of the law at the App Store, especially, they say that you're not supposed to use push notifications for promotional purposes. But I mean, Apple uses it for promotional purposes all the time for themselves. So you're kind of like, Well, alright, I guess that makes it okay for us to do it. But either way, I mean, I get notifications from pizza places all the time saying, Hey, order now for $2 off or buy one, get one, or whatever. So having those push notifications in there can be pretty huge.

Rob Bentley 16:23
Right. And I'm sure they are able to get a lot more business by sending out those deals. And honestly, I like knowing if there's a deal going on. So those types of notifications, I definitely find useful. When it's coupons or promotions, or even maybe a new menu item like, yeah, I think that stuff is cool, depending on the restaurant. But another really good use for push notifications and a good reason to have those built is just letting your customers know the status of their order, like your order's received. I'm sure you've seen this before, but it's being cooked. Okay, it's done. Now it's on the way. It's just nice to be updated about the status of things, so you can kind of be prepared for when the food actually arrives to you.

Tim Bornholdt 17:05
Exactly. And that goes back to kind of the cardinal rule of push notifications. Push notifications need to provide value. And it needs to provide some solid value, not like kind of a Silicon Valley BS type of value with air quotes. You basically get one chance to spam somebody and send them something they don't want. And then the notifications get turned off. So if you want notifications to work as intended, then you actually have to provide like a good coupon and not just like, Hey, we're having pizza today come buy it. It's still the same price as it always is. Those kinds of promotions, like I get those sometimes where it's like, Hey, it's national treat yourself day, so why don't you treat yourself to a pizza. It's like, without a coupon attached to it. Like I don't need to know it's national treat yourself day. I want a pizza half off. That's what I really want.

Rob Bentley 18:00
But then I get paranoid about turning off the notifications because I don't want to not get the ones I need. So I kind of get trapped into those.

Tim Bornholdt 18:08
Yeah. And that just leads to a poor experience. Right? More often than not, if an app does that, like I said, for me, they get one chance. And if they send a push notification that is garbage, or if they do it, I guess maybe I give them one chance, maybe I give them two chances. But if you start to see a pattern where they're sending them irregularly, and they're just sending out more garbage than gold, then they get turned off. And then you feel bad that you miss something. But I'd rather miss something like, Hey, your pizza is being cooked. I can just open the app and check it again. I guess I don't really need a push notification for that.

Rob Bentley 18:45
Annoying push notifications would definitely leave a bad taste in my mouth. And that's not what you want when you're a restaurant.

Tim Bornholdt 18:52
Yeah, you don't want anything that tastes bad. Which I guess that leaves us with our last tip around restaurant apps. There's a lot of things you can do. We kind of just covered the basics, right, of just being able to open an app, place an order, then customize the items on it. But there's so many things, like you brought up before of like reordering with one tap, order your last order, or we haven't even touched on what it takes to do the live order tracking of track your pizza in real time as it leaves the store and whatnot.

Rob Bentley 19:25
Yeah, to be able to do that you have to have a system robust enough to let a lot of your employees, different people pushing in what is the status now. So the cook in the kitchen has to be able to say, Okay, now it's cooking. Okay, now it's done. And then the delivery driver has to say, Okay, I've got the food. Now it's been delivered. So just having all of that data flowing nicely, it's a really helpful tool for your customers and they're really going to appreciate it but it does take a lot of work to get a system like that set up. And then people actually have to use it. But once you do, it works really well. And then also, another really cool feature that you'll see on a lot of apps is just being able to track the delivery driver on a map so you can see when they're getting close, and even sending a push notification, like, Hey, your driver is one minute away. Get ready to go get your food. It's super helpful.

Tim Bornholdt 20:25
And having all that data, like you said, it is kind of a pain for your employees to do that, especially if they're used to not doing it. But if you're trying to scale up your operation, having that information of tap this button when the pizza goes into the oven and tap this button when it comes out. You can do some really interesting things with that data, of like just customer satisfaction of maybe more customers like your pizza cooked an extra minute longer. And it gives it a little bit of a different taste or maybe pizzas with this type of topping take this much longer to cook. Like there's just really interesting insights that you could get when you actually are tracking that data and also tracking your drivers. You can get interesting data from that approach as well.

Rob Bentley 21:14
Yeah, the analytics, just all that is amazing what you can get once you have all of these data systems in place. And then you can make really good decisions on how to improve your operation.

Tim Bornholdt 21:25
And you can't get that with a non custom app. So that's another, well, maybe you can, but we'll just say you can't.

Rob Bentley 21:34
It's not as easy.

Tim Bornholdt 21:36
And it depends on what you're paying for. If you're only paying 50 bucks a month for an app, it probably doesn't have all that stuff with it. So that's just another feather in the cap for building custom software. Any final thoughts on building a food delivery app, Rob?

Rob Bentley 21:52
Well, it's kind of like any other app, you have to keep at it. It can get really tenuous, especially as you're testing the menu and just making sure all those different interactions work right. But once you have it in place, it's a great thing and your customers are going to love it. I only like to order using apps whenever I can. I have gotten used to not even liking picking up the phone to call a restaurant. It feels weird when I have to do that now if I can't just click a few buttons and order food and have it come to me.

Tim Bornholdt 22:25
Oh yeah. And there's something about a difference between an app and a website too. It just feels so much more professional when you're able to present your business as an app as opposed to a website, like telling someone to go on a website and and look at this, like there's a couple pizza places in the Twin Cities that have these kind of older looking 90s websites. And they bolted on top of it things like live tracking and those more advanced features, but it's still like, Why is this not an app? It doesn't make any sense.

Rob Bentley 23:00
It almost looks like it's MS DOS in the background and you're just like what is going on?

Tim Bornholdt 23:05
It's like I'm going to check out the Space Jam website and then I'm gonna order a pizza. And I'm going to hit up some AOL chat rooms.

Rob Bentley 23:11
Play some Yahoo chess.

Tim Bornholdt 23:13
Well, that's about it for this episode. Show notes for this episode can be found at constantvariables.co. You can get in touch with us by emailing Hello@constantvariables.co I'm @TimBornholdt on Twitter and the show is @CV_podcast. Today's episode was produced by Jenny Karkowski and edited by the urbane Jordan Daoust.

If you have one quick minute before you leave, I know Rob personally would love it if you left us a review on the Apple Podcast app. How happy would you be, Rob, if someone left a review for us about this episode on the Apple Podcast app?

Rob Bentley 23:49
I'd be tickled pink.

Tim Bornholdt 23:51
Oh my goodness. It really doesn't take much time at all and it really does help new people find our show and it tinkles Rob pink. Did I say tinkles?

Rob Bentley 24:01
Yeah, you did. That sounded more weird.

Tim Bornholdt 24:05
I'm hanging out with four year olds and one and a half year olds too much, saying tinkles. Just whatever, head to constantvariables.co/review and we will link you right to where you need to be.

This episode was brought to you by The Jed Mahonis Group. If you are looking for a technical team who can help make sense of mobile software development, give us a shout at jmg.mn.