← Articles
Technical August 2026 · 5 min read

EPP status codes explained: what clientHold and pendingDelete mean

The registry status code tells you more about a domain than its expiration date ever will. A field guide to ok, clientHold, redemptionPeriod, and pendingDelete.


What EPP status codes actually are

Every domain carries one or more EPP status codes — short machine-readable flags set by the registry that describe what can and can't happen to the domain right now. They show up in WHOIS/RDAP output as strings like clientTransferProhibited or pendingDelete. Most domain hunters skim past them. That's a mistake — the status code tells you more about a domain's real state than the "expiration date" field ever will.

The codes that actually matter for monitoring

ok

Default state. No restrictions, no pending action. A domain sitting at ok weeks before its expiry date is not close to dropping — the registrant simply hasn't renewed yet, and may still.

clientHold / serverHold

The domain is deliberately removed from the DNS zone — it won't resolve — while remaining registered. Registries and registrars set this for non-payment, abuse investigations, or legal disputes. A serverHold in particular is set by the registry itself and usually signals something more serious than a routine dispute.

clientTransferProhibited / serverTransferProhibited

Blocks domain transfers between registrars. client-prefixed locks are set by the current registrar (often the default for active domains) and can be lifted by the owner. server-prefixed locks are set by the registry and usually mean a dispute, court order, or fraud flag — these don't lift on request.

redemptionPeriod

The domain has expired and been deleted by the registrar, but the registry holds it for roughly 30 days before permanent deletion. The original owner can still reclaim it here — usually at a steep redemption fee — but new registration isn't possible yet. This is the code to watch closely if you're tracking a specific expiring target — see the full redemption vs. pending delete breakdown for the phase-by-phase timeline.

pendingDelete

The final 5-day window after redemption ends. The domain is locked from all changes and will drop into the available pool at the end of this window. This is the status your monitoring should treat as "drop imminent" — everything before it is still reversible by the original owner.

Why this beats watching the expiration date alone

Two domains can share the exact same "expires on" date and be in completely different states — one still ok and quietly renewed, the other already in pendingDelete and hours from release. A monitoring setup that only checks the date field can't tell them apart. One that also reads the status code can rank targets by how close they actually are to dropping, not by how close the calendar says they should be.


Want to track domains like this automatically? Dotily monitors DNS and WHOIS for you.