Domain Setup

Choose how your Matrix IDs will look. This decision is permanent.

⚠️
Your server name is permanent. Once you create accounts and join rooms, you cannot change it. Choose carefully!

Two modes to choose from

Delegation — @alice:example.com

Professional, clean usernames. Your Matrix ID uses your main domain.

✅ PROS
  • Clean, short usernames
  • Looks like your main domain
  • Professional for public servers
⚠️ CONS
  • Requires delegation file
  • Slightly more complex setup
  • Main domain must serve .well-known

DNS Records

TypeNameValueTTL
A@ (root domain)Your server IP3600
A{subdomain}.example.com (you choose: matrix, chat, msg…)Your server IP3600
💡
No SRV record needed! The script uses .well-known delegation (the recommended method). SRV records are only needed as a fallback if you absolutely cannot serve .well-known files on your root domain.

Delegation (.well-known)

Your root domain must serve delegation files — the script sets this up automatically.

At example.com/.well-known/matrix/server:

{
  "m.server": "matrix.example.com:443"
}

At example.com/.well-known/matrix/client:

{
  "m.homeserver": {
    "base_url": "https://matrix.example.com"
  }
}

If Your Root Domain Has an Existing Website

⚠️
If example.com already hosts a website on a different server, choose Option B during install. The script will show you exactly what .well-known JSON files to add to your existing web server. Note: This scenario has not been fully tested yet.

Subdomain Only — @alice:matrix.example.com

Simpler setup, no delegation needed. Perfect for personal servers.

✅ PROS
  • Just one DNS record
  • No delegation file
  • Perfect for personal use
⚠️ CONS
  • Longer usernames
  • Less clean looking

DNS Record

TypeNameValueTTL
A{subdomain}.example.com (you choose: matrix, chat, msg…)Your server IP3600
That's it! No SRV record, no delegation file. Just point the subdomain to your server.
⚠️
During install: When the script asks for your "domain name", enter just the root domain (e.g. example.com), then enter the subdomain separately (e.g. matrix). Don't enter the full address in the domain field!

Comparison

FeatureDelegationSubdomain
Matrix ID@user:example.com@user:matrix.example.com
DNS Records2 (A + A)1 (A only)
DelegationRequiredNot needed
ComplexityMediumEasy
Best ForPublic / businessPersonal / private