← All work

IndiGo — Promo Code Experience

Turning a coupon field into an offers discovery moment in India's largest airline app

Role
Senior Consultant — UX/UI
Team
Consultant within IndiGo’s digital product team
Timeline
Jan – Nov 2024
Platform
iOS & Android
Outcome
Part of the coupon/promo redesign that improved usability and reduced task completion time across IndiGo's flight booking journey.

The problem

Promo codes sit at a sensitive point in flight booking: the moment a price-conscious traveler decides whether the fare is good enough. In the existing experience, the promo field was a dead end — a blank input that assumed users already knew a code. Users who didn't have one got nothing; users who mistyped one got a failure with no way forward. The push came from two directions: analytics showed drop-off at the promo step, and new wallet-partner offers (Mobikwik, Paytm) needed placement that would not clutter the booking form.

The brief: redesign the promo flow so that users without a code discover offers instead of hitting a wall, users with a code get a fast, forgiving path, and partner offers (Mobikwik, Paytm) get meaningful placement — without cluttering the booking form itself.

The flow at a glance

The complete promo journey — one entry point, one sheet, explicit states for empty, typed, error, applied, and removed
The complete promo journey: one entry point, one sheet, and explicit states for empty, typed, error, applied, and removed.

Key design decisions

1 · The empty state sells, it doesn't apologize

Most promo fields treat "no code" as the user's problem. I flipped it: tapping Add promo code opens a sheet where the input sits above a list of available offers — cashback and discount cards with the code, the eligibility terms, and a login CTA per offer. A user who arrived with nothing leaves with a code. The "Simply login to unlock your personalized promo code" line turns the same surface into a login incentive, which mattered because logged-in users complete bookings faster, retain preferences, and can be re-engaged with personalized fares.

Promo sheet with Mobikwik and Paytm offer cards, cashback and percent-off edge badges
Offer cards carry the value proposition (cashback, 7% off, 13% off) as scannable edge badges, so users compare offers without reading terms first.

2 · Errors keep the user in the flow

An invalid code doesn't eject the user or clear the sheet. The message — "The code entered does not exist or is expired" — appears inline, in place, with the available offers still listed directly below. The recovery path is literally on the same screen: if your code failed, a working one is one tap away. This was the difference between an error state and an exit point.

Error state: inline message with offers still visible below
Failure and recovery share one screen: the error explains itself, and valid offers remain within thumb's reach.

3 · Applied state lives on the booking form, with an exit

After applying, the user lands back on the booking form with the code shown as a confirmed chip — "QUIK10 Applied ✓" — plus an explicit Remove action. Two reasons: trust (the discount is visible where the price decision happens, not buried in a sheet) and control (removing a code is as easy as adding one, so users experiment with offers instead of fearing a wrong choice).

Booking form with QUIK10 applied chip and Remove action
The applied code is confirmed exactly where the fare decision happens — and reversible in one tap.

Craft details

Outcome

The redesigned coupon flow shipped as part of IndiGo's wider flight-booking overhaul (Jan–Nov 2024), improving usability and reducing task completion time for users applying and managing promo codes. Just as important, the offers sheet turned the promo field from a support liability into a merchandising surface: partner offers gained first-class placement without adding a single element to the booking form itself.

Reflection

The offer cards depend on partner content quality — titles and terms we did not control — and we never tested the sheet on slow connections, where offer assets delay load. Next, I would instrument offer-card taps versus manual code entry to quantify how much of the improvement comes from discovery rather than pre-existing intent.