The licensing layer for audio softwareComing soon
Real-time. Programmable. Secure. Complete licensing infrastructure for music software creators. We are building it now and opening it to a first group of developers soon.
Signed
Licenses verify offline
JUCE / C++
Native SDK
-
Just-in-time minting
1 click
Revoke everywhere
The Problem
Audio software has a licensing problem
Piracy is endemic, activation friction pushes honest buyers away, and every plugin company ends up rebuilding the same key server from scratch.
55%
of music-software users admit they've run unlicensed plugins
80%
say affordability is why people pirate — trials and tiers convert them
82%
prefer a simple serial number over dongles and challenge codes
Source: IMSTA, “Let's Talk Piracy” survey (2022)
01. Piracy
Cracked builds ship faster than updates.
Popular plugins are cracked and shared within days of release, and a majority of users have run one. A bare serial check is not a defence — it's an invitation.
02. Friction
Heavy protection punishes the people who paid.
Dongles, machine locks and re-authentication mid-session are the complaints buyers cite most. When activation fails in a studio, the cracked copy starts looking like the reliable one.
03. DIY
You're a DSP developer, not a license-server admin.
So every plugin company hand-rolls keys — a PHP script, a spreadsheet, serials pasted into store emails — and it breaks on the busiest day of the year: release day.
How it works
Four steps, and you are selling licensed software
Step one
It starts with the SDK
Generate an API key in Settings, drop the JUCE module into your CMake build, and construct the Core with your key and product slug. From then on your plugin can ask one question — is this licensed? — and everything else is handled for you.
One key per environment. Rotate it whenever you like — the plugin picks up the new one on its next check-in.
# point JUCE at the modulejuce_add_module("${POLARIS_SDK_DIR}")target_link_libraries(MyPlugin PRIVATEpolaris_licensing_sdk)
auto core = std::make_shared<polaris_licensing_sdk::Core> (endpoint,api_key, // from Settings → API Keys"nebula-synth", // your product slugdevice_id);if (! core->hasValidLicense())showActivationDialog(); // opens your hosted form
Step two
Then you mint your keys
Pick a product, choose how many keys you need, and mint. Keys follow whatever pattern you set per product, so they stay recognisably yours. Mint a batch for a distributor, or just-in-time when a store order lands.
Step three
Your customer lands on a form you built
The page where a key gets redeemed. Choose what you collect, style it to match your product, and publish — no front-end work and no redeploy when you want to change a colour. Build it below, then switch to themes to skin it.
Licence key, device ID and product ID are always there. The last two are filled in by the SDK and never shown to the customer — everything else is yours, and whatever you collect lands on the licence record.
The default. Dark, quiet, gets out of the way.
Where the key gets entered — every form ships with all three.
Step four
And then you manage licences
Every activation lands on a licence record: which machines it is bound to, how many seats are left, when each last checked in. Free a seat, revoke a key after a chargeback, or let the customer de-register a device themselves.
Platform
Everything after the sale, in one dashboard
Mint keys, watch activations land, revoke a leaked licence, and publish the page your customers redeem on. No spreadsheet, no bespoke admin panel to maintain.
Product
Stripe, for software licensing
Issue keys, bind them to devices, publish the activation page, and see what is happening — from one dashboard and one API.
Key Management
Mint keys one at a time, in distributor batches, or just-in-time from store orders. Revoke a leaked key from the dashboard in one click.
Activation Forms
A hosted page your customers redeem keys on. Style it to match your product, publish it, and change it later without a deploy.
JUCE / C++ SDK
Drop-in licensing for audio plugins. Signed license files verify offline at launch, and air-gapped machines activate by file export.
Overview Dashboard
Live counts of licenses, devices and check-ins, key-status breakdowns, and per-product key runway — will you run out before release day?
Device & Seat Control
Bind a licence to a set number of machines. Customers see what is activated and can free a seat themselves, if you allow it.
Products & Catalogue
Model what you sell, then attach key patterns, seat limits, and forms per product. Transactions reconcile against it.
Secondary Market
Verified license transfers between users. Developers set resale policy and retain full control throughout the transfer.
Coming SoonData Intelligence
Advanced analytics on demand, distribution, and usage — so vendors understand customer behaviour across every channel.
Coming SoonQuestions
The things people ask before they sign up
Answered here rather than in a sales call.
Question not answered here? Ask us directly. We reply to every message while we build.
