## Activating your theme license

URL: https://hub.jkdevstudio.com/knowledge-base/licensing/activating-your-theme-license
Updated: 2026-09-06
Summary: Activate your theme license step by step, fix the popup that will not open, the empty license list and the domain already in use, and see how the staging slot works.

Activation turns a purchased theme into a working Pro install. It takes about a minute when it goes well. This page walks the whole flow and covers every point it can stop, because the stopping points are where most people arrive here from.

## Before you start

- [ ] The purchase is complete
- [ ] The confirmation email arrived
- [ ] The files are downloaded
- [ ] The theme is installed **and activated** in WordPress

<div data-callout="info">

There is no field where you paste a license key by hand. Activation is a sign in: you authorize it in a window that talks to our server, and the result is written to your account, so you can always see which license sits on which domain.

A theme that asks you to paste a purchase code into a text field records none of that, and cannot tell a real code from a copied one.

</div>

## Two ways in

Both lead to the same window.

:::deflist

The onboarding banner
: Appears in the admin right after you activate the theme, with an **Activate License** button on it. The shortest route.

The [theme dashboard](https://hub.jkdevstudio.com/knowledge-base/configuration/theme-dashboard)
: Open the theme menu in the WordPress sidebar and go to the **License** tab. The same process, available whenever you want it.

:::

## Get your browser ready first

Activation opens a separate browser window. Before you click:

- Allow popups for your site, or accept the window when the browser asks
- Check extensions that block third party windows and scripts
- Use a current, updated browser. All the common ones work

<div data-callout="tip">

If nothing at all happens when you click, it is almost always a popup blocker rather than an activation error. Allow the window and click again.

</div>

## The flow

:::steps

### Click Activate License

A separate window opens with two choices.

### Choose how to sign in

**Activate via Hub** is the main route and the one to use unless you have a reason not to. It covers every purchase we sell directly, and it works for Envato buyers too. Sign in with email, Google, GitHub or Envato. Your license then lives in an account you can open any time, which is where you deactivate a domain, add activations, download updates and file a ticket.

**Activate via Envato** exists for purchases made on Envato or ThemeForest, and it is a shortcut rather than the main door. You sign in to Envato, we verify the purchase code through the Envato API, and the license activates without you creating anything first. An account is still created for you behind it, because a license has to belong to somebody.

### Pick your license

After signing in you see your licenses for this item. A free one can be selected. One already in use shows the domain it sits on and cannot be selected. A blocked one can be selected but will refuse to activate, with a warning explaining why.

### Accept the terms

The agreement checkbox is required, and the activation button stays disabled until you tick it. That is not a bug.

Read the [terms and conditions](https://jkdevstudio.com/terms-conditions/) and the [refund policy](https://jkdevstudio.com/refund-policy/) before you tick it rather than after. Activation is use of the license. Once a key is live on a domain, a refund request goes through extra verification instead of being processed on request, so it is worth knowing where you stand while the decision is still free.

### Activate

A short wait, then a success screen. The window closes itself after a couple of seconds and the admin reloads. Your license is now active on this domain.

:::

The domain is detected from your site address. You never type it in.

<div data-callout="warning">

The Envato button verifies the selected code through the Envato API, so a direct purchase cannot be activated through it. Direct buyers use the Hub button. The reverse is not restricted: an Envato buyer can sign in to Hub, including with the same Envato account, and activate from there.

</div>

## Staging and test sites

Every license carries one free staging slot on top of the domains you paid for, so you can try an upgrade somewhere before it reaches your readers. You claim it with a checkbox during activation, and the site has to qualify.

A [staging site](https://hub.jkdevstudio.com/knowledge-base/licensing/move-license-and-staging), for this purpose, is one the public cannot reach. That is the whole test, and it is checked rather than taken on trust:

- A reserved address that cannot exist publicly: `.test`, `.localhost`, `.local`, `.internal`, `.invalid`, `.example`, or a local IP
- A staging hostname your host issues and you cannot mint yourself, such as WP Engine, Kinsta, Flywheel, Pantheon, Cloudways, InstaWP, WPMU DEV, Lando or DDEV
- A domain that does not resolve on the public internet, or resolves to a private address
- A site behind a password, meaning it answers 401, 403 or 407

**A name is not evidence.** `staging.example.com` on a public server that anyone can open is a live site with a suggestive label, and it is treated as one. A noindex tag is not evidence either, because every pre launch site sets noindex. Noindex counts only when the hostname also announces the environment.

<div data-callout="warning">

The staging slot is for a site you are working on, not for a second live site that happens to be quiet.

An internal site, a client preview you keep online, a maintenance copy, a members only build: all of those are live sites, and each of them needs a paid slot. Staging domains are re probed weekly. A domain that has gone live is flagged on our side rather than cut off, and the theme keeps working, but the slot is not a free extra domain and using it as one is a terms violation.

</div>

## When it does not work

Organized by where you got stuck, because that is what you know.

### The window did not open

A popup blocker, an extension that blocks third party windows, or a browser mode that forbids them. Allow the window and click again.

### The window opened blank or showed a network error

Your server or network is not letting the request through to Hub. Check the connectivity result on the theme diagnostics screen.

<div data-callout="danger">

**We do not serve Russia or Belarus.**

We are a Ukrainian studio. Russia is running a war of terror against our country and Belarus is helping it, so neither is a market we sell to. This is about the customer, not only about the server: a Russian or Belarusian customer is refused wherever the site is hosted, and hosting in those countries is refused at our infrastructure level on top of that. Activation does not complete, updates do not arrive, and tickets are not answered. There is no appeal to write to, and the [terms](https://jkdevstudio.com/terms-conditions/#russia-and-belarus) say the same thing in full.

</div>

### It says there have been too many attempts

The activation pages have rate limiting, and clicking repeatedly triggers it. Wait a minute and try again. Nothing is broken and nothing is blocked.

### Sign in does not go through

Usually the wrong account, a session that expired while you were filling the form, or a browser already signed in as somebody else. Close the window, sign out of the other account, and start again.

### The license list is empty

You signed in with an account that does not hold this purchase. **Almost always a second email address.** Check which address received the purchase email and sign in with that one.

### The license is already in use on another domain

The most common case of all. Free it on the site where it currently sits, using the deactivate button in that site admin. If you no longer have access to the old site, remove the activation from your [customer hub](https://hub.jkdevstudio.com/login) instead.

### The license is blocked or refunded

A refunded purchase or a license blocked for a terms violation will not activate. If you believe that is a mistake, [open a ticket](https://hub.jkdevstudio.com/support).

### You have run out of activations

Every slot on the license is in use. Free one from a site you no longer run, or add capacity: activations are sold in your [customer hub](https://hub.jkdevstudio.com/login) and land on the key you already own, with nothing to reinstall. See [buying more activations](https://hub.jkdevstudio.com/knowledge-base/licensing/buy-more-activations).

### The code belongs to a different product

This happens to people who own several of our items. Check which item the license belongs to in your account.

### The window closed but the license is not active

Reload the admin page first. Then check that the domain matches the one you activated on, remembering that `www.example.com` and `example.com` are two different domains. Then clear your object cache and page cache. If none of that helps, [open a ticket](https://hub.jkdevstudio.com/support) and say which of these you already tried.

### It activated on the wrong domain

Normally this resolves itself. We normalize what the site reports, so a `www` prefix, a trailing slash, a port, an uppercase host and the query strings that translation plugins add to a URL all come back to the same domain, and a site running WPML or Polylang does not burn a second slot on its own language paths.

The case that gets through is a real mismatch: the site is reached at a `www` address while WordPress is configured without it, or the other way around. Deactivate and activate again from the address WordPress itself is set to. If the domain in your account still does not match the site you are on, [open a ticket](https://hub.jkdevstudio.com/support) with both spellings and we will move it.

<div data-callout="note">

If none of these match, please do open a ticket. The activation system is well worn and rarely surprises us, which is exactly why an unusual case is interesting and gets looked at quickly.

</div>

Include these in the ticket: your domain, the item name, the screen you stopped on, the exact wording of the message, and the diagnostics report showing the Hub connection.

## What activation sends us

Worth stating plainly, since you are agreeing to it at the checkbox.

When you activate, we receive the site domain, so the activation can be bound to it. We receive the IP address of the request, as protection against abuse. We receive your name and email from the seller account, so the license can be shown as yours. **Nothing about your content, your visitors or your database is involved.**

Activating means accepting the [terms of use](https://jkdevstudio.com/terms-conditions/) and the [privacy policy](https://jkdevstudio.com/privacy-policy/).

One license covers the number of domains you paid for. If you need another one, buy the extra activation in your [customer hub](https://hub.jkdevstudio.com/login) and it lands on the same key. That is cheaper and calmer than any workaround.

## Nulled themes and tampered activations

Running the Pro build without a paid slot is forbidden, whether that is a [nulled copy](https://hub.jkdevstudio.com/knowledge-base/licensing/nulled-copies), a patched activation, or anything else that fakes one. Activation runs against our server, so it leaves a trail, and where we find it the license is blocked and the account is frozen. The [terms](https://jkdevstudio.com/terms-conditions/#piracy-nulled-copies-and-copied-code) set out what else follows.

Our free themes stay free: run them on as many sites as you like, with nobody counting. Everything sold as Pro needs a license behind it.

## Common questions

<details><summary>Do I need a jkdevstudio account if I bought on Envato?</summary>

You do not have to create one. The Envato route signs you in with Envato alone.

An account is created for you anyway during activation, because a license has to belong to somebody and a domain has to be bound to something. Set a password on it whenever you like and you get the rest: your licenses in one place, remote deactivation, downloads, and tickets.

</details>

<details><summary>What permissions does the Envato sign in ask for?</summary>

Your email address and confirmation that you bought this specific item. Nothing else in your Envato account is accessible to us.

</details>

<details><summary>Does the theme keep working if the license is not active?</summary>

The public part of the theme still renders, and the Pro features stop along with updates. That is the technical answer.

The legal one matters more: running a paid theme on a live domain without an active license is not allowed. Activate the license, or take the theme off that domain.

</details>

<details><summary>Can I activate on a staging site?</summary>

Yes. Every license includes one free staging slot alongside the domains you paid for, claimed with a checkbox during activation, and the site has to be one the public cannot reach. The staging section above lists what qualifies.

</details>

<details><summary>Does the staging slot use up a paid activation?</summary>

No. It sits outside the paid allowance, so a one domain license runs one live site plus one staging site.

It is one staging slot per license, not one per paid domain. If you need several test environments at once, they need slots of their own.

</details>

## Still stuck

[Open a support ticket](https://hub.jkdevstudio.com/support) with the details listed above. An activation problem described with the screen you stopped on and the exact message is usually resolved in one reply.