Free Domain Lookup Tool — WHOIS, DNS, and Availability in One Click
A free domain lookup tool that returns WHOIS, DNS records, and availability status in one query. Paste a domain, hit enter, get registration details plus live A, AAAA, MX, NS, and TXT records. No signup, no tracking, no premium tier.
Most free WHOIS tools in 2026 are a mess — half redirect to a domain registrar’s landing page with an affiliate link, the other half show you WHOIS but not DNS, or require a signup for anything useful. I built this because I needed one clean tool for the three questions I actually ask when researching a domain: who owns it, where does it point, is it available. Runs on Cloudflare Workers, serves a static HTML frontend, returns a JSON payload.
Live tool
Domain lookup (live DNS)
Enter a domain. Get live A, AAAA, MX, NS, and TXT records from Cloudflare DNS-over-HTTPS — no backend, no signup.
WHOIS and RDAP require a server (browsers can’t open raw TCP). Fork the Cloudflare Worker source on GitHub to add WHOIS + RDAP + availability.
What the tool does
- WHOIS lookup for all major TLDs (.com, .net, .org, .io, .ai, .dev, .app) with registrar, creation date, expiry date, and nameservers
- RDAP (the modern WHOIS replacement) for TLDs that have deprecated WHOIS — .com and .net still use WHOIS, .app and .ai use RDAP
- Live DNS queries for A, AAAA, MX, NS, TXT records
- Availability check via RDAP 404 response (fast, accurate)
- Works for IDN domains (Punycode auto-converted)
- No signup, no tracking, no ad
How to use it
The tool is embedded above. Type a domain (with or without https://, schemes are stripped automatically). Hit Lookup. DNS results return in 1–3 seconds.
// Browser-only DNS lookup using Cloudflare DNS-over-HTTPS.
// WHOIS has to run server-side (browsers can't TCP), so that part
// is handled by the Cloudflare Worker in the production tool.
async function dnsLookup(domain) {
const types = ['A', 'AAAA', 'MX', 'NS', 'TXT'];
const out = {};
await Promise.all(types.map(async (type) => {
const r = await fetch(
`https://cloudflare-dns.com/dns-query?name=${encodeURIComponent(domain)}&type=${type}`,
{ headers: { accept: 'application/dns-json' } }
);
const data = await r.json();
out[type] = (data.Answer || []).map((a) => a.data);
}));
return out;
}
// Example
dnsLookup('gauravtiwari.org').then(console.log);How it works
The DNS portion runs in the browser via Cloudflare’s public DNS-over-HTTPS endpoint at cloudflare-dns.com/dns-query — no proxy needed. WHOIS and RDAP require a server because browsers cannot open raw TCP sockets, so the tool hits a Cloudflare Worker that fans out to the correct WHOIS/RDAP endpoint based on TLD. The Worker uses the IANA WHOIS server list for legacy TLDs and the RDAP registry lookup for newer ones. Availability detection is a single RDAP query — a 404 response means the domain isn’t registered.
Download and source
- Embedded tool above — runs in your browser via Cloudflare DNS-over-HTTPS
- Cloudflare Worker source on GitHub: github.com/wpgaurav
- For commercial domain research at scale, use WhoisXMLAPI or RapidAPI’s WHOIS packages — this tool is for ad-hoc single-domain lookups
FAQs
Why don’t some TLDs show WHOIS data?
GDPR happened. Since 2018, most registrars redact personal details (registrant name, email, phone) from public WHOIS for EU-resident owners. The tool shows what’s public — creation date, expiry, registrar, nameservers. For unredacted data you need a legitimate legal basis and a direct registrar request.
What’s the difference between WHOIS and RDAP?
WHOIS is the 1985 protocol; RDAP (Registration Data Access Protocol) is the 2015 JSON-over-HTTPS replacement. ICANN is migrating every TLD to RDAP. .com and .net still support both; newer TLDs (.app, .dev, .ai) are RDAP-only. The tool picks the right one automatically.
Can I check subdomains?
Yes for DNS (the tool queries blog.example.com records directly), no for WHOIS (subdomains inherit the root domain’s WHOIS — you’d query the root).
How accurate is the availability check?
Accurate for registered/unregistered status, not accurate for “is this domain for sale”. RDAP returns unregistered for domains nobody owns but says nothing about domains that are registered by investors who’d sell them for $5k. For sale checks, use a registrar’s dedicated API.
Is the data cached?
DNS: respects upstream TTL (usually 5-60 minutes). WHOIS: cached on the Worker for 1 hour to respect registrar rate limits. Force-refresh by adding ?nocache=1 to the tool URL.
Does this work for .crypto / ENS / Handshake domains?
No — those use blockchain-based name resolution, not the ICANN DNS system. The tool only queries DNS and WHOIS, so blockchain TLDs return empty. For ENS lookup use app.ens.domains.