Skip to content
hostcomplex

EPP Status Codes Explained

Maarten Soetens 3 min read

What EPP Status Codes Show

EPP status codes are labels that describe the current state of a domain name in the registry's database. The name comes from the Extensible Provisioning Protocol (EPP), the standard that registrars use to communicate with registries. A domain can carry one or more status codes, and they appear in WHOIS and RDAP lookups.

Status codes are rarely shown on a website. They explain why a domain behaves a certain way, such as why it does not resolve or cannot be transferred. Read them alongside the expiry date and nameservers to get the full picture.

Client and Server Status Codes

Status codes come in two groups. Codes starting with client are set by the registrar, often because of an action on the customer's account or a payment issue. Codes starting with server are set by the registry, often for legal, abuse or policy reasons. The registrar cannot remove a server code on its own.

The status ok means no restrictions are set beyond the defaults. A domain showing only ok has no holds or locks on it, so it can usually be renewed, updated and transferred, as long as the owner meets the normal requirements.

Codes That Stop a Domain From Working

The clientHold and serverHold codes are the most disruptive. A domain on hold is removed from the zone that maps names to addresses, so it stops resolving and its website and email typically go offline. The cause is often unpaid fees, a failed verification or a legal or abuse issue, not a fault with the hosting service.

Other codes control changes and deletion. clientTransferProhibited blocks transfers, clientUpdateProhibited blocks changes to nameservers and contacts, and clientDeleteProhibited blocks deletion. The pendingDelete code means the domain is in its final stage before release. Locks are explained in registrar lock, and the post-expiry states are covered in the redemption grace period article.

Example: A Website That Went Offline

A photographer finds her site unreachable one morning. A WHOIS lookup shows clientHold. Her registrar explains that a renewal payment failed and the domain was placed on hold as a result. Once the payment is made, the registrar removes the code and the domain resolves again. Checking the status code first showed that the hosting service was not the cause, which saved time.

Frequently asked questions

Is clientHold the same as serverHold?

No. Both stop a domain from resolving, but the source differs. A clientHold is placed by the registrar and usually lifts once the registrar resolves the cause. A serverHold is placed by the registry, so it can only be lifted through the registry, usually with help from the registrar.

Can I remove a status code myself?

Client codes can often be removed from the registrar's control panel, or by asking support, once the cause is fixed. Server codes cannot be removed by the owner or the registrar alone. The registrar must find out why the registry applied the code and request its removal.

Does the ok status mean my domain is safe?

Not entirely. An ok status means no holds or locks are active, but it does not protect a domain from hijacking or expiry. Locks, account security and a current renewal date remain the owner's responsibility.

  • Two-Factor Authentication

    Two factor authentication hosting adds a second check to control panel, domain and CMS logins. Learn which methods are strongest and why 2FA helps.

  • What Is an A Record?

    What is an A record? Learn how this DNS record maps a hostname to an IPv4 address, why domains use several A records and the root and www pattern.

  • Billing and Automation Platforms

    What is WHMCS? Learn how this commercial billing and automation platform helps hosts sell plans, collect payments and create accounts automatically.