Role
Designer, Researcher
Team
2 designers
Timeline
4 weeks
Tools
Figma
GO train uses a pay-by-distance fare system — the more riders ride, the more they pay. This requires riders to tap off their PRESTO card at the end of their trip but if they forget, they are charged the full trip (up to $20 more than their actual trip)
As a UX design intern at PRESTO, I designed and pitched a mobile app proof of concept in four weeks. Riders can track their trip in real time, receive reminders to tap off, and tap off their PRESTO through the app. This helps riders not only recognize but recover missed tap offs .
SKIP TO THE FINAL SOLUTION
⋆ ˚。・*⋆
200,000+
missed tap offs a month
2/3
of missed tap-offs are never reported to the call centre and unresolved
Only 30%
of riders report there's clear instructions of when to tap on and off
Overcoming user research constraints
As a UX designer, I knew I needed to understand the "why" through our users but due to budget constraints, I couldn't conduct user interviews. That's when I turned to platforms like Reddit, where riders shared their frustrations for missed tap offs.
50+ posts later and what did we discover?
All to say, riders didn't realize they needed to tap off in the moment, and when they tried to resolve their missed tap offs, they experienced many pain points
⋆ ˚。・*⋆
💡
How are others solving the problem?
PRESTO is unique in requiring riders to tap on and off, but I wanted to see how other transit systems were empowering their riders.
10+ analyses later and what did we discover?
⏳
Real-time alerts and reminders
Riders rely on timely notifications to navigate their journey. Leading transit apps deliver real-time tracking and feedback to users.
🔗
Self-serve capabilities
Riders' journeys are often fragmented. Leading transportation apps connect riders' journey into one seamless flow and offer self-serve capabilities to stay in control from start to end.
👁️
Clean and clear visuals
On the go, riders are busy and distracted. Leading transit apps use clean layouts and clear visuals so riders can focus and find the information they need at a glance.
⋆ ˚。・*⋆
What does success look like?
Then, I ideated solutions across the user journey and design goals, presenting them to my manager to prioritize. In the end, we had 10 features we wanted to tackle!
⋆ ˚。・*⋆
Mapping features to the users flow
From our ideation, we defined the features and ideated different flows for the best user experience. The key features are highlighted in yellow.
Then, it was finally time to dive into design! I started with the key features first, then worked my way to the supporting features.
Riders are often distracted during their trip, and to make matters worse, the current tap off reminders were audio only and therefore easy to miss on noisy trains.
But what if we had non-audio reminders?
✅
I designed a visual trip tracker that displays real-time trip status and reminds riders to tap off right from their phone
What's the best way to deliver real time reminders?
I explored different displays before deciding on a widget, for its ability to customize and deliver instant updates without requiring riders to open the app.
1) In-app reminders - not selected
❌
Visible only in the app, requires riders to be signed in at all times
✅
Visual real-estate
2) Notification reminders - not selected
❌
Limited visual real-estate
✅
Visible on the lock screen, doesn't require riders to be signed in at all times
2) Widget reminders - selected, yay!
✅
Visual real-estate
✅
Visible on te lock screen, doesn't require riders to be signed in at all times
✅
Clear call to action (CTAs)
Recover from missed tap offs with tap offs in the app
2/3s of missed tap offs are unreported and therefore unresolved. To reduce the number of missed tap offs, riders need a way to resolve them on their own. The problem was that by the time riders realized they’d missed their tap off, they were already too far from the station.
But what if riders could tap off anywhere?
✅
I designed a self-serve tap-off feature that detects when riders miss a tap off and reminds them to tap off in the app. This helps riders recover from missed tap offs before being charged the full fare.
What's the best way to integrate in-app reminders and tap offs in the app?
I didn’t want riders to go through a completely new flow and since the only information required was their departure and arrival stations and times, I realized this could be collected through the trip planning flow. However, I discovered major usability issues with the trip planning flow.
How do riders plan their trips?
🧠
But the current trip planning flow did not align to riders mental model. Instead, riders were forced to plan their trip based on train line but not everyone knows or remembers the line of their station
Before
A more intuitive way to plan your trip
✅
I redesigned the trip planning flow to be more intuitive, reflecting how riders actually plan their trip, by selecting arrival and departure stations and times or by saved trip as a shortcut. From there, riders can search and start their trip - it's that simple!
After
How might we help riders feel less overwhelmed?
I wanted to make the most of the trip tracker feature to resolve riders' pain points. One key pain point was that riders were overwhelmed when there were delays and cancellations.
While we can't change cancellations or delays, how they're communicated can make all the difference. Through research, I discovered that riders often coordinate trips with friends and family. To reduce the stress from constant check-ins, I designed a feature that lets riders share their trip in real-time.
Before
❌
Low visibility; lack of colours and icons
❌
Poor readability; placement of the reminder doesn't align with riders' reading pattern
After
✅
Reminder at the top with colours and icons draws attention and prompts action
✅
Info on payment devices provides contextual details for new riders
⋆ ˚。・*⋆
Bringing all the designs together into the final flow

To start, riders plan their trip based on their departure and arrival station and time.

Next, riders select the trip they want to start and can toggle between map or non-map view, depending on their preference.

Riders can view their trip progress on their lock screen, viewing details like estimate time of arrival and transfer window.

Lastly, if riders forget to tap off, the app will detect a missed tap off and prompt them to tap off in the app.
⋆ ˚。・*⋆
What did I learn?
⚙️
Designing within systems
It's not about how well I design a feature, but how well it fits into the existing system, and importantly, riders' mental models. For this reason, I designed beyond a tap off feature but for the entire end-to-end journey.
🚧
Designing with constraints
Since this was a proof of concept, the project came with many constraints—limited budget, time, and team members. I learned to make the most with what I had, even if that meant conducting user research without users!

















