Skip to main content
Use your own domain name for your forms instead of the default TopFormBuilder URL. Custom domains make your forms more professional and build trust with respondents.

What are Custom Domains?

Custom domains allow you to host forms on your own domain: Default URL:
https://app.topformbuilder.com/f/your-form-slug
Custom Domain URL:
https://forms.yourdomain.com/your-form-slug
or
https://yourdomain.com/forms/your-form-slug
Benefits:
  • Professional branding - Use your company domain
  • Increased trust - Respondents recognize your brand
  • Better deliverability - Emails from your domain
  • SEO benefits - Forms indexed under your domain
  • White label experience - Remove TopFormBuilder branding
Plan Requirement: Custom domains are a Pro feature.

Requirements

Before adding a custom domain:
  1. Pro Plan Subscription - Active Pro or Enterprise plan
  2. Domain Ownership - You must own the domain
  3. DNS Access - Ability to add DNS records
  4. SSL Certificate - Automatic with Let’s Encrypt (included)
Supported Domain Types:
  • Subdomain: forms.yourdomain.com ✅ (Recommended)
  • Subdomain: surveys.yourdomain.com
  • Root domain: yourdomain.com ⚠️ (Requires additional setup)
  • Any subdomain: anything.yourdomain.com

Adding a Custom Domain

Step 1: Navigate to Custom Domains

  1. Go to your Workspace Settings
  2. Click “Custom Domains” in sidebar
  3. Click “Add Custom Domain” button
Quick Access:
Workspace → Settings → Custom Domains → Add Domain

Step 2: Enter Your Domain

  1. Enter your domain name (e.g., forms.yourdomain.com)
  2. Click “Verify Domain”
  3. DNS verification instructions appear
Domain Format:
  • Include subdomain if using one
  • Don’t include https:// or www
  • Example: forms.example.com
  • Example: https://forms.example.com

Step 3: Add DNS Records

TopFormBuilder provides you with DNS records to add to your domain. DNS Records Required: A Record (for subdomain)
Type: A
Name: forms (or your subdomain)
Value: [IP address provided]
TTL: 3600 (or Auto)
or CNAME Record (alternative)
Type: CNAME
Name: forms (or your subdomain)
Value: [CNAME target provided]
TTL: 3600 (or Auto)
Example at Common Registrars: Cloudflare:
  1. Log in to Cloudflare dashboard
  2. Select your domain
  3. Go to DNS settings
  4. Click “Add record”
  5. Select type (A or CNAME)
  6. Enter Name: forms
  7. Enter Value: [provided value]
  8. Click “Save”
  9. Important: Set Proxy status to “DNS only” (gray cloud)
GoDaddy:
  1. Log in to GoDaddy account
  2. Go to Domain Manager
  3. Click DNS next to your domain
  4. Click “Add” under Records
  5. Select type (A or CNAME)
  6. Enter Host: forms
  7. Enter Points to: [provided value]
  8. Click “Save”
Namecheap:
  1. Log in to Namecheap account
  2. Go to Domain List
  3. Click “Manage” next to domain
  4. Go to “Advanced DNS” tab
  5. Click “Add New Record”
  6. Select type (A or CNAME)
  7. Enter Host: forms
  8. Enter Value: [provided value]
  9. Click checkmark to save
Google Domains:
  1. Log in to Google Domains
  2. Click your domain
  3. Go to DNS settings
  4. Scroll to “Custom resource records”
  5. Enter Name: forms
  6. Select type (A or CNAME)
  7. Enter Data: [provided value]
  8. Click “Add”

Step 4: Verify Domain

After adding DNS records:
  1. Wait 5-10 minutes for DNS propagation
  2. Return to TopFormBuilder
  3. Click “Verify Domain” button
  4. System checks DNS records
Verification Status:
  • Pending - DNS not propagated yet (wait longer)
  • Verified - Domain ready to use
  • Failed - DNS records incorrect (check configuration)
DNS Propagation Time:
  • Usually: 5-10 minutes
  • Sometimes: 1-2 hours
  • Maximum: 24-48 hours (rare)
Check DNS Propagation: Use online tools to verify DNS records:

