How to Create a Free Custom Business Email With Gmail, ImprovMX and Brevo
A professional email address can make even a small business look more established.
Compare these two addresses:
yourbusiness@gmail.com
and:
contact@yourbusiness.com
The second immediately connects the email to the business's domain.
The usual solution is to pay for a business email service such as Google Workspace. That is an excellent long-term option, particularly when a company has multiple employees and needs managed mailboxes.
But what if you already own a domain, are still growing, and don't yet need another monthly subscription?
There is a practical alternative.
You can combine ImprovMX, Gmail and Brevo to create a custom-domain business email system that can initially run on their free tiers.
The result looks like this:
CUSTOMER SEES Your Business contact@yourbusiness.com
But behind the scenes, you can continue reading and replying to messages from the familiar Gmail interface.
This guide walks through the entire process step by step—including an important Gmail reply setting that can otherwise expose your underlying @gmail.com address.
Important: This guide assumes you already own a domain. The domain itself is not free. “Free” in this guide refers to using the free tiers of the email services described below. Free-plan limits and features can change over time.
What We're Building
Before changing DNS records or creating accounts, it helps to understand the architecture.
We need to solve two separate problems:
- Receiving email sent to your custom domain.
- Sending email from your custom domain.
We will use different services for each job.
Incoming email
Customer │ │ sends email to ▼ contact@yourbusiness.com │ ▼ ImprovMX │ │ forwards email ▼ yourbusiness@gmail.com │ ▼ You read it in Gmail
Outgoing email
You compose/reply in Gmail │ ▼ Brevo SMTP │ ▼ Customer Customer sees: Your Business contact@yourbusiness.com
This distinction will make the rest of the tutorial much easier to understand.
Before You Start
You need:
- A domain you control
- Access to the domain's DNS records
- A Gmail account
- A free ImprovMX account
- A free Brevo account
For example:
Domain: yourbusiness.com Business email we want: contact@yourbusiness.com Existing Gmail inbox: yourbusiness@gmail.com
At the time of writing, ImprovMX's Free plan includes one domain, up to 25 aliases and up to 500 forwarded emails per day. Brevo's Free plan includes up to 300 email sends per day. Always check the providers' current limits before relying on these numbers for production use.
Step 1: Find Out Where Your DNS Is Managed
This is one of the most common sources of confusion.
Where you bought your domain is not necessarily where its DNS is managed.
For example, you could have:
Domain purchased from │ ▼ Namecheap But nameservers point to │ ▼ Vercel Therefore DNS is managed in │ ▼ Vercel
If your nameservers are something like:
ns1.vercel-dns.com ns2.vercel-dns.com
you need to make the DNS changes in Vercel.
Adding the records to Namecheap would not help in that situation, even though you bought the domain there.
How to think about it
Your registrar is where you own/manage the domain registration.
Your DNS provider is where the records controlling your website, email and other domain services are managed.
Before continuing, identify the active DNS provider and open its DNS management page.
Do not change your nameservers simply because you want custom email. The goal is to add email records to your existing DNS configuration, not unnecessarily move the entire domain.
Step 2: Create the Custom Address in ImprovMX
Create an account with ImprovMX and add your domain.
For example:
yourbusiness.com
Next, create an alias.
If you want:
contact@yourbusiness.com
your alias is simply:
contact
Set its destination to your Gmail account:
contact@yourbusiness.com │ ▼ yourbusiness@gmail.com
This does not create a separate mailbox.
Instead, ImprovMX acts as a forwarding layer.
When someone sends an email to your professional address, ImprovMX receives it and forwards it to Gmail.
Other aliases you could create later
Depending on your needs and plan limits, you could also have:
hello@yourbusiness.com support@yourbusiness.com info@yourbusiness.com sales@yourbusiness.com
Start with one address first. Once the complete send-and-receive flow works, additional aliases are easier to introduce.
Step 3: Point Your Domain's Incoming Email to ImprovMX
Creating an alias isn't enough.
Email servers around the world need to know that ImprovMX should receive mail for your domain.
That's what MX records do.
ImprovMX will show the DNS records required for your account.
A typical configuration includes MX records pointing to ImprovMX.
Conceptually
Someone sends email to contact@yourbusiness.com │ ▼ Internet checks your domain's MX records │ ▼ MX records point to ImprovMX │ ▼ ImprovMX receives the email
Go to your active DNS provider and add the records shown in your ImprovMX account.
If your DNS is managed by Vercel, make the changes in:
Vercel → Domains → your domain → DNS
Important
Use the DNS values displayed by your own ImprovMX account.
Do not blindly copy another person's DNS values from a tutorial.
Also, do not delete unrelated website records.
Your website and email can coexist on the same domain.
Step 4: Verify ImprovMX
Return to ImprovMX after adding the DNS records.
Allow it to check your domain.
DNS updates can sometimes take time to propagate across the internet, so don't assume something is broken if verification isn't instantaneous.
Once ImprovMX recognizes the configuration, your forwarding domain should become active.
Step 5: Test Incoming Email Before Doing Anything Else
Don't configure Brevo yet.
First prove that receiving works.
Use another email account—not the Gmail account you're forwarding to—and send a message to:
contact@yourbusiness.com
Then check:
yourbusiness@gmail.com
You should receive the forwarded message.
Can't find it?
Check:
- Inbox
- Spam
- All Mail
During our own implementation of this setup, an early forwarded test message landed in Gmail's Spam folder even though the forwarding configuration itself was working.
If the message is legitimate, use Gmail's Not spam action.
Step 6: Create a Gmail Filter for Your Business Address
You can also tell Gmail not to classify messages addressed to your business address as spam.
Open:
Gmail → Settings → See all settings → Filters and Blocked Addresses
Choose:
Create a new filter
In the To field enter:
contact@yourbusiness.com
Continue and select:
Never send it to Spam
You can optionally apply a label such as:
Business Contact
or:
Website & Business Inquiries
What I would not recommend
Don't automatically mark every message sent to a public business address as important.
Eventually, public email addresses attract spam too.
Use:
Never send it to Spam
rather than automatically declaring every message important.
Receiving Is Now Complete
At this point you have:
RECEIVING Customer │ ▼ contact@yourbusiness.com │ ▼ ImprovMX │ ▼ yourbusiness@gmail.com
But we have only solved half of the problem.
We now need Gmail to send as:
contact@yourbusiness.com
instead of:
yourbusiness@gmail.com
For that, we'll use Brevo.
Step 7: Create a Brevo Account
Create a free Brevo account.
You can use your existing Gmail address as the Brevo account/login email.
That does not mean customers will see your Gmail address.
Next, locate Brevo's domain management area.
Depending on the current Brevo interface, this is generally under:
Settings → Senders, Domains, IPs → Domains
Add:
yourbusiness.com
Brevo needs to authenticate the domain before it can reliably send email on its behalf.
Step 8: Authenticate Your Domain With Brevo
This is one of the most important parts of the setup.
Brevo may ask you to add records such as:
Brevo Code │ ├── Verifies domain ownership │ DKIM │ ├── Authenticates/signs outgoing email │ DMARC │ └── Defines authentication policy/reporting
Depending on Brevo's current configuration for your account, DKIM may appear as one TXT record or two CNAME records.
Why this matters
Without proper authentication, receiving providers have less evidence that Brevo is genuinely authorized to send email for:
yourbusiness.com
Authentication improves trust and helps protect your domain against impersonation.
Step 9: Add the Brevo DNS Records
You may be offered automatic or manual authentication.
If you are comfortable managing DNS and want to see exactly what is being added, choose the manual option.
Brevo will give you the required:
- Name/Host
- Record type
- Value
Return to the same DNS provider you identified in Step 1.
Add the records exactly as Brevo provides them.
A conceptual example might look like:
TYPE: TXT
NAME: @
PURPOSE: Brevo verification
TYPE: CNAME
Name: brevo1._domainkey
PURPOSE: DKIM
TYPE: CNAME
Name: brevo2._domainkey
PURPOSE: DKIM
TYPE: TXT
Name: _dmarc
PURPOSE: DMARC
the actual values will be specific to your domain.
Do not copy another domain's DKIM values
DKIM values are not universal configuration snippets.
Always use the values generated for your domain inside Brevo.
Step 10: Be Careful With Existing DNS Records
This deserves its own section because incorrect DNS changes can break working email.
Do not remove your ImprovMX MX records
They are responsible for receiving:
Customer ↓ ImprovMX ↓ Gmail
Brevo's authentication records serve a different purpose.
Be careful with SPF
If your domain already has an SPF TXT record beginning with:
v=spf1
don't blindly create multiple independent SPF policies for the same hostname.
Be careful with DMARC
Look for an existing:
_dmarc
TXT record before adding another one.
A domain should not be left with conflicting DMARC records.
If one already exists, understand the existing policy before replacing or modifying it.
Step 11: Verify the Domain in Brevo
After publishing the DNS records, return to Brevo and start verification.
You ultimately want the domain to show:
Authenticated ✓
DNS propagation can take time.
Brevo notes that domain authentication changes can sometimes take up to 48 hours to propagate fully, although they often verify much sooner.
Step 12: Should You Configure a Branded Subdomain?
Brevo may offer an optional branded subdomain.
For example:
mail.yourbusiness.com
This is not another public email address.
Your customers still use:
contact@yourbusiness.com
The branded subdomain is used for parts of Brevo's underlying email infrastructure and branding.
Is it required?
No.
You can skip it and return later.
If you prefer to complete the setup now, a clean option is:
mail.yourbusiness.com
Then follow the additional DNS instructions Brevo provides.
Step 13: Create Your Brevo Sender
Now create the identity Brevo will send from.
For example:
Sender name
Your Business
Sender email
contact@yourbusiness.com
The goal is for recipients to see:
Your Business <contact@yourbusiness.com>
Step 14: Generate a Dedicated Brevo SMTP Key
Go to:
Brevo → Settings → SMTP & API → SMTP
Generate a new SMTP key.
Use a descriptive name such as:
Business Gmail SMTP
If Brevo asks for the key variant, use the standard/stronger option unless your mail client specifically requires a short legacy credential.
For expiry, a sensible security practice is to rotate credentials periodically rather than leaving the same credential active forever.
For example:
Expiry: 1 year
Treat this key like a password
Never:
- Publish it
- Commit it to GitHub
- Put it in screenshots
- Send it through public chat
- Store it in browser/frontend code
Save it securely.
Step 15: Add Your Custom Address to Gmail
Now open the Gmail account where ImprovMX forwards your email.
Go to:
Settings → See all settings → Accounts and Import
Find:
Send mail as
Choose:
Add another email address
Enter:
Name
Your Business
Email address
contact@yourbusiness.com
For this type of setup, you can generally keep:
Treat as an alias
enabled.
Continue to the SMTP configuration.
Step 16: Connect Gmail to Brevo SMTP
Gmail will ask how it should send email for your custom address.
Use the SMTP information displayed in your Brevo account.
A typical Brevo configuration is:
SMTP Server smtp-relay.brevo.com Port 587 Username YOUR BREVO SMTP LOGIN Password YOUR BREVO SMTP KEY Security TLS
Important distinction
The username should be the SMTP Login Brevo gives you.
Don't simply assume it is:
yourbusiness@gmail.com
And the password is your generated:
Brevo SMTP key
It is not:
- Your Gmail password
- Your Brevo login password
- Your Brevo API key
Select:
Secured connection using TLS
with port:
587
Then choose:
Add Account
Step 17: Verify Your Address With Google
Google will send a confirmation message to:
contact@yourbusiness.com
Now watch the architecture we built work:
Google │ ▼ contact@yourbusiness.com │ ▼ ImprovMX │ ▼ yourbusiness@gmail.com
Open Gmail.
Find Google's verification message.
If necessary, check Spam.
Click the verification link.
Google should now list your custom address under:
Send mail as
Step 18: Make Your Business Address the Default Sender
Return to:
Gmail → Settings → Accounts and Import → Send mail as
You should now have something similar to:
Your Name <yourbusiness@gmail.com> Your Business <contact@yourbusiness.com>
If this Gmail account is primarily being used for the business, make:
contact@yourbusiness.com
the default.
This reduces the risk of accidentally emailing customers from the underlying Gmail address.
Step 19: The Gmail Reply Setting You Should Not Ignore
This is one of the most useful lessons from implementing this setup in a real environment.
At first glance, everything can appear correct:
- The custom address works.
- Brevo SMTP works.
- A website inquiry reaches Gmail.
- Clicking Reply reaches the customer.
Yet the customer may still be able to open Gmail's message details and see:
From: yourbusiness@gmail.com mailed-by: gmail.com signed-by: gmail.com
Why?
Because Reply-To and From are two different things.
Reply-To determines:
WHO receives your reply
From determines:
WHICH identity you send the reply from
This distinction becomes especially important when your website sends notifications directly to your underlying Gmail account.
Step 20: Configure Gmail's Reply Behaviour
If this Gmail account is dedicated primarily to your business, I recommend:
- Make
contact@yourbusiness.comthe default sender. - Under When replying to a message, choose:
Always reply from default address
Your default should show:
contact@yourbusiness.com
Now the intended behaviour becomes:
Website/customer message │ ▼ Gmail │ You reply │ ▼ FROM: contact@yourbusiness.com │ ▼ Brevo SMTP │ ▼ Customer
A simple habit that prevents mistakes
Before clicking Send, glance at Gmail's From field.
You want:
Your Business <contact@yourbusiness.com>
Not:
Your Name <yourbusiness@gmail.com>
Step 21: Test the Complete System
Do not consider the setup finished until you've tested both directions.
Test A — Incoming email
From another account:
TO: contact@yourbusiness.com
Confirm it arrives in your Gmail inbox.
Test B — New outgoing email
In Gmail, compose a completely new message.
Check:
FROM: Your Business <contact@yourbusiness.com>
Send it to your test account.
On the receiving account, confirm that the visible sender is:
contact@yourbusiness.com
Test C — Full reply loop
From the test account, reply to your business email.
Receive the response in your business Gmail.
Click Reply.
Before sending, verify:
FROM: contact@yourbusiness.com
Send the response.
Then inspect it from the customer's account.
The underlying Gmail address should not be the visible sender.
Step 22: Verify SPF, DKIM and DMARC
For an additional technical check, send an email to another Gmail account.
Open the received message.
Choose:
More → Show original
Look for authentication results such as:
SPF: PASS DKIM: PASS DMARC: PASS
The exact underlying sending domains may differ because Brevo operates the delivery infrastructure.
The important goal is proper authentication and alignment for your business sending identity.
The Complete Architecture
You now have a surprisingly capable business email system.
YOUR DOMAIN --> yourbusiness.com
INCOMING --> ImprovMX --> Gmail
OUTGOING --> Gmail --> Brevo SMTP --> Customer
Or, from the customer's perspective:
Customer sends to: contact@yourbusiness.com
↓
You receive it in Gmail.
You reply from Gmail
↓
Customer receives from: contact@yourbusiness.com
The complexity remains behind the scenes.
Brevo SMTP Key vs Brevo API Key
This is another easy mistake to make.
They are not interchangeable.
GMAIL SENDING Gmail │ ▼ Brevo SMTP │ └── Uses SMTP KEY
But:
WEBSITE FORM Website server │ ▼ Brevo API │ └── Uses API KEY
If your website calls Brevo's transactional API with an SMTP credential, Brevo can reject the request because the credential is for the wrong authentication system.
Security rule
Your API key should remain:
server-side only
Never expose it through:
NEXT_PUBLIC_BREVO_API_KEY
or equivalent client-accessible environment variables.
A Better Website Inquiry Architecture
If you are implementing website forms, don't make email your only record of an inquiry.
A stronger architecture is:
Customer submits inquiry │ ▼ Server validates it │ ▼ Save to database │ ▼ Send email notification
If the database save succeeds but the email notification temporarily fails, the customer's inquiry is still safely stored.
Your database becomes the source of truth.
The email is simply the notification mechanism.
Security Checklist
Before relying on the system for real customers, verify the following:
- Your Gmail account uses 2-Step Verification.
- Your Brevo SMTP key is private.
- Your Brevo API key, if used, remains server-side.
- Your domain is authenticated.
- DKIM is configured.
- DMARC is configured.
- You have not accidentally created conflicting SPF records.
- Your Gmail default sender is the custom address.
- Business replies use the custom address as From.
- Website forms cannot choose arbitrary Brevo recipients or senders.
- Public forms have server-side validation and basic anti-spam protection.
Troubleshooting
Emails sent to my custom address aren't reaching Gmail
Check:
- Is the ImprovMX domain active?
- Are your MX records correct?
- Are you forwarding to the correct Gmail address?
- Did the message land in Spam?
- Have the DNS changes finished propagating?
Gmail can receive but cannot send from the custom address
Check:
- Is your Brevo domain authenticated?
- Is the sender configured in Brevo?
- Are you using the correct Brevo SMTP Login?
- Did you use the SMTP key—not an API key?
- Are you using the correct SMTP server?
- Are you using port 587 with TLS?
Customers still see my Gmail address
Check:
Gmail → Settings → Accounts and Import → Send mail as
Make sure:
contact@yourbusiness.com
is your default.
Then check your reply behaviour.
For a dedicated business Gmail inbox, consider:
Always reply from default address
Finally, always inspect the From field before sending.
My website form is saved in the database but no email arrives
Check your Brevo transactional logs.
If there is no Brevo log entry, your website may never have successfully called Brevo.
If Brevo reports an authentication error, confirm that your website uses a Brevo API key, not the SMTP key used by Gmail.
Brevo says the domain is authenticated but not branded
These are different statuses.
Authenticated means your sending domain authentication is configured.
Branded refers to the optional branded-domain/subdomain configuration.
You do not need to panic if authentication is complete but branding has not been configured.
Final Thoughts
A professional email address shouldn't have to be one of the first recurring expenses of a new business.
If you already own your domain, combining ImprovMX, Gmail and Brevo gives you a practical way to start using an address such as:
contact@yourbusiness.com
while continuing to work from Gmail.
The important thing is understanding what each service is responsible for:
ImprovMX ↓ Receives and forwards Gmail ↓ Your everyday inbox Brevo ↓ Authenticated outgoing email Your domain ↓ Your professional identity
Take the time to authenticate the domain correctly, protect your credentials and test both new messages and replies.
That last part matters.
A setup can appear to work while still exposing your underlying Gmail address on replies. Checking your Gmail default sender and inspecting a real test message from the recipient's side can catch that before a customer does.
Start with the free infrastructure while it meets your needs.
Then upgrade when your business—not a sales page—gives you a genuine reason to.
RayCodeStar — Imagine. Create. Impact.