Self-initiated, Solo project

Goal: The aim of this redesign was to bring consistency and clarity to Rapido’s interface by building a foundational design system, refining the core ride-booking flow, restructuring the Profile section’s information, and improving the overall UI to improve usability, reduce friction, and strengthen user trust.

Bringing clarity and consistency to Rapido's cab booking experience and profile menu.

Bringing clarity and consistency to Rapido's cab booking experience and profile menu.

Bringing clarity and consistency to Rapido's cab booking experience and profile menu.

Bringing clarity and consistency to Rapido's cab booking experience and profile menu.

by Prakhar Sharma

by Prakhar Sharma

by Prakhar Sharma

Self-initiated, Solo project

Goal: The aim of this redesign was to bring consistency and clarity to Rapido’s interface by building a foundational design system, refining the core ride-booking flow, restructuring the Profile section’s information, and improving the overall UI to improve usability, reduce friction, and strengthen user trust.

Background

I’ve always been a loyal Uber user, to the point where I don’t even compare prices with other apps. This is mainly because of my bias for clean, well-designed products and companies that prioritise user experience.

But during a trip to Kolkata, I kept hearing everyone talk about Rapido. Almost everyone I met said they use it every day because the traffic is intense and bike rides are simply faster. And honestly, you could see it, there were Rapido bikes everywhere.

I checked Uber and saw that they also offer bike rides there (something I rarely see in Mumbai), but people still preferred Rapido. That got me thinking. So after coming back to Mumbai, I installed Rapido to see what the hype was about, and I noticed, the prices were lower, and rides were available almost instantly on Rapido.

But the one thing I noticed right away was that the app didn’t feel as thoughtfully designed. It worked fine, but the design clearly wasn’t a priority. That’s when I started thinking: What if I tried redesigning it?

Old home screen

01

The hamburger menu feels too vague

The hamburger menu feels too vague

The hamburger menu works, but it doesn’t really communicate what’s inside. For a screen that’s already quite busy, having a clearer entry point to settings, profile, and help could make things easier for users.

02

The search bar doesn’t get enough attention

The search bar doesn’t get enough attention

The search bar is the main reason someone opens Rapido — to type in where they’re going. It’s placed right at the top (which makes sense), but it’s small and easy to overlook, especially for newer users who don’t have recent locations yet. The colorful icons below it end up grabbing more attention than the primary action.

03

The “Go Places with Rapido” section feels unnecessary

The “Go Places with Rapido” section feels unnecessary

This section doesn’t feel very helpful in the context of booking a ride. Most users already know where they want to go when they open the app, so surfacing landmarks or suggestions adds visual noise without improving the experience.

04

The service icons feel slightly outdated

The service icons feel slightly outdated

The icons get the job done, but they could use some modernizing. A fresher, more consistent icon style would make the overall UI better.

Apart from these points, the screen also has quite a bit of uneven spacing and padding. The icon sizes don’t feel consistent either, which makes the layout look slightly unbalanced. Overall, the hierarchy isn’t very clear.

New home screens

For new users

With recent searches

With saved places

Improvements

01

Friendly greeting

Friendly greeting

A simple “Hey” with the user’s name adds a small touch of personality. It feels warm without trying too hard, and gives the screen a friendlier start.

02

Profile avatar instead of a hamburger menu

Profile avatar instead of a hamburger menu

A profile avatar makes it much clearer where the user should go for their settings and account info. It’s more noticeable than a hamburger icon and reduces the guesswork.

03

A more prominent search bar

A more prominent search bar

The search bar is now not only the first thing you see, but also sized in a way that feels natural and hard to miss. The larger greeting above it improves reachability on bigger devices and guides the eye cleanly down into the main action.

04

Saving frequent destinations

Saving frequent destinations

Users can now quickly save their home or work address with dedicated buttons. Once a destination is searched, a large, easy-to-tap icon appears instead of a tiny heart. This makes saving locations far more intuitive.

