Cities needed different rules, but exposing every configuration equally made setup harder.
Promotions
Designing a flexible way for cities to create parking promotions while preventing discount misuse.
Problem
Discount parking was being used as a loophole.
Consumers could repeatedly use free or discounted parking instead of transitioning to paid sessions, creating revenue loss and dissatisfaction among key city clients.


The solution had to work for cities and drivers.
The existing workaround created friction on both sides:
Finding the right balance between speed and flexibility.
I initially explored templates to make promotion setup fast, but usability testing revealed a tradeoff: predefined promotion types couldn’t accommodate the different rules cities needed.
Instead of choosing between speed and flexibility, I reorganized the experience around the most common settings while moving less frequently used controls into Advanced Settings.
Flexible for cities.
Seamless for drivers.
Admins could define promotion value, reset behavior, paid-parking behavior, eligibility, location sharing, and other rules through a flexible configuration model.
The consumer experience made promotion redemption part of the normal parking flow, removing the need to wait for a promotion to expire or remember another location code.



From repeated free sessions to zero.
Flexibility works best when complexity is intentional.
Common settings stayed accessible while advanced controls remained available when needed.
Preventing promotion misuse required coordinating Admin configuration with the consumer redemption experience.
Premier Bays
Bringing annual parking into the PayByPhone app for UK motorists.
VIEW CASE STUDY →