Skip to main content

How to connect your custom domain to a Levamo website

Connect an apex domain or a subdomain to your Levamo site using the Nameserver, Cloudflare API, or CNAME for subdomain method.

Overview

Connecting a custom domain lets visitors reach your site at an address you own, like yourcompany.com, instead of your default Levamo URL. Levamo manages every custom domain through its Cloudflare integration, so a connected domain gets enterprise-grade DNS, CDN, and security by default.

Connecting a domain happens in two steps: first you connect it to your Levamo account, then you connect it to a specific site. An apex domain, your domain itself, like yourdomain.com, as opposed to a subdomain like blog.yourdomain.com, always needs both steps. A subdomain can either inherit an already-connected apex domain's setup, or connect on its own using the CNAME for subdomain method, which skips account-level connection entirely.

In this article, you will find what to have ready before you start, and step-by-step instructions for connecting an apex domain, connecting a subdomain, and completing the site-level connection.


Prerequisites

Before you begin, make sure you have:

  • An active Levamo site: The site you want to connect the domain to.

  • A purchased domain name: Ready to configure.

  • Access to your domain registrar or DNS provider: For example, Cloudflare, GoDaddy, or Namecheap.

  • A copy of your current DNS records: Required if you're using the Nameserver method and have existing records you rely on, such as MX records for email. Levamo does not import these automatically for a new domain on the Nameserver method, you'll complete this as its own required step below. If you're using the Cloudflare API method instead, Levamo imports your records automatically and this step doesn't apply.


Which path is right for you?

I want to connect an apex domain to a Levamo site

Follow Connecting an apex domain below, either Method A: Nameserver or Method B: Cloudflare API. Then follow Connecting the domain to a site. If you used the Cloudflare API method, you'll also choose there whether that site is Levamo-managed or self-managed.

I want to connect a subdomain to a Levamo site

You have two options:

  • Follow Connecting an apex domain below, same as above. Once that's done, connecting your subdomain to a site only takes a minute.

  • If you'd rather not touch your nameservers at all, follow Connecting a subdomain, Option 1: CNAME for subdomain instead. This connects just the subdomain, without ever connecting the rest of your domain to Levamo.

Note:

CNAME for subdomain is always Levamo-managed. If you want a self-managed subdomain, connect your domain via the Cloudflare API method instead.

For a full comparison of what each method gets you, see Guide to custom domains.

What you'll get

Once your domain is connected and Levamo-managed, whether through the Nameserver method, the Cloudflare API method, or CNAME for subdomain, Levamo's Enterprise Cloudflare stack activates automatically:

  • Global Cloudflare CDN: Static content is cached and delivered from edge servers worldwide, improving speed and reliability for every visitor.

  • Web Application Firewall (WAF): Adds an automatic security layer against malicious attacks to every connected domain.

  • Full Page Caching (FPC): Serves entire pages from the edge without hitting your origin server on every request.

  • Simplified DNS management: For domains connected via the Nameserver or Cloudflare API method, manage all DNS records directly within the Levamo dashboard. This doesn't apply to CNAME for subdomain: DNS for the subdomain stays at your own DNS provider.

  • Faster support for DNS issues: For domains where DNS is visible in your dashboard, our support team can diagnose and resolve problems quickly, minimizing downtime.

Note:

If you connect a domain via the Cloudflare API method and choose self-managed at the site connection step, Levamo's Enterprise Cloudflare features are not available for that domain. All Cloudflare-edge configuration stays under your control in your own Cloudflare dashboard. See Guide to custom domains for a full comparison of Levamo-managed and self-managed.


Connecting an apex domain

An apex domain, like yourdomain.com, requires account-level connection before it can be connected to a site. Both methods below require your domain's nameservers to point to Cloudflare, either Levamo's own or your own Cloudflare account's. If changing nameservers truly isn't an option for you, this isn't currently available for apex domains through self-service. Contact our support team.

Step 1: Start account-level connection

  1. Sign in to your Levamo account at my.levamo.com

  2. Click Domains in the top navigation

  3. Click + Add domain

  4. Enter your domain name and click Continue

Note:

Account-level connection is for apex domains only. If you enter a subdomain here, the dashboard shows a Root domain required error and directs you to either add the apex domain instead, or go connect the subdomain from the site you want it to serve. To connect a subdomain, see Connecting a subdomain below.

