# Evaluate without signup (/licensing/evaluation)



A fresh standalone installation can start without a supplied license key. KubeMQ
obtains and saves an evaluation key automatically: **14 days**,
one installation, no clustering. Kubernetes and clusters require an explicit key.
For repeatable automated pipelines, use a [trial or paid key](/licensing/license-key)
instead of consuming anonymous grants.

## Start with persistent storage [#start-with-persistent-storage]

<RunKubeMQ />

The named volume at `/kubemq/store` holds messages, the installation identity,
`license/evaluation.key`, and the signed lease. Keep it when replacing the container.
No fixed hostname is needed: a standalone server automatically adopts its existing
data directory. Docker and Podman use the same command (replace `docker` with
`podman`); [Docker Compose](/deploy/docker#docker-compose) provides the same volume.

By running the evaluation you accept the [evaluation terms](https://kubemq.io/evaluation-terms).
[Usage reporting](/licensing/usage-reporting) is enabled with no opt-out, including
machine name, software version, and message and volume counters. The licensing
service stores a keyed hash of your public address for up to 90 days. The installation
grant is retained after that hash is cleared. See the [privacy notice](https://kubemq.io/privacy-policy-2).

## Eligibility and connectivity [#eligibility-and-connectivity]

Automatic evaluation requires no explicit license input, no clustering, and no
Kubernetes detection. Explicit files, data, and keys retain their normal
[precedence](/licensing#key-or-file).

A fresh store contains no data outside `license/`, except `lost+found` and `.DS_Store`.
A leftover `license/instance.id` alone is allowed; a cached lease prevents fresh
issuance. An existing saved evaluation key resumes that evaluation. A saved key
without its installation identity refuses to start: keep the data and supply a real
key. KubeMQ never deletes data to make an installation eligible.

The first start must reach `https://license.kubemq.io`. Allow outbound HTTPS and set
`HTTPS_PROXY`, `HTTP_PROXY`, and `NO_PROXY` in the container environment when your
network requires a proxy. An unavailable service is retried within the existing
30-minute first-start window. Address limits or disabled evaluation require a
[30-day trial key](https://kubemq.io/trial). Networks without licensing access need
an [offline license file](/licensing/air-gap).

## Timeline and expiry [#timeline-and-expiry]

The 14 days begin when the license is issued. Online evaluation leases last 24 hours
and refresh hourly. Signed license claims determine the final operating deadline,
reported as `run_until` by `GET /api/v1/license`. A disconnected installation can
stop before the full 14 days. The final operating deadline accounts for both
the lease and commercial expiry.

The dashboard shows days remaining, warns during the final three days, and shows
when the commercial evaluation period expires. `GET /api/v1/license` and `kmq license` expose
`evaluation_days_left`: rounded up, never negative, and `null` for other plans.
When the signed evaluation operating deadline is exhausted, [evaluation-expired](/licensing/troubleshooting#evaluation-expired)
requires a new key; connectivity alone cannot extend it.

## Keep your data and continue [#keep-your-data-and-continue]

A restart uses the saved key and identity instead of requesting a new evaluation.
To recreate the container without losing messages:

```bash
docker stop kubemq
docker rm kubemq
```

Run the evaluation command above again with the same named volume. To continue with
a free 30-day trial or paid key, obtain the key and run this command instead:

<RunKubeMQ volume="kubemq-data:/kubemq/store" />

Replace `YOUR_LICENSE_KEY` with your real key. A successfully activated real online
key removes `license/evaluation.key`. The same identity and queued messages survive.
Continue supplying the real key on subsequent container recreations.

<Callout type="warn" title="Removing a volume deletes your messages">
  Do not delete the volume or evaluation files to repair an installation. Removing
  `kubemq-data` or running `docker compose down -v` deletes persistent messages and
  identity. A fresh store is subject to issuance limits and does not guarantee another
  evaluation. Prefer a trial key to keep your data.
</Callout>

## Startup messages [#startup-messages]

These messages identify the required next step:

* Kubernetes: A license key is required on Kubernetes. Set KUBEMQ\_LICENSE\_KEY. Get a free 30-day key at [https://kubemq.io/trial](https://kubemq.io/trial).
* Clustering: A license key is required for clustering. Set KUBEMQ\_LICENSE\_KEY. Get a free 30-day key at [https://kubemq.io/trial](https://kubemq.io/trial).
* Existing store: A license key was expected. Set KUBEMQ\_LICENSE\_KEY. Get a free 30-day key at [https://kubemq.io/trial](https://kubemq.io/trial).
* Incomplete files: The evaluation files are incomplete: the saved key has no installation identity. Get a key at [https://kubemq.io/trial](https://kubemq.io/trial) to keep your data, or remove the volume to start fresh.
* Expired: This evaluation has finished. Get a free 30-day key at [https://kubemq.io/trial](https://kubemq.io/trial) to keep your data, or remove the volume to start fresh.
* Unreachable or busy after retry: Signup-free evaluation must reach license.kubemq.io. Check your internet connection and proxy settings, get a key at [https://kubemq.io/trial](https://kubemq.io/trial), or use an offline license file.
* Address limit or disabled: Signup-free evaluation is unavailable. Get a free 30-day key at [https://kubemq.io/trial](https://kubemq.io/trial) and set KUBEMQ\_LICENSE\_KEY.
* Identity used after retry: This installation has already used its evaluation. Get a free 30-day key at [https://kubemq.io/trial](https://kubemq.io/trial).
* Store write failure (the actual path replaces `%s`): Cannot save evaluation files in store folder %s. Make the store writable, or get a key at [https://kubemq.io/trial](https://kubemq.io/trial).
* Expiry warning (days remaining replace `%d`): Your KubeMQ evaluation expires in %d days. Get 30 more days free at [https://kubemq.io/trial](https://kubemq.io/trial).
