All posts

Maximum Email Address Length: 254 Characters, 64 Before the @, and How to Check a List

··6 min read

The longest email address that mail systems have to carry is 254 characters, with at most 64 before the @ and at most 255 in the domain. Those numbers come from the SMTP standard, RFC 5321, section 4.5.3.1, which we read for this post on 9 November 2026. It says the local part (the bit before the @) is at most 64 octets, a domain is at most 255 octets, and a reverse-path or forward-path is at most 256 octets including the punctuation. A path is the address wrapped in angle brackets, so two of the 256 go to the brackets and 254 are left for the address.

The free email address length checker tests a pasted list or file against all of these limits at once and shows which addresses break which one. Below is what each limit means, why long addresses show up in lists at all, and what to do about them.

Check a list for over-length addresses →

The four limits, in one table

What is measured Limit Where it comes from
Local part (before the @) 64 octets RFC 5321, 4.5.3.1.1
Domain (after the @) 255 octets RFC 5321, 4.5.3.1.2
One label of the domain (between dots) 63 octets RFC 1035, 2.3.4
Whole address 254 octets RFC 5321, 4.5.3.1.3: path of 256, minus the two angle brackets

You will see "320 characters" quoted as the maximum. That is 64 plus the @ plus 255, which adds two separate limits together. The path limit is lower, so an address that long cannot be used as a sender or recipient in SMTP. Work to 254.

Octets are not characters

The standards count octets, which are bytes. For plain letters, digits and punctuation in ASCII, one character is one octet and the distinction doesn't matter. It matters when an address contains characters outside ASCII:

  • Non-ASCII in the local part. An accented letter or a non-Latin character takes more than one octet in UTF-8. A 40-character local part written in such characters can go past 64 octets.
  • Internationalized domains. In DNS a non-ASCII domain travels in its xn-- (punycode) form, which is usually longer than what a person sees. The checker measures the domain in that form where the browser can convert it.

If your list has many non-English names, the "length in characters" shown in a spreadsheet will understate the real figure.

Why long addresses appear in lists

Real people almost never have a 65-character local part. When the checker flags one, it is nearly always damaged data:

  1. Two cells joined. An export or a copy-paste merged a name, a title or a phone number into the address cell.
  2. A signature or sentence pasted in. Scrapers sometimes take a whole text node instead of the address.
  3. A repeated address. ana@northwind.example;ana@northwind.example in one cell is long and wrong.
  4. Generated or test addresses. Some forms and some abusive sign-ups produce long random strings before the @.
  5. Truncation by an earlier tool. A system with a 50 or 100 character field cut a longer address short. The result is a different, usually non-existent address. If you see many addresses ending at exactly the same length, that is the cause.

The fix differs. Joined cells and repeats can often be repaired; if the columns themselves are shifted, the CSV misplaced data finder and our post on fixing broken CSV rows before import are the right starting points. Random or truncated addresses should simply be dropped.

What breaks when an address is too long

  • Import failures. CRMs and sending platforms validate on upload. Some reject the row, some reject the whole file, and some accept it and fail at send. The message is rarely specific.
  • Database truncation. A column sized at 100 or 255 characters can cut an address silently. If your own system stores contacts, size the column to 254.
  • Hard bounces. A server receiving a path longer than its limit can refuse it. That is a permanent failure you pay for in sender reputation. The post on removing invalid emails from a CSV covers the wider cleaning step.
  • Wasted checks. Sending an obviously malformed address to a verifier uses a check on a result you could have known for free.

How to check a list for over-length addresses

  1. Export one column of addresses, or keep the whole file. The checker takes pasted text, one address per line, or a CSV or TXT upload.
  2. Run the length check. It reports each address's local part, domain and total length in octets, the longest domain label, and a plain-English reason for any that fail.
  3. Read the over-limit group first. It sorts failures to the top so you can see whether it is five stray rows or a pattern.
  4. Decide per row. Repair where the real address is visible inside the string (a stray prefix, a doubled address). Drop the rest, and keep a record of what you dropped so they can't be re-imported later. Cold email suppression lists shows a simple structure.
  5. Carry the survivors forward. The checker hands the within-limit addresses to the verifier, which is the step that tells you whether the mailbox exists.

The tool runs in your browser, so a list of customer or prospect addresses isn't uploaded just to count characters.

Length is only the first test

Passing every limit means an address is the right shape to be carried. It says nothing about the mailbox. nobody.here@northwind.example is 31 characters and may bounce on the first send because no such inbox exists, or the domain stopped accepting mail, or the person left the company.

Run the list through verification after the length check and the other syntax cleanup, in this order:

  1. Length and syntax (free, instant).
  2. Duplicates and obvious role or junk addresses.
  3. Verify the file. Valid rows go in the send; invalid rows are suppressed; risky and catch-all rows get a smaller, slower send. What to do with catch-all emails explains that group.
  4. Import or send.

Lists age, so repeat step 3 before every reuse. How often to verify an email list gives a schedule.

If you are the one writing the form

For a sign-up form or an API, accept up to 254 characters and don't impose a lower cap just because short addresses are the norm. Reject anything longer in the form itself, with a message that asks the person to check the address, rather than storing a truncated string. Then confirm the mailbox exists with a verification check at sign-up. If you are coding it, the guides to validating email in JavaScript, Python and PHP cover where length checks sit alongside the rest.

Quick answers

  • Is 254 the same as 255 or 256? No. 256 is the path limit with the brackets, 255 is the domain alone, 254 is the address alone.
  • Can an address have exactly 64 characters before the @? Yes. 65 is the first value over the limit.
  • Can a domain have 64 characters in one label? No. 63 is the limit for a label, even if the whole domain is under 255.
  • Do uppercase letters change the length? No. Case doesn't change the octet count.

Try it on your own list

Run the free length checker, then upload the survivors at /verify. The first 100 checks are free with a Google sign-in, no card.

Pro, $39 a month: Unlimited email verification.* Never metered, never cut off. See pricing.

*Fair use: the first 100,000 checks a month at full speed, then slower, never cut off.

Common questions

What is the maximum length of an email address?

254 characters for plain ASCII addresses. RFC 5321 section 4.5.3.1 sets a 256-octet maximum for a forward or reverse path, including the punctuation, and the path wraps the address in angle brackets. Take those two characters off and 254 remain. Within that, the part before the @ may be at most 64 octets and the domain at most 255.

Is 320 the maximum email length?

320 is what you get by adding 64, the @ and 255. It is a sum of two separate limits, not a limit that can be reached in practice, because the 256-octet path limit in RFC 5321 is lower. Use 254 as the working maximum.

How long can the part before the @ be?

64 octets. RFC 5321 section 4.5.3.1.1 says the maximum total length of a user name or other local-part is 64 octets.

How long can a domain label be?

63 octets. RFC 1035 section 2.3.4 lists labels at 63 octets or less and whole names at 255 octets or less. A label is each piece between dots, such as the first word in a subdomain.

What database column size should I use for an email address?

Size it for 254 characters if you want to store every address that can legally exist. A smaller column silently truncates or rejects the rare long address, and a truncated address points at a different mailbox or none.

Does a short address mean it is a real address?

No. Length only says the address can be carried by mail systems. Whether the mailbox exists is a separate question that needs a verification check.

Check your list before you send

Real mailbox checks over SMTP, and nothing is sent to the address. Sign in with Google and your first 100 email checks are free, no card. Plans for bigger lists are on the pricing page.