Method A: Nameserver

Use this method if your domain is using default domain registrar nameservers, such as GoDaddy, Namecheap, or Hostinger, or if nameservers have been delegated to any DNS manager that is not Cloudflare.

Step 2: Connect via nameservers

  1. On the Connect domain screen, select My domain is at my registrar

  2. Review the summary of what this enables, then click Add domain

    Tip:

    If you exit before finishing, your domain shows as Pending validation on the Domains page. Click Configure DNS next to it to pick up where you left off.

Step 3: Import your existing DNS zone

This step is required for every new domain connected via the Nameserver method. It does not happen automatically, and it must be completed before you update your nameservers at your registrar.

Import your existing DNS zone into Levamo now, before continuing to the next step. See How to Import a DNS Zone File for instructions.

Important:

Skipping this step can break services connected to your domain, including email, since records like MX won't carry over on their own. Complete this step before updating your nameservers, not after.

Step 4: Update your nameservers

Once your DNS zone is imported, log in to your domain registrar and update your domain's nameservers to the ones provided in Step 2.

For registrar-specific instructions, see How to change your nameservers.

Note:

Nameserver changes typically take a few minutes to a few hours to propagate globally, though in rare cases it can take up to 24 hours. You don't need to wait for propagation to finish before connecting this domain to a site.

Method B: Cloudflare API

Use this method if your domain is already managed by Cloudflare, or if you create a free Cloudflare account to manage it.

Don't have a Cloudflare account? You can create one for free at cloudflare.com. Add your domain to Cloudflare, then return to this step. If your domain isn't already on Cloudflare, this includes pointing your nameservers at the nameservers Cloudflare assigns to your account, a change made at your registrar, separate from Levamo's own nameservers.

Step 2: Connect via the Cloudflare API

  1. On the Connect domain screen, select "I already use Cloudflare"

  2. Generate a Cloudflare API token.

    Levamo accepts two kinds, created from two different places in your Cloudflare account: a profile token, tied to your individual Cloudflare user, or an account token, tied to the Cloudflare account itself rather than to any one person. If that user is ever removed from the Cloudflare account, or loses access to it, a profile token stops working and your domain's connection breaks.

    An account token keeps working even if whoever created it leaves your organization, so it's usually the safer choice if more than one person manages your Cloudflare setup, or if the account is managed by a team rather than an individual. Creating an account token requires Super Administrator access on the Cloudflare account, if you don't have that role, use a profile token instead.

Option A: Profile token

  1. In Cloudflare, go to My Profile, then API Tokens, then Create Token

  2. Give the token a name you'll recognize later

  3. Use the Edit zone DNS template

  4. Under Permissions, click + Add more and add Zone > SSL and Certificates > Edit

  5. Under Zone Resources, select Include > Specific zone and choose your domain

  6. Click Continue to summary, then Create Token

  7. Copy the generated token

  8. Once you have your token, back in the Levamo dashboard, paste it into the Cloudflare API token field, then click Add domain

Option B: Account token

  1. In Cloudflare, go to Manage Account, then Account API Tokens, then Create Token

  2. Give the token a name you'll recognize later

  3. Under Permission policies, select Start from scratch

  4. In the Edit policy panel, change the first dropdown from Entire Account to Specified Domains, then select your domain. Choose All Domains instead if you want to reuse this token across several sites.

  5. In the search field, search "dns," then set DNS to Edit and Zone to Read

  6. Search "ssl," then set Zone SSL and Certificates to Edit

  7. Click Add policy

  8. No other settings need adjusting. Click Review token, then Create Token

  9. Copy the generated token

  10. Once you have your token, back in the Levamo dashboard, paste it into the Cloudflare API token field, then click Add domain

Important:

If you're creating an account token (Option B), Cloudflare's policy scope must be set to a zone, either Specified Domains or All Domains, not Entire Account. Leaving it on Entire Account only shows account-level permissions, and the DNS and SSL permissions above won't be there to select.

Step 3: Confirm account-level status

Levamo validates the connection. When it's done, the domain shows as connected on your Domains page, ready to be attached to a site.


Connecting a subdomain

A subdomain, like blog.yourdomain.com, can be connected in one of two ways.

If the apex domain is already connected

