How to Create and Manage Email Accounts in cPanel
If you're still running your business off a Gmail address, switching to a proper you@yourdomain.com inbox takes about five minutes in cPanel. This guide walks through creating the account, connecting it to webmail or a desktop client, and fixing the login and quota problems that trip people up afterward.
Mailbox vs. Forwarder: Pick the Right One First
cPanel gives you two ways to handle an address like sales@yourdomain.com, and picking the wrong one causes half the support tickets we see:
- Email Account (mailbox) - stores mail on the server. You log in and read it via webmail or IMAP/POP. Use this for real inboxes people check daily.
- Forwarder - no storage at all. Mail just gets redirected to another address (like your personal Gmail). Use this for catch-all addresses you don't want to manage separately.
This guide covers the mailbox route, since that's what most businesses actually need.
One more option worth knowing about: plus addressing. Most cPanel mail setups let you send to sales+invoices@yourdomain.com and have it land in the same sales mailbox - handy for tracking where a signup or newsletter subscription came from without creating a whole new account for it.
Step 1: Create the Email Account
- Log in to cPanel and open Email Accounts under the Email section.
- Click Create.
- Enter the username (the part before the @) and confirm the domain from the dropdown if you run multiple domains on the account.
- Set a strong password, or click Generate for a random one - write it down somewhere safe, cPanel won't show it again.
- Set a mailbox quota. 1-2 GB is plenty for a normal work inbox; leave it Unlimited only if you have the disk space to spare and don't mind one account filling the partition.
- Click Create.
The account is live immediately - no propagation wait, since it's just a database entry on your own mail server.
Step 2: Access Webmail
Every cPanel account gets a webmail login at:
https://yourdomain.com/webmail
or
https://mail.yourdomain.comLog in with the full email address as the username and the password you set. You'll land on a picker for three webmail apps - Roundcube is the modern default and what we'd recommend unless you have a reason to prefer Horde.
Step 3: Set Up a Desktop or Mobile Mail Client
For Outlook, Apple Mail, Thunderbird, or a phone's mail app, use these settings. Swap yourdomain.com for your actual domain:
| Setting | Value |
|---|---|
| Incoming server (IMAP) | mail.yourdomain.com, port 993, SSL/TLS |
| Incoming server (POP3) | mail.yourdomain.com, port 995, SSL/TLS |
| Outgoing server (SMTP) | mail.yourdomain.com, port 465, SSL/TLS |
| Username | Full email address (not just the prefix) |
| Authentication | Normal password |
Prefer IMAP over POP3 unless you have a specific reason not to. IMAP keeps mail synced on the server across every device; POP3 downloads and often deletes it, which means your phone and laptop end up showing different inboxes.
Not sure of the exact server names for your account? cPanel builds them for you - go to Email Accounts → Connect Devices next to the mailbox, and it'll list the exact host, ports, and even a QR code / auto-config file for Outlook and Thunderbird.
A Note on Port 25
If outgoing mail fails specifically from a VPS you manage yourself (not shared cPanel hosting), check whether your provider blocks port 25 by default to cut down on spam abuse. Use port 465 or 587 for SMTP instead - most residential and business ISPs block 25 outbound anyway, so client software should never be configured to use it.
Common Problems and Fixes
"Login denied" or "Authentication failed"
Almost always one of three things:
- Username entered as just
salesinstead of the fullsales@yourdomain.com- mail clients need the full address. - Password has a typo, or was copy-pasted with a trailing space.
- The mailbox quota is full - some servers lock out new logins (not just sending) once a mailbox hits 100% and the client can't even authenticate to check.
Reset the password from cPanel's Email Accounts list if you're not sure it's correct - it takes effect instantly.
"Mailbox is full" / bounced mail
Open Email Accounts in cPanel and check the usage bar next to the address. Two options:
- Raise the quota (Manage → change the Storage Space value).
- Clean out old mail - the Sent and Trash folders are usually the biggest offenders, and most webmail clients don't auto-empty Trash unless you configure them to.
Mail sends but lands in spam
That's usually not an account problem - it's a DNS one. Your domain needs valid SPF, DKIM, and DMARC records so receiving servers trust mail claiming to come from you. We've covered the exact records to add in a separate deliverability guide if that's what you're running into.
Can't connect from a specific network
Some offices, coffee shops, and mobile carriers block outbound SMTP ports entirely. Try switching from port 465 to 587 (STARTTLS) in your client, or test from a different network to confirm it's the network and not the account.
Managing Accounts Going Forward
- Delete unused mailboxes promptly when an employee leaves - an old inactive inbox is a common target for credential-stuffing attempts.
- Set up a catch-all sparingly. It's convenient for typo'd addresses but also means every spam bot guessing at your domain lands in an inbox instead of bouncing.
- Use Email → Global Email Filters in cPanel if you want simple server-side rules (like blocking a sender) without touching each mailbox individually.
- Check disk usage periodically under Email Accounts if several mailboxes share a cPanel account with a fixed disk quota - a few unlimited-quota inboxes can quietly eat your whole allowance.
Once the account's created and a client's connected, it just runs - most of the tickets we see come from the two things above: full mailboxes and DNS records, not the mailbox setup itself.
Quick Reference: Symptom → Likely Cause
| Symptom | Most likely cause | Where to look |
|---|---|---|
| Authentication failed on setup | Wrong username format or password typo | Use full email address; reset password in cPanel |
| Mail bounces with "mailbox full" | Quota reached | Email Accounts usage bar; raise quota or clear Trash |
| Mail delivers but lands in spam | Missing/broken SPF, DKIM, DMARC | Zone Editor / DNS records for the domain |
| Client connects on Wi-Fi but not mobile data | Carrier or network blocking SMTP ports | Switch client from port 465 to 587 |
| Works in webmail, not in Outlook/Thunderbird | Wrong host/port in client config | Connect Devices page in cPanel for exact settings |
Frequently asked questions
Do I need to create an email account for every address on my domain?
Only for addresses people actually log in and read. For anything that should just redirect elsewhere - like a legacy address or a typo catch - use a Forwarder instead, which doesn't consume mailbox storage.
Why does my new email account work in webmail but not in Outlook?
This is almost always a server name or port mismatch. Use cPanel's Email Accounts → Connect Devices page to get the exact incoming/outgoing hostnames and ports for your account rather than guessing at mail.yourdomain.com.
Can I change an email account's password without losing existing mail?
Yes. Resetting the password in cPanel only changes the login credential - all mail stored on the server stays exactly where it is. You'll just need to update the saved password in any connected mail clients.
How much storage should I give each mailbox?
1-2 GB covers a typical work inbox for a year or more if attachments are cleaned out periodically. Only set Unlimited if your hosting plan has disk space to spare, since one runaway mailbox can otherwise starve the rest of your account.
Why is outgoing mail failing only on my VPS, not on shared hosting?
Many VPS and cloud providers block outbound port 25 by default to prevent spam abuse from compromised servers. Configure your mail client or application to send via port 465 or 587 instead.