05

Updated service icons

Updated service icons

The icons have been redesigned to be more consistent and modern. They match the overall visual direction and help the interface feel more cohesive.

06

Cleaner parcel banner

Cleaner parcel banner

The parcel banner now has a cleaner, lighter design with green highlights for the coupon code and a clearer CTA button. It feels less intrusive and blends better with the new layout.

Overall, there’s now more breathing room across the screen, and interactive elements are larger and easier to tap. The layout feels more intentional, and the hierarchy guides the user much more naturally.

Planning the trip

Old

Redesigned

Improvements

01

Better title

Better title

“Let’s plan your trip” feels more helpful and sets clearer context compared to just “Drop.”

02

Better reachability and visibility

Better reachability and visibility

Elements are grouped more naturally. The add-stop button sits in a more intuitive spot, and the “For” toggle (who the ride is for) is now easier to access.

03

Consistent with the new home screen

Consistent with the new home screen

This screen follows the same design principles as the home screen: more white space, larger interactive elements, consistent spacing, and cleaner typography.

Ride selection

Old

Redesigned

Redesigned

Redesigned

Improvements

01

A more accessible primary action

A more accessible primary action

Rapido uses yellow for their primary CTA, but yellow is an accessibility issue when it comes to UI, so I switched the main action button to blue (a color the old UI already used in places) because it’s more readable, more accessible, and still feels consistent with the brand.

02

Better layout for savings and coupons

Better layout for savings and coupons

In the old design, the savings section was split: the coupon code sat at the bottom while the explanation sat above. Since the best coupon is automatically applied anyway, the user doesn’t need to interact with it often.

I simplified the structure: The top area is now dedicated to coupon information, and the bottom area focuses solely on payment methods. Cleaner, less mental load, no unnecessary tapping.

03

Cleaner trip details and add-stop interaction

Cleaner trip details and add-stop interaction

The old “Add stops to drop your friends” banner felt too loud and unnecessary. A simple plus icon next to the trip details does the same job with less distraction. The trip summary is also cleaner and easier to read at a glance.

04

Quick sorting tabs for easier decisions

Quick sorting tabs for easier decisions

I added simple sorting tabs like Recommended, Faster, and Cheaper at the top. These help users make quicker choices without scrolling or comparing manually, especially useful when prices are close.

In addition to these changes, integrated the new vehicle icons to match the style, and the old screen sometimes showed an extra line of information (Quick bike rides) under each ride option. I created a version that includes this line if needed (3rd screen), but the design works even without it.

New payment selection screens

Default state

Cash only

Unavailable method state

The payment screen had to support different scenarios, so I designed three clear states: the normal view with multiple payment options, a cash-only state for rides where the captain handles payments directly, and a state where certain methods are unavailable. Each version keeps the same structure, spacing, and interaction pattern, so the experience feels consistent even when the options change.

Finding a ride

Old

The old “finding a ride” screens keep things simple, which is good, The segmented progress bar communicates system status clearly and helps make the wait feel less frustrating. But there are a couple of issues.

01

No quick way to cancel

No quick way to cancel

Users can’t “undo” or cancel without opening trip details. This creates friction in a moment where control should feel simple.

02

Ad placement steals attention

While ads are important for Rapido’s business model, as that's maybe what allows them to keep prices low compared to competitors. But the execution feels intrusive and could be integrated in a much subtler, more thoughtful way.

Selecting pick-up spot

Redesigned

Finding a ride

Finding a ride

Finding a ride

Redesigned

I redesigned the status header to be more functional and informative. It now includes the vehicle icon so the user instantly knows which ride type is being booked, along with a clear status message that updates as the system progresses. I also added an estimated wait time, which helps set expectations and reduces uncertainty.

The cancel button is now fixed at the bottom, giving users a clear and immediate way to exit without digging into trip details. Speaking of which, trip details are placed lower in the sheet and appear as the user scrolls, a more natural interaction at this stage.