Skip ahead to Connecting the domain to a site below. Your subdomain will inherit the apex domain's connection method.

If the apex domain isn't connected yet

When you try to connect a subdomain whose apex domain isn't connected at the account level, you'll be offered two options.

Option 1: CNAME for subdomain

  1. On the site you want the subdomain to serve, go to Manage > Domains and click + Add domain

  2. Enter your subdomain (for example, shop.yourdomain.com). Since the apex domain isn't connected to your account, the dashboard flags it as a subdomain and offers two choices: connect the apex domain to Levamo via Cloudflare, or connect just this subdomain. Choose Connect [subdomain] only.

  3. Add the certificate record: Copy the CNAME record the dashboard shows and add it at your DNS provider. This lets Cloudflare issue an SSL certificate for your subdomain, and it does not change where your subdomain currently points. Click Validate record, then confirm you've added it.

  4. Configure SSL certificate: Once the certificate is issued, which usually takes a few seconds to a couple of minutes, copy the TXT record the dashboard shows and add it at your DNS provider. This proves you control the subdomain. Your subdomain still points where it does today, so nothing changes for visitors yet. Click Validate records.

  5. Update DNS: Copy the final CNAME record the dashboard shows and add it at your DNS provider. This is the cutover step: once this record is live, your subdomain serves your Levamo site, and your apex domain isn't touched. Click Finish.

Important:

Add every record in this flow as DNS only, not proxied. If your DNS provider is Cloudflare, turn the proxy (orange cloud) off for each record. A proxied record stops Cloudflare from issuing the certificate or routing traffic correctly.

Note:

This connects only the subdomain. Your apex domain and the rest of your DNS zone are untouched. This method can't be used for an apex domain.

CNAME for subdomain connections are always Levamo-managed, though DNS for the subdomain stays at your own DNS provider rather than moving into the Levamo dashboard.

If you want a self-managed subdomain, connect the apex domain via the Cloudflare API method instead, then connect the subdomain from Site settings > Domains and choose self-managed there.

Option 2: Connect the apex domain first

Follow Connecting an apex domain above, then return to connect the subdomain to a site as described below.


Connecting a domain to a site

Once a domain is connected at the account level, connect it to the site you want it to serve.

Step 1: Navigate to site domains

  1. Go to Sites and select the site

  2. Click Manage, then open the Domains tab

  3. Click + Add domain

  4. Select the domain, or enter the subdomain

Step 2: Set your domain preferences

  1. WWW preference: Choose whether visitors should land on the naked domain (yourdomain.com) or the www version (www.yourdomain.com)

  2. Redirect behavior: Toggle whether the non-preferred version should redirect to your primary choice or remain inaccessible

Step 3: Choose who manages Cloudflare (Cloudflare API domains only)

If the domain was connected at the account level using the Cloudflare API method, choose one of the two options:

  • Levamo-managed (default, recommended): Levamo manages all Cloudflare settings for your domain, including DNS, CDN, security, and Full Page Caching. You get Levamo's full Enterprise-grade Cloudflare feature set.

  • Self-managed: You keep full control of your Cloudflare zone. Levamo only maintains the core DNS records needed to route your domain to your site. Levamo's Enterprise Cloudflare features are not available for this domain.

If the domain was connected using the Nameserver method, this step is skipped. The connection is automatically Levamo-managed.

Step 4: Verify your domain status

Return to the Domains tab in your site's dashboard to check the connection status:

Status

Meaning

What to do

Active

Domain is fully connected and serving your Levamo site

Nothing, you're all set

Pending Validation

DNS changes are still propagating, or a step is incomplete

Click Configure DNS to review your settings, or wait for propagation to complete

Expired

The connection timed out, or there's an issue with domain registration or SSL

Re-initiate the setup from your dashboard or contact support

You can also verify propagation externally using a tool like What's My DNS.

Step 5: Confirm your site is live

Once the status shows Active:

  1. Open a browser and navigate to your custom domain

  2. Confirm that your Levamo site loads correctly

  3. Test both the www and non-www versions to ensure redirects are working as expected

If your domain is not connecting or you experience any issues, reach out to our support team via live chat or at [email protected].


