Reference
What breaks when you migrate from CPQ to Revenue Cloud
The specific things that stop working, why they stop working, and what to do instead. Each of these is something the scanner detects automatically in your own org.
Known incompatibilities (8)
- criticalCalls the CPQ Quote Calculator API
The CPQ calculator API does not exist in Revenue Cloud. Pricing is evaluated by the Pricing Procedure engine, which has no drop-in equivalent for programmatic calculator invocation.
- criticalUses a CPQ Custom Script (QuoteCalculatorPlugin)
Custom Scripts hook into CPQ's calculation lifecycle (onInit, onBeforeCalculate, onAfterCalculate). Revenue Cloud has no equivalent lifecycle hook, so this logic silently stops running.
- highApex trigger on a CPQ object
Triggers bound to SBQQ__ objects have no target after migration — the objects themselves are replaced. The trigger will not error; it simply never fires again.
- highReferences CPQ Lookup Queries
Lookup Queries drive dynamic rule data in CPQ. Revenue Cloud's decision matrices cover some cases but not arbitrary SOQL-backed lookups.
- mediumGenerates CPQ Quote Documents
CPQ's document generation stack (templates, sections, terms) is not carried over. Document automation built on these objects breaks.
- highTouches CPQ amendment/renewal objects
Amendment and renewal mechanics differ structurally in Revenue Cloud's asset-based lifecycle. Logic assuming CPQ subscription records will not translate directly.
- highUses the CPQ product configurator API
Bundle configuration moves to Product Configurator with a different object model. Option and attribute references do not map one-to-one.
- mediumSOQL against a CPQ object
Queries against SBQQ objects compile fine but return nothing once data lives in Revenue Cloud objects. This is the classic silent-breakage case.
Common questions
What people ask before they scan.
›What breaks when migrating from Salesforce CPQ to Revenue Cloud?
Price rules using custom (advanced) conditions, lookup-query-driven rules, formula price actions, slab discount schedules, and any Apex or Flow referencing the SBQQ namespace. Triggers on CPQ objects are the most dangerous case: they keep compiling but silently stop firing, so the failure shows up later as wrong prices on real quotes.
›Is Salesforce CPQ being discontinued?
Salesforce has moved new investment to Revenue Cloud, and existing CPQ customers face a migration. The configuration can be copied; the reasoning behind each rule usually cannot, which is where migrations overrun. Stock CPQ provides no description field on price rules or product rules at all, so rule intent is undocumented by construction rather than by neglect.
›How do I assess Revenue Cloud migration readiness?
Inventory every price rule, product rule and discount schedule, then find the code that depends on them. Score each for whether it can be moved mechanically or has to be rebuilt, and group the work so it can be staffed. Doing this by hand across a large org takes days; this tool does it automatically, read-only, in a few minutes.
›Does this write anything to my Salesforce org?
No. It requests two OAuth scopes, api and refresh_token, and the Salesforce client has exactly one HTTP verb — GET. There is no create, update or delete path anywhere in it. Raw metadata is discarded once your report is generated, and you can revoke access at any time from Setup → Connected Apps OAuth Usage.
›How long does a scan take?
A few minutes for most orgs. It runs in the background, so you can close the page and come back — the report will be waiting. Larger orgs with hundreds of rules and thousands of Apex classes take longer, and scans are capped per org so they cannot exhaust your daily Salesforce API allocation.
Find these in your own org
CPQ Compass connects read-only to Salesforce and reports which of these apply to you, with a migration complexity score. The summary is free.
Read-only. Two OAuth scopes (api, refresh_token), nothing written to your org.