Adding an addon domain in cPanel is straightforward, but getting everything configured correctly—DNS propagation, SSL certificates, email routing, directory permissions—requires methodical attention. This checklist walks you through every step, from the initial domain purchase to post-launch verification, so you can confidently host multiple domains on a single cPanel account.
Before You Add the Addon Domain
Verify Your Hosting Plan Supports Addon Domains
Not all shared hosting plans permit addon domains. Check your plan limits in cPanel under Account Information or contact your host. Entry-level plans often restrict you to one domain or offer only parked domains and subdomains.
Confirm Domain Ownership and Access
Ensure you own the domain or have administrative access at your registrar. You will need to update nameservers or create DNS records pointing to your cPanel server.
Check cPanel Disk Space and Bandwidth Limits
Each addon domain shares the account's disk quota and bandwidth. Review current usage in the cPanel sidebar to confirm you have sufficient resources for the new site.
Note the cPanel Server IP Address
You will need your server's shared IP or dedicated IP for DNS configuration. Find it in Server Information or your hosting welcome email. Record both the IPv4 address and the IPv6 address if your host provides dual-stack support.
Adding the Addon Domain in cPanel
Navigate to the Addon Domains Interface
Log into cPanel and locate Domains > Addon Domains (or search "addon" in the top search bar). The interface shows existing addon domains and a form to add a new one.
Enter the New Domain Name
cPanel auto-populates the subdomain and document root fields based on the domain name you enter. For example.com, cPanel typically suggests:
- Subdomain:
example - Document Root:
public_html/example.com
You can customize these, but the defaults work well for most use cases. The subdomain field is a legacy implementation detail—cPanel creates a subdomain alias internally, but you rarely interact with it.
Choose a Sensible Document Root
The document root is where your site files will live. Common patterns:
public_html/example.com— clean, domain-specificpublic_html/example— shorter, but less explicitpublic_html/sites/example.com— if managing many domains
Avoid placing addon domains directly in public_html root to prevent file conflicts between domains.
Decide Whether to Create an FTP Account
The form offers an optional FTP account tied to the addon domain's directory. If you plan to grant a contractor or client isolated FTP access to this domain only, create the account now. Otherwise, skip it and use your main cPanel credentials.
Submit and Verify Creation
Click Add Domain. cPanel creates the directory structure, updates Apache configuration, and sets appropriate file ownership. Confirm the domain appears in the Addon Domains list.
Configuring DNS for the Addon Domain
Adding the domain in cPanel does not automatically route internet traffic to your server. You must configure DNS at your registrar or DNS provider.
Option 1: Point Nameservers to cPanel Server
The simplest approach for most users. Update the domain's nameservers at your registrar to match your host's nameservers (typically something like ns1.yourhost.com and ns2.yourhost.com). Once propagation completes, cPanel's DNS zone handles all records automatically.
Propagation time: Typically 4–48 hours, though many registrars propagate within minutes.
Option 2: Add A and AAAA Records Manually
If you prefer to keep DNS management at your registrar or use a third-party DNS provider like Cloudflare, create these records:
Type Name Value
A @ your.server.ipv4.address
A www your.server.ipv4.address
AAAA @ your:server:ipv6:address
AAAA www your:server:ipv6:address
Replace @ with your domain name if your DNS provider requires fully qualified names. Omit AAAA records if your host does not provide IPv6.
Verify DNS Propagation
Use dig or online tools to confirm DNS resolution:
dig example.com +short
dig www.example.com +short
Both should return your cPanel server's IP address. If you see old IP addresses or no response, DNS has not propagated yet.
Setting Up SSL/TLS for the Addon Domain
Let AutoSSL Run (if Enabled)
Most cPanel hosts enable AutoSSL by default. After DNS propagates, cPanel automatically requests and installs a free DV certificate from Let's Encrypt or Sectigo within a few hours. Check SSL/TLS Status in cPanel to monitor progress.
Manually Issue a Certificate (if Needed)
If AutoSSL is disabled or fails:
- Go to SSL/TLS > Manage SSL Sites
- Select your addon domain from the dropdown
- Click Run AutoSSL or use Generate, view, or delete SSL certificates to request a free Let's Encrypt certificate
Install a Third-Party Certificate
If you purchased an SSL certificate from a CA:
- Navigate to SSL/TLS > Manage SSL Sites
- Select the addon domain
- Paste the certificate, private key, and CA bundle into the form
- Click Install Certificate
Force HTTPS Redirects
After the certificate is active, add this to the addon domain's .htaccess file (in the document root):
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
This redirects all HTTP requests to HTTPS.
Verify SSL Installation
Visit https://example.com in a browser. The padlock icon should appear without warnings. Use online SSL checkers to confirm the certificate chain is complete and the certificate matches your domain.
Email Configuration for the Addon Domain
Create Email Accounts
Navigate to Email Accounts in cPanel and create addresses for the addon domain (e.g., [email protected]). cPanel automatically configures mail routing for addon domains.
Configure MX Records
If you pointed nameservers to cPanel, MX records are already configured. If managing DNS externally, add an MX record:
Type Name Priority Value
MX @ 0 mail.example.com
Create a corresponding A record for mail.example.com pointing to your server IP.
Set Up SPF and DKIM
Navigate to Email Deliverability in cPanel. cPanel auto-generates SPF and DKIM records. If managing DNS externally, copy the records and add them manually:
SPF (TXT record):
v=spf1 +a +mx +ip4:your.server.ip ~all
DKIM (TXT record): cPanel provides the full selector and key.
Add DMARC Policy
Create a TXT record for _dmarc.example.com:
v=DMARC1; p=none; rua=mailto:[email protected]
Adjust the policy (p=none, p=quarantine, or p=reject) as your deliverability monitoring matures.
Test Email Sending and Receiving
Send a test email from the new address and verify it arrives. Send an email to the address from an external account and confirm receipt. Check spam folders if messages do not appear.
File Management and Permissions
Upload Site Files to the Correct Directory
Use File Manager, FTP, or SSH to upload your site files to the addon domain's document root (e.g., public_html/example.com). Place the homepage as index.html or index.php in that directory.
Set Correct File and Directory Permissions
Standard secure permissions:
- Directories:
755(rwxr-xr-x) - Files:
644(rw-r--r--) - Executable scripts (if needed):
755
Avoid 777 permissions, which create security vulnerabilities. Use cPanel's File Manager > Permissions or via SSH:
find public_html/example.com -type d -exec chmod 755 {} \;
find public_html/example.com -type f -exec chmod 644 {} \;
Verify .htaccess Configuration
If your site uses custom rewrite rules, redirects, or security headers, place an .htaccess file in the document root. Test that rules do not conflict with cPanel's existing configuration. Syntax errors in .htaccess result in 500 Internal Server Error responses.
Database Setup (if Required)
Create a MySQL Database and User
Navigate to MySQL Databases in cPanel:
- Create a new database (e.g.,
cpaneluser_exampledb) - Create a database user with a strong password
- Add the user to the database with All Privileges
Update Application Configuration
Edit your site's database configuration file (e.g., wp-config.php for WordPress, config.php for others) with the new credentials:
define('DB_NAME', 'cpaneluser_exampledb');
define('DB_USER', 'cpaneluser_dbuser');
define('DB_PASSWORD', 'secure_password_here');
define('DB_HOST', 'localhost');
Import Existing Database (if Migrating)
Use phpMyAdmin to import an SQL dump, or via command line:
mysql -u cpaneluser_dbuser -p cpaneluser_exampledb < backup.sql
Post-Launch Verification
Test the Site in Multiple Browsers
Visit http://example.com, https://example.com, and https://www.example.com. Confirm all resolve correctly and redirect to HTTPS as expected.
Check for Mixed Content Warnings
If the padlock icon shows warnings, open browser developer tools and look for HTTP resources loaded on HTTPS pages. Update hardcoded HTTP URLs in your HTML, CSS, or JavaScript.
Verify Subdomain Access Does Not Work (Optional)
If you want the addon domain isolated, confirm that http://example.yourmainsite.com does not resolve or shows a 404. This prevents accidental exposure through the subdomain alias cPanel creates.
Run a Security Scan
Use online tools or server-side malware scanners (like Imunify360 or ClamAV) to confirm the uploaded files are clean, especially if migrating from an old host.
Review Error Logs
Check Metrics > Errors in cPanel for any recent 404s, 500s, or PHP errors related to the new domain. Address issues immediately.
Set Up Backups
Navigate to Files > Backup and configure automatic backups for the addon domain, or set up a manual backup schedule. Store backups offsite for redundancy.
Common Pitfalls and Troubleshooting
"Domain Already Exists" Error
This usually means the domain is configured as a parked domain, subdomain, or already added as an addon domain. Check Domains to see all configured domains and remove conflicts before re-adding.
DNS Not Propagating After 48 Hours
Verify you updated the nameservers or A records at the correct registrar account. Some registrars require you to unlock the domain or disable WHOIS privacy before DNS changes apply.
SSL Certificate Not Issuing
AutoSSL requires the domain to resolve correctly via HTTP on port 80 for validation. Confirm DNS points to your server and that no firewall or .htaccess rules block /.well-known/acme-challenge/.
Site Shows "Index of /" or Blank Page
Your document root is missing an index.html or index.php file. Upload your homepage file or check that it is named correctly.
Email Not Sending from the Addon Domain
Confirm MX records exist and point to your server. Check SPF and DKIM records. Review /var/log/exim_mainlog (if you have SSH access) or contact your host to investigate mail delivery failures.
Addon Domain Shows Main Site's Content
This happens if Apache is serving the main account's document root for all domains. Confirm the addon domain's DocumentRoot in cPanel's MultiPHP Manager or contact hosting support to rebuild Apache configuration.
Conclusion
Adding an addon domain in cPanel is more than clicking a button—it involves DNS configuration, SSL setup, email routing, and careful file management. Use this checklist to ensure each step is complete and verified. Most issues stem from incomplete DNS propagation, misconfigured nameservers, or missing SSL certificates. By methodically working through each section, you'll avoid the common pitfalls and confidently host multiple domains on a single cPanel account.
When in doubt, verify each layer: DNS resolution first, then HTTP access, then HTTPS, then email. Isolate problems systematically, and consult cPanel's error logs or your hosting provider's support team when server-level configuration is needed. With these practices, your addon domain will be stable, secure, and ready for production traffic.
