> ## Documentation Index
> Fetch the complete documentation index at: https://docs.replo.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Custom Domains

> Add your own domain to any Replo shop

Replo makes it easy to publish your project to the web, either on a free staging subdomain (e.g. `yoursite.reploshops.com`) or your own custom domain. This guide walks you through how to connect your domain, set up the required DNS records, troubleshoot common issues, and understand your options across different hosting providers.

***

## Why use a custom domain?

Connecting a custom domain (e.g., `shop.yourdomain.com`) improves your shop's:

* **Brand identity** — looks more professional
* **Search engine visibility** — better SEO
* **Memorability** — easier to share and remember

***

## Requirements to use a custom domain

Before you begin:

* You must be on a **paid Replo plan**.
* You need to own a **domain name**. You can purchase one from providers like [Namecheap](https://www.namecheap.com), [GoDaddy](https://www.godaddy.com), [Cloudflare](https://www.cloudflare.com/products/registrar/), or [Squarespace](https://www.squarespace.com/domain-name-search).

***

## Connect your domain

<Steps>
  <Step title="Add your domain in Replo">
    Go to **Project > Settings > Domains** and click **Add Domain**. Enter your domain — for example, `shop.yourdomain.com` for a subdomain or `yourdomain.com` for a root domain.
  </Step>

  <Step title="Add the DNS records at your domain provider">
    Log in to your domain provider and add the DNS records shown below based on your domain type (subdomain vs. root domain).

    If you're unsure how to add DNS records, refer to your provider's documentation:

    * [Shopify](https://help.shopify.com/en/manual/domains/add-a-domain/add-subdomains)
    * [Cloudflare](https://developers.cloudflare.com/dns/manage-dns-records/how-to/create-subdomain)
    * [GoDaddy](https://www.godaddy.com/help/add-a-subdomain-4080)
    * [Squarespace](https://support.squarespace.com/hc/en-us/articles/205812058-Creating-a-subdomain-for-your-Squarespace-site)
    * [Namecheap](https://www.namecheap.com/support/knowledgebase/article.aspx/9776/2237/how-to-create-a-subdomain-for-my-domain)
  </Step>

  <Step title="Verify in Replo">
    Return to **Project > Settings > Domains**. Your domain will appear as **Pending** while until you re-verify it. Click the **edit** next to your domain and click "Check Connection" to verify that your DNS records have been added correctly. Once the DNS records have propagated, your domain will move from **Pending** to **Verified**.\
    Note that though most DNS updates are live within a minute or two, in some cases DNS changes may take up to 48 hours to propagate. You can use a tool like [DNS Checker](https://dnschecker.org/) to additionally verify whether your DNS changes have propagated.
  </Step>
</Steps>

✅ Once verified, your domain status will change from **Pending** to **Verified**, and your Replo soite will be live at your custom domain.

### DNS records for subdomains

If you're connecting a subdomain like `shop.yourdomain.com`, add a **CNAME** record:

| Type    | Host / Name                  | Value                           | TTL |
| ------- | ---------------------------- | ------------------------------- | --- |
| `CNAME` | Your subdomain (e.g. `shop`) | `yourshopprefix.reploshops.com` | 300 |

<Info>
  Replace `yourshopprefix` with the Replo shop prefix assigned to your project. You can find this in **Project > Settings > Domains** — it's the subdomain shown for your default `.reploshops.com` staging URL.
</Info>

### DNS records for root domains

If you're connecting a root/apex domain like `yourdomain.com`, CNAME records are not supported (per DNS standards). Instead, add the following **A**, **AAAA**, and **TXT** records:

| Type   | Host / Name                         | Value                       | TTL |
| ------ | ----------------------------------- | --------------------------- | --- |
| `A`    | `@`                                 | `162.159.142.94`            | 300 |
| `A`    | `@`                                 | `172.66.2.90`               | 300 |
| `AAAA` | `@`                                 | `2606:4700:7::252`          | 300 |
| `AAAA` | `@`                                 | `2a06:98c1:58::252`         | 300 |
| `TXT`  | `_replo-verification.<your-domain>` | `replo-verify=<your-token>` | 300 |

<Info>
  The TXT record is required for domain ownership verification. The value of this record is unique to your domain — go to **Project > Settings > Domains** and click on your domain to find the exact TXT record value you need to add. The verification token expires after **7 days**. If it expires before your domain is verified, Replo will automatically generate a new token, and you'll need to update the TXT record with the new value.
</Info>

<Warning>
  Connecting a root domain will route **all traffic** for that domain to Replo. If you already have a website at `yourdomain.com`, it will be replaced. This change cannot be undone without manually reconfiguring your DNS records.
</Warning>

***

## Domain verification status

After adding a domain, it goes through two states:

| Status       | Meaning                                                                    |
| ------------ | -------------------------------------------------------------------------- |
| **Pending**  | Domain has been added in Replo, but DNS records haven't been verified yet. |
| **Verified** | DNS records confirmed. Your site is live at the custom domain.             |

If your domain stays in **Pending** for more than a few hours, double-check your DNS records using [dnschecker.org](https://dnschecker.org) and make sure the values match what's listed above.

***

## FAQ

<AccordionGroup>
  <Accordion title="My custom domain is connected, but my site isn't live. What should I do?">
    * Double-check your DNS settings using [DNS Checker](https://dnschecker.org).
    * Double-check that your domain shows as "verified" in Replo settings.
    * Make sure you added the correct record type — **CNAME** for subdomains, **A/AAAA** for root domains.
    * DNS changes can take up to 48 hours to propagate - if you just added the domain, you may need to wait a little while.
    * Clear your browser cache or test in incognito.
    * Try removing and re-adding the domain in **Project > Settings > Domains**.
    * Reach out to [support@replo.app](mailto:support@replo.app) if you still need help.
  </Accordion>

  <Accordion title="Will connecting a custom domain affect my SEO?">
    Yes — positively. A custom domain improves discoverability and trustworthiness.
  </Accordion>

  <Accordion title="What's the difference between a subdomain and a root domain?">
    * A **subdomain** is a prefix added to your domain, like `shop.yourdomain.com` or `landing.yourdomain.com`.
    * A **root domain** (also called an apex domain) is the base domain itself, like `yourdomain.com`.

    Subdomains are recommended if you already have a website on your root domain, since connecting a root domain to Replo will replace whatever is currently hosted there.
  </Accordion>

  <Accordion title="Can I connect a subdomain instead of a full domain?">
    Yes — and we recommend it in most cases. You can connect `shop.yourdomain.com`, `landing.yourdomain.com`, or any other subdomain.\
    Just include the full subdomain during setup.
  </Accordion>

  <Accordion title="Can I connect multiple subdomains?">
    Yes, but each must be added individually (e.g. shop, landing, promo).\
    Repeat the connection process for each one.
  </Accordion>

  <Accordion title="How do I remove a custom domain?">
    * Go to **Project > Settings > Domains**
    * Click the trash icon next to your domain
    * Remove DNS records in your provider to clear the connection
  </Accordion>

  <Accordion title="Can I remove the .replosites.com subdomain?">
    No. Currently there is no way to remove the default `.replosites.com` domain.
  </Accordion>

  <Accordion title="What is the TXT verification record for root domains?">
    When connecting a root/apex domain (e.g., `yourdomain.com`), Replo requires a TXT record at `_replo-verification.yourdomain.com` to verify domain ownership. The record value is unique to your domain and can be found in **Project > Settings > Domains** by clicking on your domain. The verification token expires after 7 days — if it expires before verification completes, Replo will generate a new one and you'll need to update the TXT record accordingly. Subdomains (e.g., `shop.yourdomain.com`) do not require TXT verification.
  </Accordion>

  <Accordion title="Do I need to connect a www subdomain separately?">
    In most cases, no. The `www` configuration is included automatically when you set up the root domain. If you're having trouble, reach out to [support@replo.app](mailto:support@replo.app) and our team can help troubleshoot your domain connection.
  </Accordion>

  <Accordion title="Can I choose which custom domain my Replo page publishes to?">
    No - all published content will appear on *all connected custom domains* by default. If you'd like to publish pages to a separate domain, you'll need to create a separate shop for that domain.
  </Accordion>

  <Accordion title="My shop has multiple custom domains connected. Why can I only view my published page on one of them?">
    Currently, published pages appear on all connected custom domains, but the live link will only open the first domain by default. If you'd like to view your page on another custom domain, you can do so by manually replacing the domain in the page URL.

    > Example: If your page preview opens at `https://example1.com/my-page`, and your second domain is `example2.com`, simply change the URL to `https://example2.com/my-page` to view it on the second domain.

    Selecting or previewing specific domains within Replo isn't supported right now, but your page will still publish across all connected domains.
  </Accordion>
</AccordionGroup>