The ad is intentionally positioned between the status header and the trip details. This way, it still gets visibility without feeling intrusive or competing with essential information. It can also scale to multiple ads if needed, placed either horizontally or vertically without breaking the layout.

Ongoing trip

Old

Pick-up screen

Pick-up screen

Pick-up screen / Captain details

Pick-up screen / Captain details

Pick-up screen / Trip and payment details

Pick-up screen / Trip and payment details

Pick-up screen / Cancel ride

Pick-up screen / Cancel ride

Captain arrived

Captain arrived

Trip started

Trip started

Trip started / Captain details

Trip started / Captain details

Trip started / Trip and payment details

Trip started / Trip and payment details

Trip started / More

Trip started / More

*Scroll

Improvements

01

More informative header

More informative header

The header stays fixed at the top of the sheet and is designed to keep all essential information easily accessible. It shows everything the user is most likely to look for: estimated arrival, how far the captain is, and the ride PIN clearly in large, clear text so it never gets lost in the layout. Once the ride begins, the header updates to reflect the current state, showing the estimated arrival time.

02

Clearer captain / vehicle information

Clearer captain / vehicle information

The captain and vehicle details are much more prominent, with the captain’s name, rating, and contact options. They are now paired with a picture of the actual vehicle and the number plate, making it easier for the user to identify their ride quickly. Once the ride starts it is updated to show a quick option to tip the captain later.

03

Better sheet layout

Better sheet layout

Trip details, payment information, and support options are placed lower on the sheet, while the cancel option remains at the bottom as the least-accidental action. Ads are again placed between two important sections, after the main information above and before secondary details, ensuring visibility without getting in the way.

04

Cleaner and more spacious layout

Cleaner and more spacious layout

I followed the same principles from the rest of the project: larger tap targets, clear hierarchy, generous white space, consistent spacing.

Feedback

Old

Redesigned

Redesigned

Redesigned

Improvements

01

Calmer layout

Calmer layout

The old feedback flow worked, it showed the essential information and used progressive disclosure, with detailed feedback tags appearing only after interaction but the final screen felt visually busy with long text lines, emojis, and multiple elements fighting for attention. The redesigned version is much more organized, making it easier to focus on one action at a time.

02

Clear payment summary upfront

Clear payment summary upfront

Payment information is now shown clearly instead of being tucked away. This helps users instantly confirm an important information without hunting for details.

03

Quick option to contact the captain

Quick option to contact the captain

I added a direct “Contact captain” option for situations where users might have left something behind. This removes the need to dive into the Help section and solves a common post-ride worry.

04

Lighter, more readable feedback tags

Lighter, more readable feedback tags

After the user gives a rating, the feedback tags appear with a cleaner visual style. They’re easier to scan, less overwhelming, and more relevant to real ride experiences.

And finally, I added a dedicated step for tipping the captain, making it simple for users to show appreciation to the captain.

Alternative second screen, to skip tipping as a third step

Alternative second screen, to skip tipping as a third step

Profile menu

Old

The old menu felt like a long list of items placed together without any clear structure. This forces users to slow down and make more decisions than they need to. So I reorganized the entire section based on how people would look for information.

The Parcel shortcut didn’t belong here. It’s a service, not a setting, and it already exists on the home screen. The Safety section was purely informational, so I paired it with Help to create a single “Help & Safety” space instead of scattering related information.

Rapido Coins and Rewards also had overlapping purposes: one shows how coins work, the other shows what you’ve earned. Combining them into a single “Rewards & Coins” section makes that relationship clear.

I also expanded the Profile section. Instead of showing only personal details as in the old design, it now holds more user-specific settings like Power Pass, insurance claims, refer code and payment methods. Grouping these under Profile reduces clutter in the main menu and makes these options easier to find. Overall, these changes create a cleaner, more intentional information architecture with fewer decisions and much clearer grouping.

