Troubleshooting Custom Domain Issues
Encountering issues when linking your custom domain to your Framer project can be frustrating. We're here to help you understand and resolve these problems quickly.
In Framer, custom domains are set up via DNS records, which must be set with your custom domain name registrar (referred to as “registrar” in this article). This is required because computers don’t “understand” domain names, and they always need an IP address to serve your site (e.g. when someone types your custom domain name in their browser).
By setting the DNS records that Framer asks you to set, you map your domain name to the Framer IP addresses. To see which DNS records you must set, follow the guides on configuring a domain and/or configuring a subdomain. But this article focuses on how to troubleshoot common DNS issues.
When in doubt, contact support via the Framer Community: even though we cannot control your DNS settings, we’ll do our best to help out where we can.
Help! I don't know where to set DNS records
You must set DNS records with your registrar (e.g. NameCheap, or Cloudflare).
Framer currently only does website hosting and is not a registrar. So you must already have a registered custom domain, and Framer does not host your DNS records.
A and CNAME Records
DNS A records contain IP(v4) addresses, and DNS CNAME records are aliases that point to other domain names.
Framer recommends you:
Set A records for your “naked domain”, like
example.com
.Set a CNAME record for your “subdomain” like
www.example.com
orblog.example.com
.
Only Framer values must be set
For your Framer site with custom domain name to work and perform correctly, you must:
Only set A records that have a Framer IP as their value.
Only set a CNAME record where that points to Framer.
Why is this important?
When non-Framer values are used, requests to your custom domain will (sometimes) be sent to non-Framer servers, resulting in:
Your site not loading at all.
Your site to load slowly and perform poorly.
Your site not working via HTTPS (because the TLS certificate could not be issued/renewed).
How do I check which A/CNAME records are set?
Use a tool like DNS checker.
For example:
If your custom domain name is
example.com
, you can check which A records are set by following this link: https://dnschecker.org/#A/example.comIf your custom domain name is
www.example.com
, you can check which CNAME record is set by following this link: https://dnschecker.org/#CNAME/example.com
If you see (a lot of) “red crosses” in DNS checker, this typically means that your registrar is having issues. Please contact the support of your registrar so they can help you further.
Common issues and how to fix them
I get back different values than what I set in my registrar
This usually happens when not using the default DNS nameservers of your registrar.
In the DNS settings of your registrar there will also be a section that’s often called “Nameservers”. Make sure that the default nameservers are used there, but when in doubt, please contact your registrar for support.
Common causes:
Caching - DNS is a massive system with many, many servers spread all over the world. Making DNS changes is typically pretty fast, but can take up to ~24 hours in some cases. One thing you can try is lowering the “TTL” value of your DNS record(s). But other than that, some patience may be required.
Incorrect DNS “Host(name)” value - Some registrars require you to use @
as the “Host(name)” value when setting DNS A records. But some require you to use the domain name like example.com
. Please check your registrar’s documentation to make sure you use the correct value.
Proxy functionality is enabled - Some registrars offer “proxy functionality”. But enabling this results in different DNS records to be returned than what you set. The fix is to simply disable the proxy functionality. For example, Cloudflare has a Proxy status for DNS records. So when you’re using Cloudflare as your registrar, make sure the Proxy status of the DNS A and CNAME records are set to “DNS only”.
If you do need (reverse) proxy functionality for your Framer site, this is available as an Add-on or our Enterprise plans.
I get back the Framer A records, but I also get back extra A records
Common causes:
Confusing registrar UI/UX - Some registrars may “hide” some records when there are many records set (e.g. by collapsing sections, or by using pagination). Make sure to delete any DNS A records that do not set a Framer IP.
Parking record is still set - Registrars typically show a parking page (for newly registered domains) by setting a special DNS record often named “parking”. Keeping this parking DNS record results in extra DNS A records to be set. So make sure to delete the DNS parking record when you see it.
Redirecting is enabled - Some registrars allow you to setup (URL) redirects for your custom domain. But setting this up can result in extra A records to be returned. The fix is to simply disable redirects. For example, NameCheap allows setting URL Redirect Records in the DNS settings. So make sure you don’t set such records.
A common use case for setting up such redirects is HTTP → HTTPS redirects. But Framer does this automatically for you (when the DNS is setup correctly).
My registrar only allows setting 1 A record
Framer recommends setting multiple A records, mostly for redundancy and load-balancing. But if you can only set 1 A record with a Framer IP: that’s also fine, your Framer site will work without issues.
My registrar only allows me to set NS (nameserver) records
You have 2 options to make it work:
Transfer the custom domain to a registrar that does support setting other DNS records like A and CNAME.
Use a free service to manage DNS (using your existing registrar).
For option 2 popular (free) services are:
Cloudflare: https://www.cloudflare.com/application-services/products/dns/
NameCheap: https://www.namecheap.com/domains/freedns/
For example, when using Cloudflare, it would work as follows:
You create a free Cloudflare account, and create a site there (using your custom domain name).
Cloudflare will then give you nameservers.
Then in your current registrar you update the nameservers to use the Cloudflare nameservers.
Now you can add the DNS A and CNAME records in Cloudflare to point to Framer.
AAAA Records
DNS AAAA records contain IP(v6) addresses.
No AAAA records must be set
Even though Framer currently does not support IPv6, setting AAAA records can cause issues.
Why is this important?
The most common issue is that setting DNS AAAA records can prevent Framer from issuing a TLS certificate for your custom domain (so your site works via HTTPS).
How do I check if AAAA records are set?
Use a tool like DNS checker.
For example, If your custom domain name is example.com
, you can check if AAAA records are set by following this link: https://dnschecker.org/#AAAA/example.com
Common issues and how to fix them
I get back AAAA records, but I don’t set any in my registrar
If you don’t see any AAAA records listed in your DNS settings, then your registrar may be setting them automatically.
This can happen because of a similar reason that results in extra A records to be set. But if that doesn’t solve it, please contact your registrar for support.
CAA records
DNS CAA records control “who” can issue TLS certificates for a custom domain (so your site works via HTTPS).
Setting CAA records is typically considered to be an advanced use case. So to prevent issues, Framer recommends you not set them by default. But if you must set them, please read the following carefully.
Certificate Authorities used by Framer must be allowed
Framer uses different Certificate Authorities (CAs) to automatically issue/renew TLS certificates:
So when you set CAA records, you must include the following values:
letsencrypt.org
(for Let's Encrypt)sectigo.com
(for ZeroSSL)
Why is this important?
When CAA records are incorrectly configured, Framer will no longer be able to issue/renew TLS certificates for your custom domain. This means that your site won’t work, or will stop working via HTTPS (e.g. when the current certificate expires).
Beware of subdomains!
f the custom domain you add to your Framer project is a subdomain like blog.example.com
, then it’s still important to set the correct CAA records for example.com
.
This is because the policy set by CAA records affect the “entire” domain, including any subdomain(s).
Correct example
When your custom domain name is example.com
(or even a subdomain like blog.example.com
), you must set the following CAA records:
Notes:
The
flag
value of0
is the most commonly used value, but can be set to your needs.Framer also recommends setting CAA records with the
tag
values ofissuewild
. But strictly speaking, Framer currently does not support wildcard domains.
How do I check what CAA records are set?
Use a tool like DNS checker.
For example, If your custom domain name is example.com
, you can check which CAA records are set by following this link: https://dnschecker.org/#CAA/example.com