Outrings
Trust, privacy and content quality

Should I put my email address on my website?

Yes. The spam argument is weaker than it was, and being uncontactable costs more than the spam does.

2 min read
Short answer

Publish a real address. Modern spam filtering handles harvested-address spam well, while having no reachable human is one of the strongest negative trust signals a site can send. Use a role address rather than a personal one if you prefer.

The trade, honestly

  • Cost: your address gets harvested and you receive more spam. Filtering catches the overwhelming majority.
  • Benefit: customers, journalists, partners and people reporting problems can reach you. Some of those messages are worth a great deal more than the nuisance.

A contact form alone is not equivalent. Forms fail silently, land in nobody's inbox, cannot be replied to from a phone, and read as a barrier. Many people simply will not use one.

Obfuscation mostly is not worth it

TechniqueEffect
name [at] example [dot] comStops naive scrapers. Annoys every human and breaks click-to-email.
Address as an imageStops scrapers. Unreadable to screen readers and uncopyable. Avoid.
JavaScript assemblyStops basic scrapers. Invisible to crawlers, and fails if scripts do not run.
HTML entity encodingStops almost nothing. Trivially decoded.
Plain mailto:Harvested. Works perfectly for everyone, including assistive technology.

Serious harvesters render pages and handle every one of these. You are inconveniencing legitimate visitors to slow down the least capable scrapers.

A sensible arrangement

  1. Publish a role address — hello@, support@, security@ — rather than a personal one. Rotatable, and survives staff changes.
  2. Put it in plain text with a mailto: link.
  3. Add Organization structured data including the contact point.
  4. Publish /.well-known/security.txt with a security contact.
  5. Let your provider's spam filtering do its job.
  6. Offer a form as well if you like, but never instead.
One genuine risk worth naming: a published address makes you a target for phishing aimed at your organisation, and for business email compromise attempts. The mitigation is authentication and staff awareness — SPF, DKIM and DMARC so your domain cannot be forged — not hiding the address.

Addresses that should not be public

  • Individual staff addresses, unless the person chose to publish theirs.
  • Internal aliases such as accounts-payable@, which are precisely what invoice fraud targets.
  • Addresses that bypass filtering or route into automation without validation.

What our audit reports about this

Every item below is measured directly, not inferred. Run it against your own site and the result names the exact rule or header responsible.

  • Every email address found on the page, where it was found, and whether it is obfuscated.
  • Whether addresses are role accounts or personal, and whether any look internal.
  • Whether a contact page, phone number or postal address is present.
  • Whether security.txt exists and names a contact.

For agents and scripts, the same measurement is at /api/v1/contact?url=yoursite.com — see the API documentation.

Related questions

Will I get more spam?

Some, yes. Filtering at any mainstream provider removes nearly all of it. The volume is usually a handful a day, against the cost of being unreachable to everyone who wanted to talk to you.

Is a contact form enough?

For trust, no. Forms are commonly broken without anyone noticing, cannot be replied to easily, and read as deliberate distance. Offer both; the address is the one that matters.

What about GDPR?

A business contact address is not a problem. The obligation is around what you do with data people send you — that belongs in your privacy policy.

Read next

All 50 guides · How every check works · API for agents