CVM
Every offer competes on value. Every decision explains itself.
Kontala CVM is next-best-action decisioning for your whole campaign portfolio. It ranks every live offer for each customer on one expected-value score, checks consent and contact policy first, and runs the same logic in batch, in real time and in simulation.
Six reasons every contact earns its place
Every offer on one scale
Each candidate is reduced to one expected-value score, so a broadband save and a handset upsell from different portfolios compete fairly for the same customer.
The portfolio is set by expected value, not by whichever team shouts loudest.
Live behaviour moves the answer
Events such as roaming, a low balance or the end of a contract lift propensity within a fixed bound, and each signal fades at its own pace.
Offers reach customers while they are in the market, and no single event can override commercial intent.
Compliance no one can switch off
Consent, Do Not Contact and permitted contact hours are hard gates. Fatigue rules relax only through an approved override with a reason and an expiry.
Lower complaint and opt-out risk, and a contact policy compliance can review on its own.
No winner left on the table
When the best channel is full, the customer moves down the channel ladder instead of being dropped. Capacity losses are reported apart from policy blocks.
More of the eligible base reached on the capacity you already pay for, and a clear case when you need more.
Every decision explained
Every candidate, selected or not, is kept with each factor, the stage that removed it, the values it evaluated and the release it ran under.
Answer “why did this customer get that offer?” for auditors, regulators and campaign owners.
Agents do the groundwork
Describe the goal and the KPIs. Agents draft the campaign, compile the rules, generate the tests and explain the results.
Planners spend their time on strategy instead of SQL, spreadsheets and run logs.
One score ranks every offer, from every portfolio
Likelihood and worth are multiplied, not added, so a valuable offer the customer will refuse loses to a modest one they will take. Each factor has an owner, so when a ranking looks wrong you know who changes what.
S = P′ × V × B × C × T
Propensity
How likely this customer is to accept, adjusted within a fixed bound by what they are doing right now.
Owned byYour models
Value
What a conversion is worth, so a high-value offer outranks a low-value one at equal likelihood.
Owned byOffer economics
Business lever
One visible thumb on the scale for this quarter's strategic priorities.
Owned byCommercial lead
Context
Levers that favour the segments a campaign performs well in, without cloning the campaign.
Owned byCampaign owner
Portfolio priority
Standing priority of an Issue, Group or Offer, inherited by every campaign beneath it.
Owned byPortfolio owner
Every candidate passes the same stages, in the same order
Qualify
Is the campaign live, due and right for this customer?
- Context
- Applicability
- Eligibility
Permit
May we contact this person, on this channel, now?
- Consent and Do Not Contact
- Exclusions
- Permitted hours
- Suppression
- Frequency and gap
Rank
Which offer is worth most to this customer?
- Scoring
- Arbitration
Place
Where is there room, and in what form?
- Channel allocation
- Control and A/B
- Treatment
- Export or response
Everything from brief to delivery receipt
Campaign design
- Audiences built from business fields with AND, OR and NOT, compiled to SQL and sized with a dry run.
- Describe a segment in plain language and get a valid audience rule to review.
- SMS, email and push treatments, written by hand or drafted with AI.
- Recurring schedules, delivery windows, offer validity and reminders that stop when the customer responds.
- Decide per line, per person or per account, and combine a customer's lines into one message.
Decisioning and arbitration
- Expected-value scoring across every live campaign, with safe fallbacks for missing or invalid factors.
- Portfolio, Issue, Group and Offer taxonomy with inherited, dated priorities.
- The full ranked list kept for every customer, with deterministic tie-breaks.
- Channel allocation within campaign caps, treatment volumes and channel capacity.
- Universal and campaign control groups and A/B variants, assigned deterministically.
Real time and events
- Next-best-offer API for apps, websites, IVR and the call centre.
- Response capture for impressions, clicks, acceptances, rejections and opt-outs, with duplicates recognised.
- A governed event catalogue, with a decay rate per event and unknown events logged, not applied.
- Event-triggered campaigns that decide for one customer the moment something happens, inside the channel's delivery window.
- Fallback offers keep channels answering if the decision service is unavailable.
Contact policy and consent
- Consent and Do Not Contact as hard gates, where a missing flag means no.
- Permitted contact hours in the recipient's local time. Out-of-hours contacts are held, not dropped.
- Frequency caps and minimum gaps scoped to channel groups, from global down to a single channel.
- Suppression after an outcome, at Offer, Group or Issue level.
- Overrides relax fatigue rules only, and need approval, a reason and an expiry.
Batch execution and delivery
- Portfolio runs where every campaign due in a slot competes in the same run.
- Run locks, retries, pause and controlled restart, with status recorded for every stage.
- Validation gates before any file leaves the platform.
- Export layouts per channel, delivered to cloud storage or over SFTP.
- Delivery receipts fed back into history, so reporting and contact policy see what was actually delivered.
Analysis and simulation
- Run waterfall from eligibility to export, with a reason code at every drop.
- Rivalry matrix showing which campaigns win and lose head to head.
- Audience overlap to spot cannibalisation before launch.
- Customer drill-down that explains a result field by field.
- What-if simulation of values, levers and caps, with displacement against the live baseline and no access to production.
Decides for every channel you run
- Mobile app
- Website
- IVR
- Call centre
- SMS
- Push notifications
- Outbound dialler
Reads customer data and model scores from your BigQuery warehouse, read-only and behind data-quality gates. Runs on Google Cloud with separate staging and production environments.
An agent at every step, a person at every gate
- Brief
Briefing agent
Turns a business goal and target KPIs into a review-ready brief or a complete draft campaign, based on what worked before.
- Build
Development agent
Converts the approved brief into audience rules, prioritisation settings, treatments and volume controls, as a versioned package.
- Test Coming soon
Testing agent
Generates positive, negative and boundary cases with synthetic data, runs them and records the evidence.
- Operate Coming soon
Operations agent
Checks approvals and evidence before go-live, starts authorised runs, watches volumes, and retries, pauses or escalates.
- Explain
Explanation agent
Explains in plain language why a run lost volume or a customer missed an offer, down to the exact field.
Agents draft, people decide. Agent output passes the same validation and four-eyes approval as any human change, and every prompt and approved version is kept.
Built for everyone who owns a customer decision
Head of CVM
“Steer the whole portfolio by value, not by whose campaign is loudest.”
- Raise an Issue's priority once and every campaign beneath it moves up.
- See who wins, who loses and what it displaces in simulation, before you approve.
Campaign planners
“Describe the campaign. Review the draft. Ship it.”
- Build audiences from business fields, with no SQL to write.
- Agents prepopulate the campaign from a brief and what worked before.
Risk and compliance
“Consent and quiet hours that no override can reach.”
- Every contact decision records the rule and the values it evaluated.
- Append-only history, with personal data kept out of the logs.
Architects and IT
“Real-time answers that never wait on the warehouse.”
- Batch, real time and simulation share one decision engine and one approved release.
- Single sign-on, role-based access and separate staging and production environments.
A decision engine, not a black box
A model you already know
The propensity, context, value and lever arbitration enterprise teams use today, plus portfolio priority. Bring your interaction history and contact policies hold from the first run.
One engine, every path
Batch runs, channel requests, event triggers and simulations use the same code and the same approved release, so a simulation and a live run differ only by their inputs.
Explainable by construction
Losing candidates are recorded, not discarded. That is what makes waterfalls, rivalry reports and customer drill-downs possible.
Releases, not live edits
Campaigns, offers and policies are immutable versions, approved by a second person and frozen into signed releases. Any edit voids the approval.