Why this matters
When someone scans a QR code or clicks a shared event link, they land on a hosted page served by Revisual. By default, that page lives on share.revisual.link. The domain settings let you change that address to something that reflects your brand — either a subdomain on Revisual's domain, or your own domain entirely.
This applies to all widgets in your workspace. There is no per-widget domain setting — the choice you make here affects every link and QR code your workspace generates.
The three options
Default domain
Your widgets are accessible at share.revisual.link. This is free, requires no setup, and is available on all plans. If you have never changed your domain settings, this is what you are using.
Custom subdomain
Available on any paid plan. Instead of share.revisual.link, your links use a name you choose — for example, myschool.revisual.link or myschool.rvsl.link. The .rvsl.link option is shorter, which can be useful for QR codes where link length affects scan reliability.
Your subdomain applies to all widgets in your workspace, so choose a name that represents your organization rather than a specific event or calendar.
Rules for subdomain names: 1–16 characters, letters, numbers, and hyphens only. No spaces, no special characters. Some names are reserved and cannot be used (such as admin, api, www, and similar system names).
Custom domain
Available on Medium, Pro, and Enterprise plans. Your widgets are served directly on your own domain — for example, calendar.myschool.com or events.myorganization.org. This is the most branded option and requires a one-time DNS setup described below.
Setting up a custom subdomain
Go to Settings → Domain & Links and select Custom subdomain.
Type your chosen name in the input field and select
.revisual.linkor.rvsl.linkfrom the dropdown.A preview of your full subdomain appears as you type.
Click Set subdomain.
Your subdomain is active immediately. All widget links in your workspace will now use the new address.
Changing your subdomain later is possible, but any existing QR codes and shared links using the old subdomain will stop working. You will see a warning before saving any change.
Setting up a custom domain
Custom domain setup involves two steps: adding DNS records to your domain, and waiting for verification. Your widgets continue to work on your current domain while verification is in progress.
Step 1 — Enter your domain
Go to Settings → Domain & Links, select Custom domain, and enter your domain (e.g. calendar.myschool.com). Do not include https://. Click Set domain.
Step 2 — Add the DNS records
Two CNAME records will appear in a table below your domain. Add both to your DNS provider at the same time — you do not need to wait for one to verify before adding the other, and adding them together causes no issues.
Record | Purpose |
First CNAME | Proves to AWS that you own the domain (certificate validation) |
Second CNAME | Points your domain to Revisual's servers |
Both records are safe to add — they will not affect your existing website, email, or any other services running on your domain.
Step 3 — Wait for verification
DNS changes typically propagate within a few minutes on most providers (Cloudflare, Google Domains). Some providers can take longer — up to 48 hours in rare cases. Revisual checks your domain automatically in the background and activates it as soon as both records are detected.
You can also click Refresh at any time to check the current status. Each record shows its own status — Pending or Verified — so you can see exactly which one is still propagating.
Once both records are verified, your domain is activated automatically. No further action is needed.
Common issues
"Certificate validation failed — please regenerate"
The certificate Revisual requested for your domain expired before the DNS validation record was added. This happens when the DNS record is not added within 72 hours of starting the setup. Click Regenerate next to the error to request a new certificate and get updated DNS record values. Update your DNS with the new values and verification will proceed normally.
"Your domain has a conflicting A record"
Your domain (e.g. myschool.com) has an existing A record pointing to another server — for example, a Squarespace or WordPress site. This conflicts with pointing the same domain to Revisual.
The cleanest solution is to use a subdomain instead of your apex domain — for example, calendar.myschool.com rather than myschool.com. A subdomain has its own CNAME record that does not interfere with your main site.
If you specifically need the apex domain, contact your DNS provider and ask about CNAME flattening or ALIAS records — some providers (Cloudflare, for example) can point an apex domain to a CNAME target without the conflict.
Status stays on "Pending" after adding records
DNS propagation time varies by provider. Cloudflare typically propagates within seconds to minutes. GoDaddy, Namecheap, and Google Domains are usually under 30 minutes. Some providers set a default TTL of 4 hours, which means changes can take that long to reach Revisual's checks.
If it has been more than a few hours, double-check that the records were saved correctly in your DNS provider's panel — particularly that there are no extra dots, spaces, or quotes around the values.
Records were added but the domain is still not active after 24 hours
Click Refresh to trigger an immediate check. If the status still shows Pending after confirming your DNS records look correct, contact support with your domain name and we will investigate.
What happens when you disconnect a custom domain
If you disconnect your custom domain or switch to a different domain type, your widgets immediately revert to the previous domain (default or subdomain). Any QR codes or shared links using the disconnected domain will stop working. There is no grace period or redirect — the old links are dead immediately.
If you reconnect the same domain later, you will need to go through the full DNS setup process again.
Plan requirements
Feature | Free | Basic | Medium | Pro | Enterprise |
Default domain | ✓ | ✓ | ✓ | ✓ | ✓ |
Custom subdomain | — | ✓ | ✓ | ✓ | ✓ |
Custom domain | — | — | ✓ | ✓ | ✓ |
