Skip to content

Unusual email addresses

Sign-up forms often turn away addresses that are perfectly valid, like a plus sign or an apostrophe, or let through ones that can never receive mail. Every Proxy Mail QA address comes with variants that still land in its inbox, so you can check both.

The examples below use the test address k7f2x9ab12cd@mailclub.dev. Swap in your own.

Mail to any of these arrives in the same inbox as the plain address. Checked against our mail servers on 15 October 2026.

What it tests Address
Capitals K7F2X9AB12CD@MAILCLUB.DEV
A plus tag k7f2x9ab12cd+signup@mailclub.dev
An apostrophe k7f2x9ab12cd+o'brien@mailclub.dev
An ampersand k7f2x9ab12cd+r&d@mailclub.dev
Equals and question marks k7f2x9ab12cd+a=b?c@mailclub.dev
A slash and a percent sign k7f2x9ab12cd+team/50%@mailclub.dev
Braces, pipes and tildes k7f2x9ab12cd+{x}|~y@mailclub.dev
Dots inside the name k7f2x9ab12cd+first.last@mailclub.dev
A second plus sign k7f2x9ab12cd+a+b@mailclub.dev
The longest name allowed (64 characters before the @) k7f2x9ab12cd+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@mailclub.dev

After the +, you can use letters, digits and any of ! # $ % & ' * + - / = ? ^ _ ` { | } ~ and dots (not two in a row, and not at the end). The text after the + shows on each email in the inbox, so you can tell which variant a message was sent to.

A custom address name (Add account → Custom name, or name in the API) can use the same characters, anywhere in the name and up to 64 in all: o'brien@mailclub.dev, r&d.team@mailclub.dev or {qa}@mailclub.dev. Only + is left out, because it starts a tag.

The email standard allows these, but our mail servers (and most others) don’t accept them, so mail sent to them is refused before it arrives. They’re useful for checking what your app does when delivery fails.

What it tests Example
A quoted name with a space "john doe"@mailclub.dev
A name that isn’t in Latin letters josé@mailclub.dev, 用户@mailclub.dev
A domain with no dot, which only works inside a private network k7f2x9ab12cd@mailclub
65 characters or more before the @ k7f2x9ab12cd+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@mailclub.dev

Your app should reject these before it tries to send anything. They need no inbox.

What’s wrong Example
No @ k7f2x9ab12cd.mailclub.dev
Nothing before the @ @mailclub.dev
Nothing after the @ k7f2x9ab12cd@
Two @ signs k7f2@x9@mailclub.dev
A space k7f2 x9@mailclub.dev
A dot at the start or end of the name .k7f2@mailclub.dev, k7f2.@mailclub.dev
Two dots in a row k7f2..x9@mailclub.dev
Two dots in the domain k7f2x9ab12cd@mailclub..dev
A domain starting with a hyphen k7f2x9ab12cd@-mailclub.dev
Angle brackets or a comma <k7f2>@mailclub.dev, k7f2,x9@mailclub.dev

The REST API and MCP tools take a variant wherever they take an address, and act on the plain one. Waiting on a variant with a +tag only finds mail sent to that variant; waiting on the plain address finds mail sent to any of them. Pass since (the time your test submitted the form) as usual.

GET /v1/addresses/{address}/variants lists all of the above for one of your addresses: delivered, undeliverable and invalid, each with what it tests. See the REST API reference.

When an address goes in a URL path, encode it: encodeURIComponent in JavaScript turns ' into %27, + into %2B, / into %2F and ? into %3F.

A coding agent can make the variants itself from the table above: ask it to “try signing up with an apostrophe and a plus tag in the email address, and check the code still arrives”.