Skip to main content
DNS configuration is the longest part of Custom domain setup, but each provider takes only a couple of minutes once you know where the records go.

Cloudflare

  1. DNS → Records → Add record.
  2. Type: CNAME. Name: app (or your subdomain). Target: cname.vly.app. Proxy status: DNS only (orange cloud OFF).
  3. For apex (yourcompany.com): Cloudflare auto-flattens CNAMEs at the apex — same record, name @.
  4. SSL/TLS mode: Full (not Flexible).

Namecheap

  1. Domain List → Manage → Advanced DNS.
  2. Add: Type CNAME Record. Host: app. Value: cname.vly.app. (trailing dot). TTL: Automatic.
  3. For apex: Namecheap doesn’t support ALIAS. Use A records:
    • Type A. Host @. Value 76.76.21.21. (Add a second A record with the second anycast IP from vly.)

GoDaddy

  1. My Products → DNS → Manage.
  2. Add → CNAME. Name: app. Value: cname.vly.app. TTL: 1 hour.
  3. For apex: A records (GoDaddy doesn’t support ALIAS).

Google Domains / Cloud DNS

  1. DNS → Custom records (or Cloud DNS zone).
  2. Type: CNAME. Name: app. Data: cname.vly.app.
  3. For apex on Cloud DNS: ALIAS supported. For Google Domains: A records.

AWS Route 53

  1. Hosted zones → [your domain] → Create record.
  2. Record type: CNAME. Record name: app. Value: cname.vly.app.
  3. For apex: Route 53 supports ALIAS natively. Type: A. Toggle “Alias”. Value: cname.vly.app.

Verifying

After adding records, check propagation:
Or use whatsmydns.net for global propagation status.

Custom domains

The full walkthrough.

SSL certificates

What happens after DNS resolves.

Troubleshooting

Common DNS issues.
Last modified on April 18, 2026