Access & Sharing

Setting Up Custom Domains

Serve your app from your own domain: add or buy it, set its DNS records and assign it to the app

Overview

By default, all published Stardeck apps are automatically accessible at app-slug.stardeck.site where app-slug is your app's unique identifier.

Custom domains allow you to host your Stardeck apps on your own domain name (like www.your-site.com) instead of the default app-slug.stardeck.site subdomain. This guide will walk you through the entire process of setting up a custom domain.

Project custom domains bind the primary app host (the root Surface). There is no per-Surface custom-domain picker today — additional Surfaces use their generated Stardeck Surface URLs after production deploy.

Prerequisites

Before you can set up a custom domain, you need:

  1. A published app - Your app must be deployed and live on Stardeck
  2. Access to your domain's DNS settings - You'll need to modify DNS records
  3. Organization admin access - Custom domains are managed at the organization level
  4. A plan that includes custom domains - Every current plan does. On older plans without them, Add New Domain shows an Upgrade Required notice instead of the form
Note:

If your app isn't published yet, deploy it first. See Publishing & Deployment.

Step 1: Add Domain to Your Organization

First, you need to add your domain to your organization's available domains:

  1. Navigate to Organization Settings

    • Go to your Dashboard
    • Open Settings in the sidebar
    • Select the Domains tab
  2. Add Your Domain

    • In the Add New Domain section, enter your domain name
    • Enter just the domain (e.g., example.com) - Stardeck will automatically add the www. prefix
    • Click Add Domain
Note:

Apex domains such as example.com are converted to www.example.com, because a CNAME can't sit on the apex. Other subdomains are accepted as you type them, such as app.example.com.

Buy a domain instead (optional)

If you don't have a domain yet, the Domains tab has a Buy a Domain section. A domain you buy here shows a Managed badge, and Stardeck sets its DNS records for you, so skip Step 2 and Step 3. Turn on Auto-Renew from the domain's Settings button so it renews before it expires.

Step 2: Configure DNS Records

After adding your domain, you'll see DNS configuration instructions. Add these records at your DNS provider to validate ownership and enable SSL. Copy all on the domain row copies every record at once. (Domains bought through Stardeck have a DNS button instead, where you can add, edit and delete records.)

Domain & SSL Validation (TXT Records)

You'll need to add two TXT records for validation:

Domain Ownership Validation:

  • Record Type: TXT
  • Name/Host: (provided by Stardeck, starting with _cf-custom-hostname, such as _cf-custom-hostname.www)
  • Value: (unique verification token provided by Stardeck)

SSL Certificate Validation:

  • Record Type: TXT
  • Name/Host: (provided by Stardeck for SSL validation)
  • Value: (unique SSL verification token provided by Stardeck)

Traffic Routing (CNAME Record)

Main CNAME Record:

  • Record Type: CNAME
  • Name/Host: www.example.com (your full domain)
  • Points To: cname.stardeck.dev

Apex Domain Redirect (required for www domains)

For a www. domain, redirect visitors from your apex domain (example.com) to www.example.com. The domain stays pending until this redirect checks out. Other subdomains, such as app.example.com, don't need it.

  • Record Type: A Record + URL Redirect (varies by DNS provider)
  • Name/Host: @ (or leave blank)
  • Redirect To: www.example.com
Note:

The apex domain redirect setup varies by DNS provider. Look for "URL forwarding", "domain redirect", or similar features in your DNS provider's interface.

Step 3: Validate DNS Configuration

After adding all DNS records:

  1. Wait for propagation - DNS changes can take up to 24 hours to fully propagate
  2. Check validation status - In your organization's Domains tab, you'll see validation status for each step:
    • Ownership (TXT record validation)
    • SSL TXT (SSL certificate validation)
    • CNAME (traffic routing validation)
    • Redirect (apex domain redirect validation, www. domains only)
  3. Use validation buttons - Click the "Check" buttons next to each validation step to manually trigger validation

Step 4: Assign Domain to App

Once your domain is fully validated:

  1. Go to your app
  2. Open App Settings - Click the settings icon in your app
  3. Navigate to the Domain tab, under Deployments
  4. Select your domain - Choose from your organization's validated domains
  5. Assign domain - Click to assign the domain to your app
Success:

Your app is now served at your custom domain. SSL certificates are provisioned and renewed for you.

Your coding agent can do this step and check DNS for you: list_domains and get_domain show a domain's records and status, and assign_app_domain assigns it to an app after you confirm. Adding or buying a domain is dashboard-only.

Common DNS Provider Examples

Cloudflare

  • TXT records: Add in DNS management with the exact name/host and value
  • CNAME: Point www.example.com to cname.stardeck.dev
  • Apex redirect: Use "Page Rules" or "Redirect Rules" to redirect example.com to www.example.com

Name-cheap

  • TXT records: Add in "Advanced DNS" section
  • CNAME: Add CNAME record with host www pointing to cname.stardeck.dev
  • Apex redirect: Use "Redirect Domain" feature in domain settings

GoDaddy

  • TXT records: Add in DNS management
  • CNAME: Add with name www and points to cname.stardeck.dev
  • Apex redirect: Use "Forwarding" in domain settings

Troubleshooting

DNS Not Propagating

  • DNS changes can take up to 24 hours
  • Use tools like dig or online DNS checkers to verify propagation
  • Clear your browser cache and try incognito mode

Validation Failing

  • Double-check that TXT record names and values match exactly
  • Ensure there are no extra spaces in DNS record values
  • Some DNS providers require a trailing dot for full domain names

CNAME Conflicts

  • Remove any existing A records for the same subdomain
  • CNAME records cannot coexist with other record types for the same name
  • Ensure you're using www.your-domain.com and not the apex domain for the CNAME

Still Having Issues?

If you're still experiencing problems:

  1. Check the validation status in your organization's Domains tab
  2. Use the "Check" buttons to manually trigger validation
  3. Contact Stardeck support through your dashboard with your domain name and error details

Next

Custom Sign-In Page

Brand the page your team signs in on