Redesigned

Improvements

01

Fewer options, easier decisions

Fewer options, easier decisions

The menu now has fewer items and clearer grouping, so users don’t have to scan a long list or remember too many choices. It feels lighter and much easier to navigate.

02

Dynamic “latest trip” shortcut

Dynamic “latest trip” shortcut

A shortcut at the top gives users quick access to “Help” or details to their most relevant trip. It can adapt to show the most recently completed trip, an ongoing trip, or even an upcoming scheduled one, making it useful and informative.

03

Status badges for quick attention

Status badges for quick attention

I added small badges to highlight new information or areas where the user’s attention is needed (like new rewards or unread notifications).

04

Cleaner and more spacious layout

Cleaner and more spacious layout

Consistent spacing, updated icons, bigger titles and fewer dividers make the screen easier to scan and visually calmer.

My profile

The profile page now includes all user-specific settings instead of scattering them across the menu. Saved locations, payment methods, Power Pass, insurance and claims, and even log out/delete account have been brought here from the general settings page, since they’re tied directly to the user rather than the app. The referral card is also highlighted for visibility, and the layout feels more organized overall.

Rewards and coins

The “Always use Rapido coins” toggle is the only functional option from the original Rapido coins settings, so it stays right below the coin balance. Rest was just information on how they work which can be accessed by clicking on the coin balance card. Below that, we can have the vouches that the users earned as they were in the Old Rewards screen.

This merges the previous sections of “My Rewards” and “Rapido Coins” without losing their functionality.

Help and safety

Similarly the Safety Center, which previously lived separately in the menu, is now combined with the Help section to create a single place for anything related to support and safety. The Help Center holds all FAQs and help topics, while users can also check their active or past support tickets or start a new chat with support. Recent activity is listed at the bottom, making it easy to quickly revisit a trip if something went wrong. Bringing these two areas together reduces the number of settings and makes it easier for users to know exactly where to go when they need help.

App settings

The old settings page mixed profile-related options with general app settings, which made it harder to understand what actually belonged here. Since items like Profile, Saved locations, Log out, and Delete account now live inside the Profile section, the settings page becomes much more focused. I reorganized the remaining items by moving all notification and communication toggles under “Preferences” outside, keeping informational items like Privacy Policy and Terms under “About,” and placing everything else under “Others.” This makes Preferences much easier to access.

Redesigned screens

Home - New user

Home - New user

Home - Recent searches

Home - Recent searches

Home - Saved destination

Home - Saved destination

Trip planner

Trip planner

Ride selection

Ride selection

Ride selection - Extended

Ride selection - Extended

Payment methods

Payment methods

Payment methods - Cash only

Payment methods - Cash only

Payment methods - Disabled

Payment methods - Disabled

Set pick-up

Set pick-up

Finding ride

Finding ride

Finding ride - Extended

Finding ride - Extended

Connecting with captain

Connecting with captain

Pick-up

Pick-up

Pick-up - Captain details

Pick-up - Captain details

Pick-up - Trip and payment details

Pick-up - Trip and payment details

Pick-up - Support and cancel ride

Pick-up - Support and cancel ride

Captain arrived

Captain arrived

Trip started

Trip started

Trip started - Captain details

Trip started - Captain details

Trip started - Trip and payment details

Trip started - Trip and payment details

Trip started - More

Trip started - More

Feedback - Rating

Feedback - Rating

Feedback - Comments

Feedback - Comments

Feedback - Tipping

Feedback - Tipping

Profile menu

Profile menu

Menu - Profile

Menu - Profile

Menu - Profile - Extended

Menu - Profile - Extended

Menu - Rewards and coins

Menu - Rewards and coins

Menu - Help and safety

Menu - Help and safety

Menu - App settings

Menu - App settings

Menu - App settings - Extended

Menu - App settings - Extended

*Scroll

Design system

