Licence key
Umbraco Translator needs a licence to serve translated pages on a real domain. Without one, the package behaves as if it isn't installed: the rest of your site works normally, and nothing is translated.
Trying it out needs no licence
Translation always works on localhost (including subdomains such as fr.localhost) and 127.0.0.1, with or without a licence key. You can install the package, add a language and see /fr/... working on your own machine before buying anything.
What a licence covers
A licence covers three domains, one for each environment, and every subdomain of each:
| Slot | Example | Also covers |
|---|---|---|
| Production | client-site.com | www.client-site.com, fr.client-site.com, uat.client-site.com, … |
| UAT | client-site-uat.azurewebsites.net | any subdomain of it |
| Development | client-site.a-dev.com | any subdomain of it |
You choose these when you buy a licence and cannot be changed after purchase.
How domains are matched
Each incoming request's Host header is compared against the three licensed domains after both sides are normalised:
- the scheme, port and any path are ignored (
https://www.client-site.com:443/matchesclient-site.com) - a leading
www.is ignored, so a licence forwww.client-site.comis treated as a licence forclient-site.com - the comparison is case-insensitive
A request is licensed if its host is one of the three domains or ends with one of them (as a whole label). A licence for client-site.com covers:
- ✅
client-site.comandwww.client-site.com - ✅
fr.client-site.com,staging.client-site.com,fr.staging.client-site.com - ❌
client-site.co.uk(a different domain; it needs its own slot)
A licence for a subdomain covers that subdomain and anything beneath it, but not its parent: a licence for uat.client-site.com covers fr.uat.client-site.com but not client-site.com.
Updates and expiry
Licences don't expire. Each one includes 12 months of updates from the date you buy it:
- every version of the package released within those 12 months works with your key, permanently
- versions released after that date don't accept the key. To use them, renew your licence.
- the version you're running never stops working. Nothing changes on a date; it only matters when you upgrade the package.
Your key's "updates until" date is in your licence email and on the settings page. The check is done entirely on your server, against the date the package version was released. It doesn't contact our servers and isn't affected by your server's clock.
Check before you upgrade
NuGet will let you install any version, including one released after your updates end. If you do, translation switches off on the next start, and the settings page tells you why. Compare the version's release date on NuGet with your "updates until" date before upgrading. If you've upgraded too far, go back to an earlier version and translation comes straight back.
Adding your key
Your licence key arrives by email as a string. Paste it, exactly as received, into WeglotTranslations:LicenseKey and it's the same key for all three environments.
json
{
"WeglotTranslations": {
"WeglotApiKey": "wg_your_api_key",
"LicenseKey": "PExpY2Vuc2U+CiAgPElkPjRi..."
}
}Restart after changing the key
The key is read and validated once, when the site starts, and the result is cached for the lifetime of the application. Restart the site after adding or changing it.
Checking your licence
Go to Settings → Advanced → Umbraco Translator - Weglot in the backoffice. The Umbraco Translator panel at the top shows one of four states:
| Status | Meaning |
|---|---|
| Licensed for this domain | The key is valid and the domain you're viewing the backoffice on is one of its three, or a subdomain of one. |
| Licensed, but not for this domain | The key is valid, but the backoffice is on a domain the licence doesn't cover. Translation works on the licensed domains and their subdomains only. |
| Running unlicensed on localhost | You're on localhost (or a *.localhost subdomain) or 127.0.0.1, so translation works regardless of the key. |
| Not licensed | There's no key, or it couldn't be validated. The reason is shown underneath. |
When a key is valid, the panel also shows who it's licensed to, its "updates until" date, the installed version's release date, and the three domains it covers.
What happens without a valid licence
For any request on a domain the licence doesn't cover, including when there's no licence at all:
- URLs under a language prefix (e.g.
/fr/about-us) return 404, exactly as if the package weren't installed - the language switcher lists no languages
- links aren't rewritten with a language prefix
Normal untranslated Umbraco content is never affected. The licence only switches the translation feature on and off.