-
1
Audit the quotes you already send
Before you build anything in the CRM, pull the last twenty quotes your team sent and lay them side by side. You will find three things, and all three matter. First, structural drift: some reps break out setup fees, others bury them in year-one subtotals, and a few forget them entirely. Second, naming inconsistency: the same SKU appears as four different product names depending on who typed the proposal. Third, discount sprawl: discounts show up as percentages, dollar amounts, free months, and sometimes as unlabeled line-item reductions that nobody can reconcile against the price book. Catalog every variation. Those variations are your real requirements, not the clean spec a finance partner might hand you in isolation. A template built from the clean spec breaks the moment a rep tries to replicate a deal they closed last quarter. A template built from the audit absorbs the messy reality while still enforcing structure. Share the audit findings with sales leadership and finance before you touch the CRM. You want everyone agreeing on what the template needs to handle before you start making trade-offs about what it will not.
- Pull twenty recent quotes spanning your three largest deal types and both ends of the deal-size range
- Catalog every unique line-item type, discount style, and term structure you find
- Flag the three variations that appear most often; those become required fields in the template
- Flag the two variations that appear once or twice; those become optional or handled off-template
- Share findings with finance and sales leadership and get written sign-off on scope before building
Tip: If you cannot find a quote that matches the template you are about to build, you are designing a theory, not a tool. Rebuild from a real deal.
-
2
Structure the product catalog as your source of truth
The product catalog is the backbone of every quote your team will ever send. Build it like infrastructure, not like a spreadsheet. Each product gets a stable SKU, a canonical name, a product family, a unit of measure, a list price, a floor price, and a default term length if applicable. The stable SKU is non-negotiable. If a rep can create a product on the fly during a quote, your catalog is a suggestion rather than a system, and finance will spend the next three quarters reconciling line items that do not match anything in the price book. Lock product creation to admins and route all new-product requests through a lightweight intake form. Yes, this will frustrate the first few reps who want to invent a line item mid-call. It will save you from the invoicing meltdown that follows uncontrolled catalog growth. Group products into families so you can apply pricing rules at the family level instead of maintaining per-SKU overrides for everything. Keep the family taxonomy flat. Two levels is usually enough: product family and product type. Three levels and reps spend five minutes clicking through hierarchies to find what they want. Four levels and they give up and type the price manually.
- Define a stable SKU convention and lock product creation to admins only
- Capture list price, floor price, unit of measure, and default term length on every SKU
- Group products into families and types; keep the hierarchy to two levels
- Document a new-product intake process so reps have a legitimate path when the catalog is missing something
- Flag discontinued SKUs as inactive instead of deleting; preserves historical quote integrity
Tip: The catalog is a product. Give it an owner, a changelog, and a quarterly review. Catalogs without owners rot inside six months.
-
3
Define price books for every motion and segment
One price book cannot serve a motion that sells to both SMB and enterprise, or that runs promotional pricing alongside standard pricing. Build one price book per combination of motion, segment, and currency. Each price book is a thin overlay on top of the catalog that specifies list price, floor price, and any segment-specific adjustments for the SKUs in scope. Keep the number of price books down to what you can actually maintain. Three to six is healthy for most mid-market software businesses. If you have fifteen, you have a maintenance problem disguised as flexibility, and reps will routinely attach the wrong price book to a deal because the names stopped meaning anything. Make the default price book obvious at quote creation and tie it to opportunity type or segment so reps are not making the choice by hand. The handful of exceptions where a different price book applies should require an explicit override with a logged reason. If overrides happen often, the default rule is wrong, not the override process.
-
4
Write the pricing rules that enforce margin
Pricing rules are the layer that keeps reps from quoting prices your business cannot support. There are three rules every quote template needs. First, floor-price enforcement: no line item below the per-SKU floor without an approval. Second, discount-tier logic: a discount of a certain percentage triggers a certain level of approval, and the system blocks submission until the approval is granted. Third, bundle protection: if a rep removes one SKU from a bundled offering, the price of the remaining SKUs reverts to standalone list, not the bundle discount. Each rule should be enforceable at the CRM level, not left to rep judgment or manager vigilance. Reps will discount to close deals. That is their job. Your job is to make sure the discount hits the right threshold and the right approver. Write the rules in plain language first and share with sales leadership for sign-off. Then translate them into CRM logic. A rule nobody can explain in a sentence will not survive its first edge case. Keep the rule set small. Four or five rules that always fire are worth more than fifteen rules that reps have learned to work around.
- Enforce per-SKU floor prices as hard blocks, not warnings
- Define discount tiers that map directly to named approver roles
- Protect bundle pricing by reverting to list when a bundle component is removed
- Flag any multi-year discount that compounds across years for review
- Document each rule in plain language in the admin wiki, with the business rationale, not just the config
Tip: If a rule produces more than one override per week on average, redesign the rule. Chronic overrides are a sign the rule does not match how deals actually close.
-
5
Design the approval chain to match your discount tiers
The approval chain is where the template proves it is a business system, not a document generator. Map discount percentages to approvers. A standard mid-market structure has rep-level authority up to a modest discount, manager approval through a middle band, director approval beyond that, and CFO or VP of sales for anything that threatens margin targets. Keep the number of tiers to three or four. Five tiers and the approval chain becomes a bottleneck that reps route around by asking for verbal approval and backfilling the record. Attach each tier to a named role in the CRM, not to specific individuals. People change jobs. Roles persist. For each tier, define a maximum response time, an escalation path if the approver is out, and an auto-approve fallback if the sales-ops team decides a window has elapsed and the deal needs to move. Approval chains that stall break deals. Approval chains that fire without record erode trust. The template needs both the discipline to enforce the chain and the pragmatism to keep deals moving when a human is on vacation.
- Map discount percentages to three or four approver tiers; avoid more
- Attach each tier to a role, not a named person
- Define escalation paths and response-time windows per tier
- Log every approval and rejection against the quote record so audit trails are intact
- Review the approval history every quarter to spot tiers that fire too often or rubber-stamp too often
-
6
Build the template document itself
With the catalog, price books, pricing rules, and approval chain in place, you can finally build the quote document. Keep the output clean. Cover page, executive summary, line-item table, totals block, terms section, signature block. Resist the urge to include a marketing pitch inside the quote. Buyers in the signature stage want to confirm numbers, not read copy they already read in the pre-sales deck. The line-item table is the heart of the document. Include SKU, product name, quantity, unit price, discount applied, extended price, and term. Hide SKU from the customer-facing render if your audit says buyers find it noisy, but keep it available for internal verification. The totals block should break out subtotal, discount applied, taxes if applicable, and the single number the customer will pay this period. Terms language comes from legal and should be a merge field driven by the deal type, not a text block reps edit per quote. If a rep is editing terms language, the template is wrong or the deal is non-standard, and non-standard deals route through legal, not through the template.
- Lock the document skeleton: cover, summary, line items, totals, terms, signature
- Pull terms language from a legal-approved library keyed by deal type, not from freeform fields
- Include SKU internally; render only customer-facing names in the final PDF
- Make the totals block the clearest element on the page; it is what the buyer will scan
- Design the document in both PDF and signable formats; test both before publishing to the team
Tip: Print the final template on paper and read it as a buyer would. Awkwardness that is invisible on screen stands out on the page.
-
7
Instrument the quote lifecycle with the right fields
Every quote the template produces should carry structured metadata that lets you report on it later. Fields the template should populate automatically or require at creation: deal type, price book used, total contract value, annualized contract value, discount applied in percent and dollars, term length, start date, approvers who signed off, and quote status. Status should move through a short, well-defined lifecycle: draft, in approval, approved, sent, signed, lost. Make transitions auditable. A quote that jumps from draft to sent without passing through approved is a red flag your rule enforcement is leaking. Store the generated PDF against the opportunity, versioned, so you can trace what was sent and when. Reps will revise quotes. Buyers will counter. The template should treat each revision as a new version, not a silent overwrite. Version history is the artifact that resolves the inevitable "but I thought we agreed on" conversation three months into the contract.
- Required at creation: deal type, price book, start date, term length
- Auto-populated: TCV, ACV, discount percent and dollars, line-item count
- Lifecycle fields: status, submitted-by, approvers, sent-at, signed-at
- Version every revision; link each version back to the opportunity
- Build a weekly report on quotes in approval over forty-eight hours; approval queues rot fast
-
8
Pilot with two reps before rolling out to the team
Do not launch the template to the full sales team on day one. Pick two reps who regularly deal with messy edge cases. Give them the template, a two-page quick-reference, and permission to break it. Watch them use it on three real deals each. You will find bugs in the pricing rules, naming conflicts in the catalog, and approval tiers that fire at the wrong thresholds. Fix those before anyone else sees the template. Launching to the whole team with hidden bugs trains reps to work around the system from day one, and that habit never fully fades even after the bugs are gone. After the pilot pass, invite the pilot reps to walk the rest of the team through the template in a live session. Peer-led onboarding beats admin-led onboarding every time because the pilot reps have already answered the questions the rest of the team is about to ask. Publish the quick-reference, the recorded walkthrough, and a short changelog of what differs from the old process.
Tip: If your pilot reps say the template is slower than freehand, listen. Speed loss in the first week is normal; speed loss by week three means the design has a real problem.
-
9
Review quote metrics quarterly and recalibrate
A quote system is a living artifact. Every quarter, pull the last ninety days of generated quotes and look at four numbers: average time from quote creation to send, average discount applied, percentage of quotes that triggered an approval, and win rate on quotes that triggered approvals above the middle tier. If time-to-send is climbing, the template has acquired friction, usually from a well-meaning field someone added that nobody fills in cleanly. If average discount is drifting up, your pricing floors need revisiting or your enablement needs refreshing. If approval triggers are firing on more than roughly a third of quotes, your tiers are too tight and you are creating queue pressure for no gain. If win rate on heavily discounted quotes is not meaningfully higher than win rate on standard quotes, your discount strategy is not buying you anything and the margin is leaking without a return. Share findings with sales leadership and finance before changing anything. Changes to a quote template ripple into every open deal that references the current configuration, so time changes to the start of a quarter whenever possible.
- Pull all quotes from the last ninety days segmented by deal type and price book
- Measure time-to-send, discount applied, approval rate, and discounted-deal win rate
- Flag any metric that drifted more than ten percent quarter over quarter
- Review flags with sales leadership and finance; agree on changes before touching production
- Schedule any template changes for the start of a quarter to avoid mid-quarter chaos