Step 5: SSL Certificate (Automatic)

Once domain is verified, SSL certificate is automatically generated. SSL Process:
  1. Domain verified ✅
  2. Let’s Encrypt certificate requested
  3. Certificate issued (1-2 minutes)
  4. HTTPS enabled automatically
  5. Domain ready to use 🎉
SSL Status:
  • Pending - Certificate being generated
  • Active - HTTPS enabled
  • Failed - Generation failed (contact support)
Certificate Details:
  • Issuer: Let’s Encrypt
  • Validity: 90 days
  • Renewal: Automatic (every 60 days)
  • Cost: Free (included)

Using Custom Domain

Assign Domain to Form

After domain is verified and SSL is active:
  1. Go to Form Builder
  2. Click form to edit
  3. Go to Settings tab
  4. Scroll to “Custom Domain” section
  5. Select your domain from dropdown
  6. Click “Save”
Form URL Updates:
Before: app.topformbuilder.com/f/my-form
After:  forms.yourdomain.com/my-form

Share Form with Custom Domain

Your form is now accessible via custom domain: Direct Link:
https://forms.yourdomain.com/my-form
Embed Code: Forms embedded using custom domain maintain your branding. Email Notifications: Email links will use custom domain automatically.

Multiple Forms on Same Domain

You can assign the same custom domain to multiple forms:
forms.yourdomain.com/contact
forms.yourdomain.com/feedback
forms.yourdomain.com/registration
Each form keeps its unique slug after your domain.

Managing Custom Domains

View Domain Status

Workspace Settings → Custom Domains Each domain shows:
  • Domain name
  • Verification status (✅ Verified / ❌ Unverified)
  • SSL status (🔒 Active / ⏳ Pending)
  • Verified date
  • SSL expiry date
  • Number of forms using domain

Edit Domain Settings

Currently you cannot edit domain name. To change:
  1. Add new custom domain
  2. Assign forms to new domain
  3. Delete old domain

Remove Custom Domain

Warning: Removing a domain affects all forms using it. Steps:
  1. Go to Workspace Settings → Custom Domains
  2. Click domain to remove
  3. Click “Delete Domain” button
  4. Confirm deletion
What Happens:
  • Forms using this domain revert to default URLs
  • DNS records can be removed from registrar
  • SSL certificate revoked
  • Forms still work (on default domain)
  • Submissions preserved
Before Deleting:
  1. Reassign forms to another domain (or default)
  2. Update any links/embeds
  3. Notify users if needed

SSL Certificate Renewal

Automatic Renewal:
  • Runs every 60 days (30 days before expiry)
  • No action needed from you
  • Email notification if renewal fails
Manual Renewal: If SSL expires or fails:
  1. Go to Custom Domains
  2. Click domain
  3. Click “Renew SSL” button
  4. Wait 1-2 minutes
Certificate Expiry:
  • Let’s Encrypt certificates valid for 90 days
  • Auto-renewed at 60 days
  • Email warning at 80 days if renewal failed

Troubleshooting

Domain Verification Failing

Problem: DNS records not detected Solutions:
  1. Wait Longer
    • DNS can take up to 48 hours
    • Use dnschecker.org to verify propagation
  2. Check DNS Records
    • Verify Type (A or CNAME) is correct
    • Verify Name (subdomain) is correct
    • Verify Value matches exactly
    • No extra spaces or characters
    • TTL doesn’t matter (any value works)
  3. Cloudflare Users
    • Set Proxy status to “DNS only” (gray cloud icon)
    • Orange cloud causes verification to fail
    • Can enable proxy after verification
  4. Root Domain Issues
    • Use subdomain instead (forms.yourdomain.com)
    • Root domains require additional setup
    • Contact support for root domain setup

SSL Certificate Not Generating

Problem: SSL status shows “Failed” Solutions:
  1. Ensure Domain is Verified First
    • SSL only generates after verification
    • Check verification status is “Verified”
  2. Check Domain Accessibility
    • Visit http://your-domain.com (not https)
    • Should show TopFormBuilder page
    • If not, DNS not properly configured
  3. Firewall/Security
    • Ensure port 80 (HTTP) is accessible
    • Let’s Encrypt needs HTTP access for validation
    • Check with hosting provider
  4. Contact Support
    • If SSL fails after 10 minutes
    • Provide domain name and error details

