Licences and credits
The plugin is free and the folders are free. What costs money is the AI: looking at pictures, proposing folders, and planning a tree. Those are the only things metered, and the table below is the whole list.
One credit describes one image #
Not per screen, not per seat.
- Credits are prepaid and do not expire while the licence is active. Unused allowance carries over on renewal.
- They are metered before the image is sent.
- Every failed image is refunded. You pay for descriptions, not attempts.
- At zero the work pauses and nothing is billed afterwards.
- There is no overage. Nothing can be charged beyond what you prepaid, because there is no mechanism on our side to do it.
- Large backlogs are split into jobs of up to 1,000, so a failure costs a chunk rather than the run.
What costs a credit, and what does not #
| Action | Cost |
|---|---|
| Describe a picture (alt text, title, caption) | 1 credit |
| Alt text from an existing description | 0 |
| Propose folders | 10 credits |
| Plan my folders | 30 + ⌈labels × 15 / 100⌉, at most 480; needs at least 5 described pictures; free once a tree is confirmed |
| Tree grows (new folders for new labels after confirming) | 0 |
| Plan not shown (it doesn't beat your folders, it didn't arrive, or the tree was confirmed mid-run) | Refunded once per site every 30 days, within the hour; a plan that fails on the service is always refunded |
| Folder profiling on confirm | First 100 folders free, then 1 credit per 6 folders |
| Re-filing, folder talk | 0 |
| Search by meaning (and its indexing) | 0, rate limited |
| Free trial | 25 credits |
Folders, the tree, smart folders, filters, galleries, duplicates, the importer and file types never cost a credit. The button for each charged action shows its price before you press it. How the plan price is worked out, and what the refund covers, is on Plan my folders.
One pooled balance. There is no allowance-versus-pack bookkeeping to reason about: a plan's yearly credits and any packs you buy land in the same ledger, and spending draws that one number down.
You are not charged twice for the same picture. A describe request is
fingerprinted from the site, the image and the prompt, so the same file arriving
again in quick succession is refused with a 409 rather than billed again.
When the service is down, your plugin keeps working without the AI features. Filing, search and everything already described keep working, and no credits are taken for a picture that was not described. A picture the service could not answer for — a temporary error, or no answer at all — is set aside and tried again: a run in the background comes back to it ten minutes later, a run you are watching leaves it for your next press. A picture is marked as failed only when the service answers that the file itself cannot be described. Searching by meaning falls back to the ordinary word search, and your credit balance shows the last number it read until the service answers again.
Search, re-filing and folder talk are free but not unlimited. They are counted against the rate limits below at a notional cost, and then never debited — a leaked key should not become a free embedding API, but a search box that spends money as you type is a search box people stop using.
Connecting your licence #
Two minutes.
- Find your key. It arrives by email after purchase, and it is in your account under Licences.
- VergeLabs Library → Licence, paste the key, press Save key.
- The screen then shows your plan, sites used, and credits remaining — read from the service, not guessed locally.
Disconnecting turns the AI features off. The plugin keeps working, your folders are untouched, and alt text already written stays written.
Plans #
| Licence | Sites | Credits included per year | EUR | USD | GBP |
|---|---|---|---|---|---|
| Single | 1 | 2,000 | €39 | $45 | £35 |
| Five | 5 | 5,000 | €79 | $89 | £69 |
| Agency | 25 | 20,000 | €399 | $449 | £349 |
| Lifetime | 1 | 2,000 every year, one payment | €149 | $169 | £129 |
Credit packs #
| Pack | EUR |
|---|---|
| 500 | €10 |
| 1,000 | €18 |
| 2,000 | €34 |
| 5,000 | €70 |
| 20,000 | €240 |
The cart shows the price in your currency. Cheaper in bulk, because a library of twenty thousand should not cost ten times a library of two thousand.
Currency #
You are quoted in EUR, USD or GBP by country: pounds in the UK, euros in the EU and the countries inside or beside the single market, dollars elsewhere. The country comes from the CDN edge header on the request — there is no IP lookup service and nothing about the visitor is sent anywhere.
Licences are metered on credits, not gated on sites. Most plugins gate on sites because sites are countable. Here the thing that actually costs money is the images.
Seats #
A licence activates against a site URL. Activating on more sites than the plan
allows returns seat_limit rather than silently working, and no seat is consumed
when that happens.
A staging copy does not take a seat. The plugin sends
wp_get_environment_type(), and a non-production site is validated without ever
touching the activation list. This is the commonest licensing complaint there is:
production gets cloned to staging, the clone boots and activates, and a two-site
licence is full before the customer has done anything wrong.
It is a convenience and not a security control, and it is not treated as one. Seats are billing, not DRM.
Moving a licence is deactivate on one site, activate on another, from your account.
Expiry and grace #
| State | What happens |
|---|---|
| Active | Everything works |
| Past due | A 7-day grace period: the licence still works, and the answer says it is degraded |
| Expired | AI features stop; folders, tree, filters, galleries and everything else keep working |
| Canceled | Same as expired |
Nothing about your library is held hostage by a lapsed licence. The folders were never ours.
An unknown key gets a 200 with valid: false rather than a 404 — the plugin has
to be able to tell "your licence lapsed" from "the server is down", and only the
first should turn features off.
Rate limits #
These are a brake on a leaked key, not a budget. They are loose enough that no honest run meets them.
| Limit | Value |
|---|---|
| Burst | 240 credits a minute |
| Rolling day | 25,000 credits a day or 25% of the balance, whichever is higher |
| Planner | 40 proposals and plans a day per site |
The day window rolls rather than resetting at midnight — a calendar reset hands an attacker a fresh allowance and tells them exactly when to come back.
Both are counted from the credit ledger, which already records every spend, so the
count survives a cold start. Exceeding either returns 429 with a Retry-After.
The licence key #
Format: VGML- followed by 34 characters from a Crockford-style alphabet with no
I, L, O or U — nobody has to guess whether a character in their invoice is a
one or an ell.
Stored sealed. The key is encrypted at rest in your database (AES-256-GCM, with
the key derived from your site's auth salt), write-only through REST, masked in
the UI, and never returned by the status endpoint — which reports a boolean
has_license and nothing else.
Consequences worth knowing:
- A copied database does not yield a working licence.
- Changing your salts reads as "no licence". Re-entering the key is the recovery.
- Server-side, keys are looked up by hash, so a leaked database read does not hand over working licences and no log line can ever contain a key.
Refunds and invoices #
- No questions asked, within 14 days of buying. Credits already used are deducted.
- VAT: a consumer in the EU sees prices with their country's VAT included, and the checkout shows it before you pay. A business with a valid EU VAT number pays no VAT (reverse charge). The invoice is in your account.
Multisite #
A network administrator can set one key for the whole network. A site's own key still wins unless the network locks it — an agency runs one licence across client sites and does not want fifty people pasting keys, or one of them pasting something else.
Written from version 3.15.0 of the plugin. Last updated 2026-10-02. All documentation · Legal · Support