Important information

  • An apex domain always needs to be connected at the account level, either via nameserver method or the Cloudflare API method, before it can be connected to a site.

  • A subdomain can be connected on its own using CNAME for subdomain, without ever connecting its apex domain.

  • The Levamo-managed or self-managed choice only applies to domains connected at the account level via the Cloudflare API, and it's made when you connect the domain to a site, not before. It's made separately for each site, so two sites sharing the same apex domain (example: yourdomain.com and shop.yourdomain.com) can have different settings. If the apex domain used the Nameserver method instead, every site connection is automatically Levamo-managed.

  • Nameserver propagation is typically fast, usually a few minutes to a few hours, but can take up to 24 hours in rare cases. Cloudflare API connections validate almost instantly.

  • Switching between connection methods later isn't a self-service action in the dashboard. Contact our support team if you need to change your connection method.

  • For domains connected via Cloudflare API, individual site connections can be switched between Levamo-managed and self-managed in Site settings > Cloudflare at any time.


FAQ

What's the difference between "Levamo-managed" and "self-managed"?

Both require a Cloudflare API token at the account level, but they differ in who manages Cloudflare afterward, a choice you make when connecting the domain to a site. With Levamo-managed, the default, Levamo manages all Cloudflare settings for your domain, including DNS, CDN, security, and Full Page Caching. With self-managed, you keep full control of your Cloudflare zone, and Levamo only maintains the core DNS records needed to route your domain to your site. Self-managed is a good option for those with complex DNS setups in Cloudflare or for those using other services that our Enteprise stack doesn't work with.

Can I connect a subdomain without connecting its apex domain?

Yes, using CNAME for subdomain. Add a CNAME record and a TXT record to your existing DNS zone, and connect the subdomain directly to a site. Your apex domain stays untouched. If you'd rather have the subdomain inherit your apex domain's full Cloudflare setup, connect the apex domain at the account level first.

I see a "Root domain required" error. What does that mean?

This appears if you try to add a subdomain from the Domains page, which is for account-level connection and only accepts apex domains. Add the apex domain there instead, or go connect the subdomain directly from the site you want it to serve, either by inheriting an already-connected apex domain or by using CNAME for subdomain. This error doesn't come up when connecting a subdomain from a site's Domains tab. That flow recognizes a subdomain automatically and offers you both options instead of blocking you.

How long does it take for DNS changes to take effect?

With the Cloudflare API method, changes are typically instant. With the Nameserver method, propagation usually takes a few minutes to a few hours, though it can take up to 24 hours in rare cases. CNAME for subdomain depends on your DNS provider, but is typically fast.

What happens if I don't complete the DNS setup?

Your domain status shows as Pending Validation and won't serve your Levamo site until the connection is finalized.

My domain shows "Expired" in the dashboard. What should I do?

This usually means the connection timed out before DNS was validated, or there's an issue with your domain's registration or SSL. Re-initiate the domain setup from the dashboard. If the issue persists, contact our support team.

Why is my Cloudflare API token being rejected?

The add domain page shows the specific reason next to the token field instead of a generic error. What it means depends on the message:

  • "Invalid Cloudflare API token ... (Error: Invalid API Token)": The token itself is wrong, expired, or was revoked. Create a fresh token and try again.

  • "Invalid Cloudflare API token ... (Error: Invalid request headers)": The pasted value isn't a token, for example it's truncated, has extra characters, or is the token's name rather than its value. Copy the token value again and paste it in full.

  • "Your Cloudflare API token is valid, but no zone named [domain] exists in that account": The token works but can't see this domain. Check that you're using the token from the correct Cloudflare account, and that its zone scope includes this domain.

  • "Your Cloudflare API token is missing required permissions: ...": The message names the exact permission to add. Edit the token in Cloudflare to add it, then try again.

How do I check if my DNS changes are working?

Use a tool like What's My DNS or dig to verify propagation, or click Configure DNS in your Levamo dashboard to review the current state.

My site isn't loading after connecting the domain. Why?

Make sure DNS propagation is complete and that you followed all steps for your chosen connection method. If you used the Nameserver method, double-check that both nameservers were entered correctly at your registrar. If you used CNAME for subdomain, double-check both records against what the dashboard displayed.


Conclusion

Connecting a custom domain takes your Levamo site live at the address your visitors expect, and it automatically activates Levamo's Enterprise Cloudflare stack. If you run into any issues during setup, our support team is available 24/7 to help.

Did this answer your question?