Image licensing, where the revenue repeats
Everything a CRM does, and the renewal engine a licensing book needs
Prospecting, reactivation, manual deals, stages you drag a card through — the ordinary work is all there. On top of it, subscription cycles and credit-purchase rhythm read straight out of your own transaction history.

Who built it
Built to run a licensing book, by people running one
Fast Media House built this to work its own book: our renewals, our credit forecasts, our service inbox. It exists because we needed it. If it would be useful to anyone else working a licensing book, it is available to look at.
It runs daily on around 414,000 accounts and 332,000 transactions. That is our own book and it stays ours — the figures are here only as evidence the system holds up at that size.
In short
The pipeline builds itself
A nightly job reads the renewal cycles out of transaction history, skipping any cycle already open, won or lost.
Credit buyers get a due date
Their own purchase intervals are measured and the next one forecast, with a confidence score that demotes itself when a prediction goes stale.
Nothing goes quiet and disappears
Lifecycle stage, segment and value tier are recomputed nightly for every account, so dormant is a state you can filter on.
The draft is written before you open it
A detector picks the angle from that account’s history and the tokens come from its own record. You still read it and press send.
Your book is yours alone, and the licensor sees across all of them
Separation is enforced by the database rather than the interface, so it holds through the screens, an export or the API — and the licensor moves between territories from one login rather than a second account.
Every morning
The day's work, decided before you open it
One screen that says what is due, what is overdue, and what it is worth.
- Revenue at risk is what is already overdue plus what falls due this month, split into subscriptions and credit top-ups because the two are chased differently.
- Best calls today ranks the open retention deals by urgency, and says so plainly when there is nothing to chase.
- Beside it: revenue against the same point last year, active and lapsed customers with the churn rate, average deal, and what has actually been logged this week.

Pipeline
A pipeline that builds itself
Two kinds of renewal, read straight out of the transaction history and put on a board every morning.
- Subscriptions come from renewal dates. Credit customers are forecast from their own purchase intervals, with a confidence score attached.
- Five boards — all deals, retention, reactivation, prospecting and your own product — with board membership recalculated nightly.
- Drag a card between stages. The drop writes the stage change and logs it against the deal.

Service
An inbox that triages itself
Incoming mail is classified into 18 categories and routed before anyone opens it.
- Spam, acknowledgements and unsubscribes close on the way in and never reach the queue.
- Everything else arrives summarised in one line with a confidence score.
- A drafted reply is one click away, and a person still signs it off.

AI drafting
Email written from the account, not from a blank page
Open the writer on any account and it already knows who it is talking to.
- Detectors read the account first and offer an angle: a customer who cancelled once and has an open deal again, a high-value account gone quiet, an open renewal alongside recent service mail, a multi-year subscriber who has not renewed this year.
- Language follows the account by default, English or Dutch, with a manual override on the same screen.
- Tokens are filled from the customer record: last purchase, amount and product, days since, renewal date, lifetime value and segment. A token the merge cannot fill blocks the send rather than going out half-written.

Want to see it against a full book?
Outbound
Outbound with the brakes built in
Campaigns and standing automations, both of which stop before they can embarrass you.
- Build against a saved segment or a pasted list, dry run to see exactly who would receive it and who is held back, then schedule the send spread over time.
- Every template exists in English and Dutch with its merge tokens recorded against it, and stays unselectable in the wizard until someone activates it.
- Standing triggers fire on renewal and credit-forecast windows, each with a cooldown and a daily cap, and nothing sends without a person releasing it.
- One-click unsubscribe to RFC 8058, a suppression list checked when a campaign is queued and again at the moment of sending, and a frequency cap across every campaign.

Reporting
The whole book, measured
Analytics across every account, not only the ones currently in play.
- Revenue by month, new against repeat customers, retention cohorts, and country and segment breakdowns.
- Lifetime value, RFM segment, purchase rhythm and lifecycle stage computed for every account and refreshed nightly.
- A data-health tab that tells you what is missing rather than quietly averaging around it.

Tenancy
Multi-territory by design
Not a permissions checkbox added afterwards, but the shape of the data.
- Each territory works its own book and sees only its own book.
- The licence holder sees every territory at once, or switches into any single one.
- Enforced in the database, so it holds through the screens, an export or the API.
Why not a generic CRM
General-purpose CRMs assume you already know who your next deal is with
They expect you to create the deals
An empty pipeline someone fills in by hand.
The board is written for you, nightly
A scheduled job reads the renewal cycles out of the transaction history and puts them on the board, skipping anything already open, won or lost on that cycle.
They have no renewal cycle
No field for a rhythm, because none has needed one.
Both kinds of renewal, handled differently
Subscriptions run off the renewal date on the transaction. Credit buyers have none, so their own intervals are measured and the next purchase forecast, with a confidence score that demotes itself once a prediction goes stale.
They hide the quiet accounts
Only what is open, which is the smallest part of a book.
Every account stays classified
Lifecycle stage, RFM segment and value tier are computed for all of them and refreshed nightly, so a customer between cycles is separable from one who left years ago — and both still appear on a board.
They cannot see a territory
One view, not yours and the licence holder’s.
Two views of the same data
Every customer row carries a territory and the rules are enforced by the database, so the split holds through the screens, an export or the API. The licence holder sees all territories at once, or switches into one.
Questions
The detail, if you want it
Does this replace a general-purpose CRM?
For a licensing book it is built to, and for a reason that is structural rather than about features. Salesforce, HubSpot and Pipedrive all start with an empty pipeline that someone fills in by hand. A licensing book does not work that way: the renewals already exist in the transaction data, and what you need is something that reads them out and puts them in front of you every morning without anyone typing.
What happens to accounts that are not currently buying?
They stay in view, segmented. A licensing book has a long tail by nature — steady customers, seasonal ones, and a large number who buy in cycles measured in years rather than months. A tool that only surfaces open opportunities hides most of that, and gives you no way to tell a customer who is simply between cycles from one who moved on years ago. Every account keeps a lifecycle stage, an RFM segment and a value tier, recomputed nightly.
How does it know when a credit customer is due?
It measures them. A subscription has a next renewal date; a credit purchase has none at all, only a rhythm. The system takes each account’s own purchase intervals, forecasts the next one and attaches a confidence score, so a customer who has topped up every 110 days for three years is flagged before they run out, while one who bought twice in a year and stopped is not treated as if they were due. Forecasts that have gone stale drop out on their own.
How is one territory kept separate from another?
At the database, not in the interface. Every customer row carries a tenant, and the access rules are enforced by the database itself, so the separation holds whether someone is using the screens, an export or the API. The licence holder can see every territory at once or switch into any single one.
Are those 414,000 accounts included?
No. That is Fast Media House’s own book, and the figure appears only as evidence of the volume the system handles day to day. A territory or partner brings its own accounts and transaction history; what is on offer is the software that reads them.
What does demo access include?
A working instance loaded with a full synthetic book — several hundred accounts, a few thousand transactions, a populated pipeline and service inbox — so you can see how the screens behave against real volume rather than a handful of sample rows. No real customer data of ours is in it.
Access
Request demo access
A working instance loaded with a full synthetic book, so you can see how it behaves against real volume. Tell us where you are and we will set you up.
Goes straight to Marco at Fast Media House. No newsletter, no list.