The most useful under-used feature of email
When I set up this blog, I listed my email address with a +
tag in it
— a habit I’ve acquired. But I found that the +
generated more questions
than my blog posts! And, I thought, hey, blogs are for answering questions, so… read on!
What is in an email address?
My blog email address is scott.stafford+gh@gmail.com
. The ubiquitous @
and all the
other characters are described in the official specification for email addresses, called
RFC 2822 § 3.4.1. Per that document, everything before the @
is called
the local-part
, and interpreting it is entirely up to the mail server at domain
, which
is the part after the @
, so in my case:
local-part
isscott.stafford+gh
domain
isgmail.com
The mail server will use that local-part
to figure out whose mailbox to deliver the
email to. But many mail servers also play a few games before they deliver the mail. For instance,
Gmail completely ignores all .
, so scott.stafford@gmail.com
and s.c.o.t.t.s.t.a.f.f.o.r.d@gmail.com
will both go to the same place. Most other mail servers don’t ignore .
though, so
sprinkling periods around for fun mostly only works with Gmail.
What does the plus sign (+
) do?
The +
, like the .
, is treated specially by some common mail servers, such as Gmail, Outlook.com, and iCloud.
These mail servers intentionally ignore the plus and everything after it when routing mail. Yahoo uses
the hyphen (-
) for the same purpose. So, scott.stafford+gh@gmail.com
and
scott.stafford@gmail.com
and scott.stafford+i.love.plusses@gmail.com
all go to the same
mailbox. Others may use something else.
What are aliases good for?
Even though the mail server ignored the +
when routing, it’s still there in the email.
You can take advantage of it when searching or filtering your mailbox, and it’s
still a unique address as far as other sites are concerned.
This can be handy in a number of ways. On this blog, I use it so that if you email me, I know you found me via the blog. More generally, it’s useful for:
- Trackable email addresses: If you sign up for some website that requires an email address (especially if they might spam), using a + alias lets you create a filter for the stuff they send. Also, you’ll know who they sold/shared your email address to, because they’ll all come to the aliased address.
- Account testing: If (as I mentioned above) you’re developing/testing a website that requires unique email addresses for each user, but you need to sign up multiple times, the site will treat each email alias as unique but send the confirmation emails to the same convenient place.