Why does the MyMacca's app perform so poorly after so many years?
Deep breath.
I have many years in software testing. I have tested many a video game. I have helped build android and ios apps. I have persevered through Crash Bandicoot: Wrath of Cortex loading screens on PS2. I have waited hours for Unity 3D builds. All of these things I have patience for... Yet, every time I use the MyMacca's app, I met with frustration, confusion and overall, a sub-par quality application.
Android
My first experience with the app was back in 2020, during the Monopoly craze, or the craze that I'd rather forget. Essentially when you purchase meals, your items each contain a sticker to peel off. Each sticker maps to a Monopoly board street name (just like the board game), for example: collect street x, y & z to get a bag of hardware tools for your DIY project. To check which street you obtained through your ticket, you would use the app to enter your ticket code and you'll see if your number is a street, a soft-serve cone or nothing.
This sounded amazing, especially back during COVID lock-down times. However, each time I would launch the app, it was abysmally slow. The app could not handle rendering the confetti, Monopoly board, mystery box, animated characters all at once, instead delivering a jarring experience not fit for modern times. Each time I would provide my code number to check if I won a prize or not, 8/10 times my app would freeze and I'd have to quit the app entirely. Kill the app, or wait for the UI to update 1 frame per second to handle a red, rotating box. All for a bloody toolbox that I never won because that elusive 3rd street ticket was impossible to acquire.
For me, this was experienced across multiple android devices and each time I thought "no it can't be real, this is not real". It was, and still is.
I'd like to say I wish I had video recordings of the Android sluggishness, but thankfully I do not. I deleted my account and had not used the app at all for several years.
iOS
Now, here I am in late 2025, using the MyMacca's app as it turns out the meal rewards are pretty decent for what I typically purchase (sausage egg muffins, chocolate muffins and hotcakes). You would think, 5 years later, the app would becoming sleek, capable, top notch. Sad to say folks, even on iOS, the 'beautiful, user friendly platform', this app is still giving me problems.
Issues found
A white space in a menu title. I would never let this void escape my eye, but it seems the MyMaccas's team let this one out. Some can live with this, I cannot.
?!
A wild & appeared
Hmm, a wild encoded & has appeared, or rather a &. This smells like failed string escaping or decoding.
That's deep bro
Now this was laughably annoying. To register a new device using email verification, the steps involved are:
- Launch app and enter email to register device
- Receive email to register the device using login URL
- Open the url to launch into your default browser:
- If the app is installed, it'll deeplink into app & now you're logged in
Sounds acceptable. At this point, I've closed my Firefox browser after deeplinking into the app. I've ordered, used my rewards for a free Hot Fudge Sundae, etc, all done.
However ... afterwards if I launch Firefox to continue browsing other web junk, the behaviour is to re-open the most previous tab (being the URL login page from step #3 above). Now it would automatically fire the MyMacca's deeplink logic again! Meanwhile the iOS app has already analyzed the deeplink previously, so it thinks "hey, I've already been passed this deeplink action, I can't run it again". Acceptable action? Immediately log out the existing user session. That's right, logged out, by a log in deeplink.
To resolve this, I had to ensure my browser (Firefox) remains open during the whole device authentication flow and once I've been authenticated into the app, safely close the deeplink Firefox tab. Banishing it to the nether realm.
I haven't used the iOS app too much yet, and these were the most visually impacting issues I could find during my 1-2 hours of using the app.
Performance
So far, the app has moments of lag. It's not as bad as 2020 Android levels thankfully. It's just not as snappy or as smooth as other modern apps. Or maybe I don't use eCommerce/Retail apps enough and maybe this performance is common place?...
Most UI elements render placeholder objects whilst data is dynamically fetched for the respective screen. This is fine, Youtube does this, and so too does Gears of War on Xbox 360.
Scrolling through the Order menu list produces janky behaviour. This is also evident when navigating back & forth between tabs. The Home tab also has this lag on first load. I won't lie, as soon as I saw that happen, I immediately lowered my expectations of a 10/10 app (not that I could do better at this time, though I wonder if I could create MyMacca's using Flutter? I'll note that down).
App reviews
Looking at the respective iOS & Android app reviews, the sentiment seems to be shared. Here are highlights I want to share:
your app is bad and your developers should feel bad. take away their crayons for a couple of days
Constantly freezes, doesn't take payment, we've had many issues. Logs you out constantly. How does such a huge company have such a terrible app that they don't fix?
The most pathetic app a big business could develop. Never able to login quickly when needed, app needs restarting or either clearing cache every single use, and so slow to operate that you'd be quicker to use I store kiosk or just order at counter. A huge dissatisfaction that ruins the Mac as experience!
Totally agree. The overall quality is just not that good for a company & brand as large as McDonald's. First impressions count, and ever more so when you're dealing with people's finances (and stomachs).
Closing thoughts
Phew, that was nice to finally share. Saying that, these are areas I would improve on given my Android & iOS experiences so far:
- improve data management when fetching & rendering data
- tidy up the transitions of modals and revisit the general UI layout + font sizes
- please, please move those buttons that are aligned to the extreme bottom of the screen & full width, they are horrible to interact with
- reduce or prevent entirely the lag when navigating between tabs & screens
- the iOS app is 380 MB, that seems excessive. What is being fetch & what is stored locally? Could help with overall performance
I've been curious about this app's success since 2020 and hope that the issues identified (by myself and countless others) are eventually resolved. Now, where did I leave that Sundae...