/

MakeMyTrip

Redesigning Taxes & Fees Transparency for International Hotels

When I joined the Hotels team at MakeMyTrip, one of the first problem areas I encountered was something almost every traveler has felt at some point — frustration around the final price of a booking not matching what was initially shown.


On the surface, our per-night prices looked competitive, clean, and user-friendly. But once users moved closer to payment, things started to get messy: per-night taxes, service fees, and in some cases, mandatory one-time charges like boat transfers (especially in Maldives bookings) were either buried in the fine print or introduced too late in the journey.

The Trust Gap

This wasn’t just a UI issue — it was a trust issue. Users felt blindsided. They were promised one thing at the start and ended up paying something else. We noticed a clear spike in drop-offs when total payable amounts jumped unexpectedly, and customer complaints about hidden charges kept surfacing.


At the same time, we had to deal with a legally and operationally complex backend:


  • Some fees were per night (like VAT or service charge),

  • Some were fixed (like city tax),

  • And some were one-time, like mandatory boat transfers to island resorts — but still payable at the property, not during booking.

The Trust Gap

Core Challenge

  1. How do we clearly communicate this mix of fee types across all surfaces — without overwhelming or confusing the user?


  1. How do we show taxes that at property clearly in the same price breakup?

Breaking It Down

I started by mapping the complete flow of pricing information — from the hotel listing card to the final payment screen — and listing every single charge that could show up, both common and edge-case.


One key insight was that the problem wasn’t just about visibility — it was about structure and expectation.


If a user sees “₹18,000 + 5000 taxes/night” and then encounters a ₹7,500 boat transfer later, it feels like a hidden cost — even if it’s mentioned on the review page. On the other hand, if we could set expectations early and separate per-night pricing from one-time, per-stay charges, the experience could become clearer and more trustworthy.

Industry References

To inform my approach, I studied how leading platforms handle price transparency:


  • Airbnb shows a clean, upfront breakdown on the hotel page on L2 using a bottom sheet.

  • Expedia includes local taxes in the total and notes what’s payable at the property.

  • Trip.com categorises charges clearly, especially “pay at hotel” fees.

  • Ixigo adds a subtle note below the price to flag extra charges.

  • Booking.com uses visual dividers to separate price details for better clarity.



Takeaway:

The most effective experience combined Trip’s categorisation clarity, Airbnb’s simplicity, and Expedia’s upfront tax inclusion — which helped shape my final approach.

Design Iterations: From Overload to Clarity

Iteration 1: Total on Top – Rejected


🧩 Situation: Total amount was placed at the top of the breakup.


⚠️ Design Problem: Broke natural reading flow — users prefer understanding components before seeing the final amount

Iteration 2: Flat Structure with Group Taxes

🧩 Situation: Taxes were grouped under “Pay Now” and “Pay at Property” but lacked visual separation.

⚠️ Design Problem: Users couldn’t clearly distinguish between tax types or spot key charges like one-time fees.

Iteration 3: Introduced Icons for Fee Types


🧩 Situation: Icons were added to visually separate fee types like transfers and service charges.


⚠️ Design Problem: Created unnecessary cognitive load — users had to interpret symbols along with reading the text.

Final Iteration: Segregated Boxes with Clear Labels


🧩 Situation: Used boxed sections, bold labels, and clear payment timing indicators.


✅ Design Win: Visually clean, easy to scan, and clearly separated one-time vs. per-night vs. pay-at-property charges.

UAT Testing Conclusion

Name of tester

Iteration choice

Insight

Anushka

1st

Total on top makes it quicker to scan

Manoj

2nd

Follows a clean top-to-bottom flow

Annvecha

4th

Easy to follow due to linear structure

Shubbranshu

4th

Clear split between pay now & at property

Palak

4th

Clear segregation; just needs total amount visible

Kapil

2nd

Easiest to understand overall

Karan

3rd

Good hierarchy; suggested better

currency format

The 4th iteration emerged as the most preferred among users due to its clear distinction between ‘Pay Now’ and ‘Pay at Property’ charges, structured layout, and overall ease of understanding. Users were able to quickly grasp the fee breakdown, leading to a more confident booking experience.


This validation confirmed the final design direction as successful, both in terms of usability and comprehension.

Designed with ❤️

©2025

Designed with ❤️

©2025