---
title: "Why a new domain is worth a closer look"
url: "https://lookvalid.com/blog/security/young-domains-as-fraud-signal.md"
canonical_url: "https://lookvalid.com/blog/security/young-domains-as-fraud-signal"
last_updated: "2026-10-22"
type: "conceptual"
summary: "Registration age is a cheap fraud signal. See how RDAP exposes it, how the domain-age product reads it, and a table of age bands you can adapt."
related: ["https://lookvalid.com/products/domain-age.md", "https://lookvalid.com/tools/domain-age-checker.md", "https://lookvalid.com/glossary/rdap.md", "https://lookvalid.com/docs/api/domain-age.md"]
---

# Why a new domain is worth a closer look

Registration age is a cheap fraud signal. See how RDAP exposes it, how the domain-age product reads it, and a table of age bands you can adapt.

When a signup, an invoice or a link points at a domain, one of the cheapest questions to ask is how long that domain has existed. A domain registered last week has no history to check, while one that has been registered for a decade has had time to build a record you can look at. Registration age proves nothing by itself, but it is a useful input to a risk score.

## Where registration age comes from

Registration data is served through the Registration Data Access Protocol. ICANN describes RDAP as the replacement for the WHOIS protocol, delivering WHOIS-like registration data in standardized query and response formats [1]. A domain query has the form `/domain/XXXX`, where XXXX is a fully qualified domain name [2].

The response is a JSON domain object, and its `events` array carries the dates. Each event has an `eventAction` and an `eventDate`. The registered action values include `registration`, meaning the object was initially registered, `last changed`, and `expiration` [3]. The age of a domain is the time since its `registration` event.

## Finding the right RDAP server

There is no single RDAP server for the whole internet. Clients ask IANA's bootstrap file which server answers for each top-level domain. The file is a JSON object with a `services` list that pairs TLD labels with RDAP base URLs, and its entry for `com` points to the Verisign registry service [4]. A client matches the TLD label by label, from right to left, and appends the domain path to the base URL [5].

Two practical consequences follow. A TLD that is missing from the bootstrap file has no RDAP service to ask, so you cannot read an age for it. And a name below the registered domain, such as a mail subdomain, must be reduced to the registered domain before you query.

## What the domain-age product returns

The `domain-age` product runs that lookup for you. It reads the IANA bootstrap file, queries the registry's RDAP server, and returns the registration date, the age in whole days, the last-changed and expiry dates, the registrar, the status values and the server it used. If the registry says the domain does not exist, the answer is `not_found`; if the registry is rate limited or unreachable, the answer is `unavailable`, never `not_found`, so an outage is not mistaken for an unregistered domain. A name that is not a registered domain, or a TLD without an RDAP service, also comes back as `not_found` with a reason.

Look up a domain's age

```bash
curl -X POST https://YOUR_API_HOST/v1/domain-age \
  -H "Authorization: Bearer $LOOKVALID_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"domain":"example.com"}'
```

Excerpt of a captured example response for example.com

```json
{
  "domain": "example.com",
  "registered": true,
  "created_at": "1995-08-14T04:00:00.000Z",
  "age_days": 11387,
  "expires_at": "2027-08-13T04:00:00.000Z",
  "rdap_server": "https://rdap.verisign.com/com/v1/"
}
```

`age_days` is the number of whole days from `created_at` to the moment the answer was computed. A cached answer is not recomputed, so the figure can lag by the length of the cache.

## Turning age into a decision

The bands below are our suggested starting policy. Tune the cut-offs on your own data, where you can see how often each band later turns out to be a problem.

Suggested age bands and how to treat each

| Age in days | Suggested treatment |
| --- | --- |
| 0 to 6 | Hold for manual review or step-up verification |
| 7 to 29 | Allow low-value actions, review high-value ones |
| 30 to 89 | Add a point to the risk score and combine with other signals |
| 90 to 364 | Treat as neutral unless other signals disagree |
| 365 and over | Age adds no concern; judge on other signals |

- Never block on age alone: new businesses and new projects register new domains every day.
- An old domain is not a clean one. A long-registered domain can be compromised or sold.
- Combine age with the [email domain check](https://lookvalid.com/products/email-domain-check.md) and the [link safety check](https://lookvalid.com/products/link-safety.md) for a fuller picture.

## Put it in your flow

1. Extract the domain from the email address or URL you are scoring.
2. Call `domain-age` and read `age_days`.
3. Map the value to a band and add it to your risk score.
4. Treat `unavailable` as "try again", not as "new".

You can try a single lookup in the free [domain age checker](https://lookvalid.com/tools/domain-age-checker.md), then add the check to your own pipeline from the [domain age product page](https://lookvalid.com/products/domain-age.md).

## Sources

1. [ICANN: Registration Data Access Protocol (RDAP)](https://www.icann.org/rdap), read 2026-10-19
2. [RFC 9082: Registration Data Access Protocol (RDAP) Query Format](https://www.rfc-editor.org/rfc/rfc9082.html), read 2026-10-19
3. [RFC 9083: JSON Responses for the Registration Data Access Protocol (RDAP)](https://www.rfc-editor.org/rfc/rfc9083.html), read 2026-10-19
4. [IANA RDAP bootstrap file for DNS registrations](https://data.iana.org/rdap/dns.json), read 2026-10-19
5. [RFC 9224: Finding the Authoritative Registration Data Access Protocol (RDAP) Service](https://www.rfc-editor.org/rfc/rfc9224.html), read 2026-10-19

By LookValid data team. Published 2026-10-19, updated 2026-10-19.

## Related

- [Domain Age API](https://lookvalid.com/products/domain-age.md)
- [Free domain age checker](https://lookvalid.com/tools/domain-age-checker.md)
- [What is RDAP?](https://lookvalid.com/glossary/rdap.md)
- [Domain Age reference](https://lookvalid.com/docs/api/domain-age.md)
