Purlock
Free tool · Email deliverability checker

Is your email one tool away from spam?

SPF allows 10 DNS lookups, and every email tool you add uses some. Go over and SPF fails for all of your email, with no error anywhere. See your count, and what's using it.

Free, with no account needed.

What it checks

What you get from the email deliverability checker

  • SPF lookups, counted properly

    Every include, a, mx, ptr, exists and redirect, including the ones nested inside your email services, the way mail servers count them.

  • What's using them

    Which part of your record costs the most, so you know what to remove first.

  • Records that silently fail

    Two SPF records, includes that no longer exist, loops, and too many lookups that point at nothing.

  • DMARC

    Whether you have it, whether it's enforced or only watching, and whether reports go anywhere.

  • DKIM

    Keys on the selectors the common email services use, and keys that are too short or revoked.

  • Mail servers

    MX records, and whether email to you has to arrive encrypted.

For developers

Three lines from your own code

Every tool is also an API, with one simple answer format. Keep your key on your server.

JavaScript

const res = await fetch("https://www.purlock.com/v1/tools/email-deliverability-checker?target=yourshop.com", {
  headers: { authorization: `Bearer ${process.env.PURLOCK_API_KEY}` },
});
const report = await res.json();

Prompt for Cursor or Lovable

Add a call to the Purlock Email deliverability checker API on the server side of this app. Send GET https://www.purlock.com/v1/tools/email-deliverability-checker?target=VALUE with the header "Authorization: Bearer" and the PURLOCK_API_KEY environment variable. The JSON answer has status ("good", "attention" or "bad"), headline, checks (each with level, title, detail, fix) and data. If the call fails or times out after 3 seconds, carry on as if it wasn't there. Never put the API key in client code.

Free plan: 100 calls a month. Individual: 5,000. Business: 25,000.

FAQ

Questions, answered

What is the SPF 10 lookup limit?
An SPF record can make mail servers do at most 10 DNS lookups. Each include, a, mx, ptr, exists and redirect counts as one, and so does every one nested inside an include. Past 10, the SPF check fails, and your email is more likely to go to spam.
Why does it warn at 8?
Because one more email tool can add 3 or 4 lookups at once. At 8 you still have time to clean up before anything breaks.
How do I reduce my SPF lookups?
Remove services you no longer send from first. Then move marketing or support email to a subdomain with its own SPF record. Flattening, which replaces includes with IP addresses, also works, but those addresses change, so it needs keeping up to date.
Why does it say it can't find my DKIM?
DKIM keys can't be listed, only looked up by name, so we try the names common email services use. If yours uses another name, enter it through the API, or check your email service's settings.
Does this prove my email reaches the inbox?
No. It checks your DNS setup, which is the part you control and the most common silent failure. Your sending reputation and your email content also matter.
Is it free?
Yes, with no account. Daily monitoring and alerts come with an account.

Use it from your own code

Get a free API key with 100 calls a month. No card needed.

Get your API key