The existing Rapido design had quite a few inconsistencies with spacing, color, icons ect. So before redesigning the screens, I created a simple design system to bring everything together. It focuses on keeping the UI consistent while also improving accessibility, especially with colors and spacing.

Foundations

01

Colors

Colors

Primitives

Core

Semantics

02

Layout

Grid

Spacers

Corner radius

4 point grid; Columns: 4; Margin: 16px; Gutter: 16px

03

Typography

Display

Display

Weight:

Semi-bold

Size:

44

Line height:

52

Display

Weight:

Semi-bold

Size:

44

Line height:

52

Display small

Weight:

Semi-bold

Size:

36

Line height:

44

Headings

Heading

Weight:

Semi-bold

Size:

24

Line height:

32

Heading

Weight:

Semi-bold

Size:

24

Line height:

32

Heading small

Weight:

Semi-bold

Size:

20

Line height:

28

Labels

Label large

Weight:

Medium

Size:

18

Line height:

24

Label medium

Weight:

Medium

Size:

16

Line height:

20

Label small

Weight:

Medium

Size:

14

Line height:

16

Label xsmall

Weight:

Medium

Size:

12

Line height:

16

Label large

Weight:

Medium

Size:

18

Line height:

24

Label small

Weight:

Medium

Size:

14

Line height:

16

Label medium

Weight:

Medium

Size:

16

Line height:

20

Label xsmall

Weight:

Medium

Size:

12

Line height:

16

Paragraphs

Paragraph large

Weight:

Regular

Size:

18

Line height:

28

Paragraph medium

Weight:

Regular

Size:

16

Line height:

24

Paragraph small

Weight:

Regular

Size:

14

Line height:

20

Paragraph xsmall

Weight:

Regular

Size:

12

Line height:

20

Paragraph large

Weight:

Regular

Size:

18

Line height:

28

Paragraph small

Weight:

Regular

Size:

14

Line height:

20

Paragraph medium

Weight:

Regular

Size:

16

Line height:

24

Paragraph xsmall

Weight:

Regular

Size:

12

Line height:

20

Display - Mono

Display

0123456789

Weight:

Semi-bold

Size:

36

Line height:

44

Display

0123456789

Weight:

Semi-bold

Size:

36

Line height:

44

Headings - Mono

Heading

0123456789

Weight:

Semi-bold

Size:

24

Line height:

32

Heading

0123456789

Weight:

Semi-bold

Size:

24

Line height:

32

Heading small

0123456789

Weight:

Semi-bold

Size:

20

Line height:

28

Heading small

0123456789

Weight:

Semi-bold

Size:

20

Line height:

28

Label - Mono

Label large

0123456789

Weight:

Medium

Size:

18

Line height:

24

Label medium

0123456789

Weight:

Medium

Size:

16

Line height:

20

Label small

0123456789

Weight:

Medium

Size:

14

Line height:

16

Label xsmall

0123456789

Weight:

Medium

Size:

12

Line height:

16

Label large

0123456789

Weight:

Medium

Size:

18

Line height:

24

Label small

0123456789

Weight:

Medium

Size:

14

Line height:

16

Label medium

0123456789

Weight:

Medium

Size:

16

Line height:

20

Label xsmall

0123456789

Weight:

Medium

Size:

12

Line height:

16

03

Elevation

Shadow above

Shadow below

Elevated icons

*using primary border for elevated UI

03

Icons

Phosphor icons

They provide a vast library of high-quality icons, ideal for modern user interfaces. This ensures consistent and appealing icons throughout the interface.

Size

xsmall

16x16

small

20x20

regular

24x24

large

28x28

Weight

regular

light

filled

Components

01

Button (CTA)

The primary CTA is reserved for the primary action on a screen, which keeps the hierarchy clear and reduces decision fatigue. For this, the best practice is to limit the primary CTA to one per screen. (Maximum two by using secondary color)

I switched the button color from Rapido’s yellow to a more accessible blue. The new color passes contrast guidelines and is easier to spot against light surfaces.