Forms Not Loading on Custom Domain

Problem: 404 error or blank page Solutions:
  1. Verify Domain is Assigned
    • Go to Form Settings
    • Check Custom Domain dropdown
    • Save again if needed
  2. Check SSL Status
    • Ensure SSL status is “Active”
    • Try http:// (not https://) temporarily
    • If http works, SSL issue
  3. Clear Browser Cache
    • Hard refresh: Ctrl+Shift+R (Windows) or Cmd+Shift+R (Mac)
    • Try incognito/private window
    • Try different browser
  4. DNS Caching
    • DNS changes can take time
    • Wait 1-2 hours and retry
    • Check DNS propagation tools

Mixed Content Warnings

Problem: Browser shows “Not Secure” warning Solutions:
  1. Ensure SSL is Active
    • Check SSL status in dashboard
    • Wait for SSL to finish generating
  2. Force HTTPS
    • Most browsers auto-upgrade to HTTPS
    • Update any bookmarks to use https://
  3. Check Form Embeds
    • If embedding form, use HTTPS parent page
    • Mixed content (HTTPS page + HTTP form) blocked
Problem: Email notifications use old domain Solutions:
  1. Resave Form Settings
    • Go to Form Settings
    • Reselect custom domain
    • Click Save
  2. Wait for Cache Clear
    • Email templates cached for 5 minutes
    • New submissions will use correct domain
  3. Test Email Notification
    • Submit test form
    • Check email link

Custom Domain Best Practices

Choosing a Domain

Good Choices:
  • forms.yourdomain.com ✅ (Professional, clear)
  • surveys.yourdomain.com ✅ (Specific purpose)
  • apply.yourdomain.com ✅ (Job applications)
  • feedback.yourdomain.com ✅ (Customer feedback)
Avoid:
  • form.yourdomain.com ⚠️ (Singular, less clear)
  • data.yourdomain.com ⚠️ (Vague)
  • Root domain without subdomain ⚠️ (Complex setup)

DNS Configuration

Best Practices:
  • Use A record for faster resolution
  • Set TTL to 3600 or Auto
  • Document DNS records for team
  • Use DNS provider with good uptime
  • Consider Cloudflare for DDoS protection

SSL Management

Best Practices:
  • Check SSL status monthly
  • Set calendar reminder before 90-day expiry
  • Monitor renewal notification emails
  • Keep email address updated in settings
  • Test HTTPS after any DNS changes

Security

Best Practices:
  • Don’t use shared hosting accounts
  • Keep DNS provider account secure (2FA)
  • Review DNS records regularly
  • Monitor for unauthorized changes
  • Use strong passwords on DNS account

Advanced Configuration

Root Domain Setup

Using root domain (yourdomain.com) requires additional steps: Requirements:
  1. DNS provider supports ANAME or ALIAS records
  2. or ability to set A records for @ (root)
Steps:
  1. Contact support at [email protected]
  2. Provide your root domain
  3. Receive specific instructions
  4. Follow DNS configuration
  5. Verify domain
Note: Subdomain setup is simpler and recommended.

Multiple Workspaces

Each workspace can have its own custom domains: Example:
  • Workspace 1 (Marketing): forms.marketing.com
  • Workspace 2 (Sales): forms.sales.com
  • Workspace 3 (Support): help.company.com
Limits:
  • Pro Plan: 3 custom domains per workspace
  • Enterprise Plan: Unlimited custom domains

Wildcard Subdomains

Not currently supported. Each subdomain must be added separately. Example:
*.yourdomain.com ❌ Not supported
forms.yourdomain.com ✅ Supported
surveys.yourdomain.com ✅ Supported

Pricing

Pro Plan:
  • 3 custom domains per workspace
  • Unlimited forms per domain
  • Free SSL certificates
  • Automatic SSL renewal
Enterprise Plan:
  • Unlimited custom domains
  • Priority SSL support
  • Custom SSL certificates (bring your own)
  • Dedicated IP (optional)
Need help? Contact [email protected]