Every flight segment in a PNR carries a two-letter status code — HK, HL, KK, and several others. These codes tell you whether a seat is actually confirmed, waitlisted, or something else entirely, and misreading one can mean telling a client they have a confirmed seat when they're actually on a waitlist. This guide explains exactly what each code means.

Why Status Codes Matter

A PNR status code appears right after the airline and flight number in a segment line, usually followed by a number indicating seat count — for example, HK2 means "confirmed, 2 seats." Getting this wrong isn't a small mistake; it directly affects whether a passenger actually has a guaranteed seat on the flight.

The Most Common Status Codes

CodeMeaningWhat It Means for the Passenger
HKHolds ConfirmedSeat is confirmed and held — the passenger is booked
HLHolds WaitlistedPassenger is on the waitlist, not yet guaranteed a seat
KKConfirmingConfirmed by the airline after a request
KLWaitlisted (alternate code)Similar to HL — still waitlisted
UNUnableAirline could not confirm the request
UCUnable to ConfirmRequest could not be fulfilled
NNNeed/PendingRequest sent, awaiting airline response
TKConfirmed (ticketed)Segment confirmed, typically after ticketing
RRReconfirmedBooking has been reconfirmed

HK vs HL — The Most Important Distinction

This is the pairing that causes the most confusion for new agents, and it's the one that matters most to get right before talking to a client:

⚠️ Critical for Client Communication

Never tell a client their booking is "confirmed" if any segment shows HL. Always check every segment in the PNR individually — it's common for one leg of a multi-flight trip to be confirmed while another is still waitlisted.

How to Read the Number After the Code

The number immediately following the status code indicates how many seats that status applies to. For example:

On a booking with multiple passengers, you might occasionally see split status — some passengers confirmed, others waitlisted on the same flight — which is worth double-checking before assuming the whole group is travelling together as planned.

What to Do If You See HL or UN

If a segment shows HL (waitlisted) or UN/UC (unable), the booking needs follow-up — either waiting for the waitlist to clear, contacting the airline, or rebooking on an alternative flight. Don't assume it will resolve itself before the travel date.

Where Status Codes Appear in a PNR

In a typical segment line, the status code sits right after the route:

3 BA 284 H 15JUL 2*LHRJFK HK2 1120A 215P 15JUL E

Here, HK2 confirms that both passengers on this British Airways flight have guaranteed seats.

A Full Example: Watching HL Become HK

The clearest way to understand why these codes matter is to watch one change. Say an agent books a passenger on a popular route and the flight is already tight on economy inventory. The segment goes in as:

3 VS 45 K 20DEC 3*LHRJFK HL1 1045A 130P

At this point, the passenger has requested a seat but does not have one. Nothing about the flight, date, or route is wrong — only the status is unresolved. If the agent sent a confirmation to the client right now describing the trip as "booked," that would be inaccurate. Three days later, another passenger cancels, inventory opens up, and the airline clears the waitlist. Redisplaying the same PNR now shows:

3 VS 45 K 20DEC 3*LHRJFK HK1 1045A 130P

The flight itself never changed. What changed is that the airline allocated a real seat to this passenger, and the code flipped from HL to HK to reflect it. This transition doesn't happen automatically inside a document you've already emailed — it happens on the airline's system, and you only see it by pulling the PNR up again. Airlines typically flag the change by placing the booking on a queue for the agency, which is why checking queues regularly (especially as a ticketing deadline approaches) matters more than it might seem.

⚠️ Don't Treat a Waitlist Clearance as Automatic

A segment can just as easily stay on HL all the way up to departure and never clear. If it's still waitlisted close to the travel date, that's the moment to contact the airline or start looking at an alternative — not to assume it will resolve on its own.

HK vs KK — Are They the Same Thing?

Functionally, yes — both mean the passenger has a confirmed seat. Where they differ is in how that confirmation happened. HK is what you'll see on the large majority of direct sells, where the agent requested a seat and the system confirmed it immediately. KK shows up when the request had to be referred to the airline rather than confirmed instantly — common on certain codeshare segments or flights operated by a partner carrier — and the airline's response came back positive. Both belong in the "confirmed" bucket; agents sometimes second-guess a KK segment because it looks less familiar than HK, but it doesn't need any follow-up action once it's showing confirmed.

UN vs UC — Which One Means You Can Still Try Again?

These two get confused because they both start with U and both mean the request failed, but the difference matters for what to do next. UN (Unable) means this specific request couldn't be confirmed — the flight might be full, but a waitlist request on the same flight could still be worth trying. UC (Unable, waitlist Closed) means the request failed and the airline isn't accepting waitlist requests on it either, so there's nothing left to attempt on that particular flight and it's time to look at an alternative date or routing instead.

When You See a Code You Don't Recognize

Not every code you encounter will match a standard reference table. Airlines connected through older messaging formats, some regional or codeshare partners, and carriers still transitioning content onto newer distribution methods occasionally return a status that looks unfamiliar. When that happens, don't assume it's harmless just because the rest of the segment line looks normal — check the GDS's own help or encode/decode entry for that code, or contact the airline directly. Until it's verified, treat an unrecognized code the way you'd treat HL: as not yet confirmed.

Split Status on a Multi-Passenger Booking

It's easy to assume that a status code applies to every traveler on a PNR equally, but that's only true when the number after the code matches the total passenger count. On a family of four, for example, it's entirely possible to see two segments like this on the same flight:

3 QF 12 M 05JAN 1*SYDLAX HK2 1140A 730A
4 QF 12 M 05JAN 1*SYDLAX HL2 1140A 730A

Two passengers are confirmed (HK2) and two more are waitlisted (HL2) on the identical flight, because the booking was split into two name associations when only partial inventory was available. A quick glance at the PNR might suggest the whole family is set, since a flight to LAX clearly appears in the record — but only half the group actually has a seat. Always check that the passenger count next to the status code adds up to everyone traveling before confirming a booking as complete.

How These Codes Translate to What the Client Sees

None of the two-letter codes covered here appear to the passenger in their raw form. HK and KK segments show up as a normal confirmed flight on the airline's app and e-ticket. An HL segment usually shows the client nothing at all in the airline's own system until — and unless — the airline emails them separately about the waitlist, which means the agent is often the only source of that information until it clears. A UN or UC segment simply won't appear as a booked flight if the client looks it up independently. That gap between the raw PNR and what the traveler actually sees is exactly why status codes need to be read carefully and translated clearly before anything is shared with a client.

Convert Your PNR and See Status Clearly

PNRGenius automatically reads and displays the confirmed status for every segment — no manual decoding needed.

Try the Free Converter →