Shape

The button is also the only fully rounded element in the entire interface. This helps with the hierarchy and draw users’ attention. I increased the padding as well, making it a larger and more comfortable touch target.

Together, the color, shape, and spacing make the CTA more noticeable, more readable, and more accessible

Hierarchy

large

Text:

Label large

Vertical padding:

20px

Horizontal padding:

Fill width

Icon:

NA

regular

Text:

Label medium

Vertical padding:

16px

Horizontal padding:

Fill width

Icon:

NA

small

Text:

Label small

Vertical padding:

12px

Horizontal padding:

16px

Icon:

Available

Icon size:

xsmall

Gap:

8px

xsmall

Text:

Label small

Vertical padding:

8px

Horizontal padding:

12px

Icon:

Available

Icon size:

xsmall

Gap:

8px

*trailing icon available for size small and xsmall to increase affordance

Styles

Primary

Secondary

Disabled

Destructive

Success

Icon only

small

44x44

regular

48x48

large

52x52

Primary

Secondary

Regular

02

Text buttons

Text buttons are used for low-priority actions or secondary navigation, things that shouldn’t compete with primary or secondary CTAs.

Hierarchy

regular

Text:

Label medium

Height:

20px

xsmall

Text:

Label xsmall

Height:

16px

large

Text:

Label large

Height:

24px

small

Text:

Label small

Height:

16px

regular

Text:

Label medium

Height:

20px

large

Text:

Label large

Height:

24px

xsmall

Text:

Label xsmall

Height:

16px

small

Text:

Label small

Height:

16px

03

Tags

Tags are designed to be flexible components, similar to Chips in Material Design. They adapt to different contexts, acting as filters, radio-style selectors, or simple labels. The visual identity stays consistent, but I use background color, borders, and icons as clear affordance cues to show whether a tag is interactive or not.

Hierarchy

large

Text:

Label medium

Vertical padding:

12px

Horizontal padding:

16px

Icon size:

small

Gap:

8px

regular

Text:

Label medium

Vertical padding:

8px

Horizontal padding:

12px

Icon size:

small

Gap:

8px

small

Text:

Label small

Vertical padding:

8px

Horizontal padding:

12px

Icon size:

xsmall

Gap:

8px

xsmall

Text:

Label xsmall

Vertical padding:

4px

Horizontal padding:

8px

Icon size:

xsmall

Gap:

8px

Styles

Default

Positive

Warning

Info

04

Alerts

Hierarchy

large

Text:

Paragraph large

Vertical padding:

12px

Horizontal padding:

16px

Icon size:

large

Gap:

12px

regular

Text:

Paragraph medium

Vertical padding:

12px

Horizontal padding:

12px

Icon size:

regular

Gap:

12px

small

Text:

Paragraph small

Vertical padding:

8px

Horizontal padding:

12px

Icon size:

small

Gap:

8px

xsmall

Text:

Paragraph xsmall

Vertical padding:

8px

Horizontal padding:

8px

Icon size:

small

Gap:

8px

Styles

Default

Warning

Success

Error

Final thoughts

While working on this redesign, Rapido itself has evolved quite a bit. They’ve updated parts of their UI and expanded their business model, now collaborating with Goibibo, RedBus, and Confirmtkt to offer hotel bookings and ticketing for metro, trains, flights, and buses. Rapido is no longer limited to just ride bookings, and it’s interesting to see the direction they’re moving in.

This redesign was my way of exploring how a more consistent, accessible, and organized experience could look for Rapido. By building a simple design system and rethinking key user flows, I focused on bringing clarity and structure to the areas that felt scattered in the original UI.

There’s always room for improvement, but this project helped me strengthen my approach to systems thinking and accessibility while designing. It’s a direction I’m excited to keep developing.

Thankyou for visiting

Create a free website with Framer, the website builder loved by startups, designers and agencies.