
Making Fleet Management Self-Serve
Streamlining how fleets onboard, manage, and pay

Context
Helping fleet managers take control of their vehicle programs.
Fleet managers had little autonomy. Even simple actions like adding a vehicle or making a payment required emailing ops, which slowed down customers and created avoidable operational load on the team.
The Challenge
Less than 1% of revenue, but a disproportionate drain on ops time.
The fleet program was generating less than 1% of revenue but draining a huge chunk of ops time. Everything was manual, including billing, management, and onboarding. Four main pain points emerged from research:
- No self-serve sign-up flow
- No way to verify vehicles were being washed
- No clear billing history access
- No centralized way to manage multiple fleets
My Approach
Four phases from zero to launch, research through QA, with tight collaboration across design, product, and engineering.
User and stakeholder interviews, plus competitive analysis of Motive, Quiky, and Spot Free to understand how fleet managers expect to work.
Task flows, JTBD framework, wireframes, and mapping automation opportunities to reduce manual ops work.
Figma prototypes, design walkthroughs, and real-world scenario testing to validate flows before build.
Three full QA rounds, partnered closely with devs, catching nav font inconsistencies and onboarding logic bugs before launch.
Research
I talked to fleet managers before I designed anything.
Before touching pixels, I spent time with the people who would actually use this. In conversations, the same pain points kept coming up: they couldn't sign up on their own, had no visibility into billing, couldn't confirm whether a wash actually happened, and had no single place to manage multiple fleets.
“I wish I could sign up on my own without calling.”
Fleet manager
“It’s hard to track what I’m being charged for.”
Fleet manager
“I have no idea if the cars are actually getting washed.”
Fleet manager
“Managing multiple fleets is chaotic and unorganized.”
Fleet manager
To understand how these issues showed up in their day-to-day, I mapped the full user journey.
| Entry & application | Onboarding | Dashboard use | Vehicle management | Continued engagement | |
|---|---|---|---|---|---|
| Activity | Fills out application | Logs in for the first time | Views fleet stats | Adds and manages vehicles | Checks metrics regularly |
| Emotion | Curious → hopeful | Motivated → slightly unsure | Confident → informed | Focused → accomplished | Efficient → satisfied |
| Opportunity | Surface common actions upfront | Auto-save progress | Add tooltip context | Personalize by fleet size | Surface trends over time |
Key Decisions
Engineering challenged the 4-step onboarding, wanting to simplify to just login + payment.
I walked the team through the UX tradeoffs around trust, abandonment, and mental model mismatch. The final approach removed the Team Invites step, cut redundant inputs, and pre-populated fields.
Testing revealed a mismatch between what the buttons said and what they actually did.
Users tried bulk-activating mixed-status vehicles, but actions often did nothing because some vehicles were already active. The real fix was working with engineering to filter actions dynamically, so the buttons only ever do what's actually possible.

V1: no feedback

V2: smart filtering
Final Experience
Vehicle & membership management
Centralized check-in history and mix-and-match membership types across every vehicle.

Multi-fleet management
Add and manage multiple fleets under one account, billed automatically through Stripe.

Fast, shortcut-driven dashboard
Key stats and shortcuts to your most common tasks, right on load.

Design System
Built a full design system to ensure consistency across the portal.
As the MVP scaled, I scoped and led a shared component library and token foundation so design and engineering stayed aligned on every new screen.
View the Fleets Portal Design System case studyOutcome
This wasn't a redesign, it was a full build from zero.
Impact came from clearing real operational pain points and building trust. Fleet managers needed to feel confident managing their programs without a safety net from ops.
Reflections
Start simple, stay flexible
The onboarding compromise proved that protecting UX principles doesn't require fighting engineering, it requires finding the shared goal.
Small wins matter
Pre-populated fields and removing redundant steps felt minor in design reviews but made a measurable difference in onboarding completion.
Collaboration is everything
Three QA rounds with engineering caught issues no design review would have surfaced. Close partnership from wireframes through launch made the difference.