Hey everyone! 👋 I've noticed a lot of us sharing bits and pieces of quotes in different threads, which is super helpful. But to make this subforum even more powerful, I think we should standardize how we share. A good template helps us compare apples to apples and makes sure we don't accidentally share something sensitive.
Here's a draft template I use when I anonymize my own quotes. Feel free to suggest improvements!
**Tool/Service:** (e.g., CRM Platform, Marketing Automation Suite)
**Reported Pricing Tier:** (e.g., Pro, Enterprise, "Scale" – use their public names if possible)
**Core Modules/Add-ons Included:** (This is crucial! e.g., "Included: 10k contacts, email marketing, lead scoring. Add-ons: Salesforce sync, advanced analytics")
**Contract Term:** (e.g., 1 year, month-to-month)
**Negotiated Annual List Price:** (The price before any discounts. Use $X,XXX format)
**Final Annual Price:** (What you actually pay)
**Notable Discount/Reason:** (e.g., "30% discount for annual commitment," "Competitive switch from HubSpot")
**Number of Seats/Licenses:** (e.g., 5 user seats)
**Key Usage Limits:** (e.g., 50k marketing emails/month, 10M API calls)
**Implementation/Credit Mentioned:** (e.g., "$5k implementation credit included," "Onboarding waived")
A couple of quick tips from my own experience:
* **Always** double-check for any company names, rep names, or unique contract IDs before posting.
* If the quote includes custom work, just note the category (e.g., "custom API integration").
* Mentioning your company's rough size (e.g., "200-person SaaS company") can provide great context without doxxing anyone.
What do you all think? Would you add or remove any fields? Let's build the ultimate template together!
Cheers
Keep it simple.
This is a great start, and I hate it. Not the idea, the idea is sound. I hate that we need it. The fact that pricing for these tools is so opaque and requires this much forensic accounting just to have a community compare notes is a testament to how broken enterprise SaaS sales is. Your template will help, but it's treating the symptom.
One critical field I'd add: **"Commitment/Consumption Model."** This is where they get you. Is that "10M API calls" a hard limit, a soft limit you can burst, or a pool you prepay with true-ups? Is it per seat, or a platform fee with seat add-ons? The difference between a flat platform fee and a per-user fee on top of a platform fee can double your actual cost at scale. That's the real juice.
Also, we should mandate people put "month-to-month" in the **Contract Term** field if that's truly the case, not just "1 year." I've seen "month-to-month" quotes that secretly require a 12-month commitment to get the published price. Call out the lie.
keep it simple
I agree with adding a "Commitment/Consumption Model" field, as user216 suggested. That's the core of the financial engineering in these contracts.
To build on that, the template should also force a clear separation between the pre-negotiated unit price and the final blended rate. For example, under **"Negotiated Annual List Price"**, someone might list "$50/user/month for 100 users". But if the **"Final Annual Price"** is just a bulk sum like "$45,000", we lose the ability to calculate the effective per-unit cost, which is essential for scaling projections. I'd propose splitting that into two distinct fields: "List Unit Price & Model" and "Effective Unit Cost After Discounts".
We also need a mandatory field for **"Price Escalation Clause"**. Is the annual increase capped at 3%, tied to CPI, or is it at the vendor's discretion? That's a major component of the TCO over a 3-year term.
Spreadsheets or it didn't happen.
You're right about the commitment model, but we're still missing the worst part. That "platform fee with seat add-ons" you mentioned is almost never a true platform fee. It's a minimum commitment disguised as a fee. You pay for ten seats to get the "platform," then your actual user count over ten is extra. So your effective per-user cost plummets if you only need five users, because you're paying for ten anyway.
Mandating "month-to-month" is good, but it's meaningless without the penalty. The real field should be "Early Termination Cost." Is it the remaining monthly minimum? A fee? Nothing? That's what defines the actual commitment, not the term length on the page.
All this template does is show us how many different ways they've found to hide the actual cost.
Show me the data
Love the template idea. It's a great foundation for cleaning up the data we share.
I'd add one more critical field for our line of work: **Data Residency/Geo-Location Commitments**. A quote for a cloud service often hides where the data actually lives. A "global" tier might mean US-East only, while the "enterprise" tier gets you an EU region. That can be a deal-breaker for compliance and a massive hidden cost if you have to upgrade a tier just to pick a region.
So maybe:
**Data Residency:** (e.g., "Data stored in US-East only," "Optional EU region at +20%," "Compliance with regional requirements included")
It turns a pricing comparison into a security/compliance one too.
security by default
Great start on the template! The "Notable Discount/Reason" field is smart. Could we maybe add an example for that slot, like "50% discount for non-profit" or "free onboarding as part of annual deal"? It might help folks remember what to look for.
Also, the "Key Usage Limits" part is making me think: what happens if you hit that limit? Is it a hard stop, or do you just get billed more? That's a huge difference.
Agreed on both points, especially the escalation clause. Most people miss that it's often "the greater of 5% or CPI" which is never in your favor.
For the unit cost split, you need to force the math. If someone posts a blended rate, require the breakdown:
List: $50/user/month, 100 user minimum
Effective: $45,000 annual / 100 users / 12 months = $37.50/user/month
Without the calculation, the field is useless. The template should mandate that format.
slow pipelines make me cranky
Missing the whole point. "Negotiated Annual List Price" and "Final Annual Price" are useless without the unit economics.
You need the unit price, the minimum commitment, and the overage rate. If your "Final Annual Price" is $45k, I can't tell if that's for 50 users or 500. Force the poster to do the math: list the per-seat or per-GB cost, then show the effective rate after discounts and minimums.
Otherwise you're just sharing noise.
show me the bill
You're right about the unit economics being the core of the analysis, but demanding a single calculation can be misleading. The effective blended rate you propose only works for simple, linear pricing.
The more critical need is to expose the non-linear pricing tiers and step functions. For example, a platform might charge $10,000 for a "platform fee" covering 0-20 users, then $500/user for users 21-100, then $300/user after that. The effective per-user cost is entirely dependent on your exact count. A poster with 25 users and a poster with 95 users would have wildly different effective rates even with the same unit prices.
Therefore, the template must capture the *pricing schedule*, not just a final blended number. We need the brackets: the minimum commitment, the price per unit within that commitment, and the overage rate for the next bracket. That's the only way to model scaling accurately.
Data is the new oil – but only if refined
Forcing the calculation is the right instinct, but mandating a single blended rate creates a false precision. The real issue is that "100 user minimum" is just the first pricing bracket. What's the cost for user 101? That's where the effective rate falls apart.
You also have to consider what's included in that "user." Is it a named user with full functionality, or a "viewer" seat that's 80% cheaper? The template needs to capture the unit definition alongside the math, otherwise we're just comparing fictional numbers.
Trust but verify
That's a solid starting point. I've been trying to compare quotes for a simple CRM and it's a mess, so this would be a huge help.
Just to check, in the **Core Modules/Add-ons Included** part, should we mention stuff they always try to upsell separately? I've seen things like "single sign-on" listed as an add-on on some quotes but not others.
Adding a "Core Modules/Add-ons Included" field is the right approach, but we need to be stricter about what goes there to avoid the ambiguity you mentioned. The field should be for what is contractually included in the quoted price, period.
For your CRM example, if single sign-on is listed as a line item with a separate cost on the official quote, it's an add-on. If it's just a sales rep mentioning it as a future upsell, it doesn't belong in this template. The goal is to reflect the document, not the sales pitch.
We should also split it into two sub-fields to force clarity: **Included Modules** and **Priced Add-ons**, each listing the items and their associated quotas or limits. This stops the common trick of bundling a core feature as an "add-on" in one quote but including it in another.
CPU cycles matter
You're absolutely right about the unit definition. A "user" can mean five different things. I've seen quotes where a "marketing user" costs 3x a "sales user" on the same platform, and they just list a total user count.
For the pricing schedule, maybe we need a small grid in the template? Something like:
Bracket 1: 1-25 users @ $X/user
Bracket 2: 26-100 users @ $Y/user
Overage beyond 100: $Z/user
That forces the reveal of the step function and the overage cost, which is the real killer.
spreadsheet ninja
Missing the most critical field. Where's the overage pricing?
Your template shows the limits but not what happens when you hit them. If I see "50k marketing emails/month", I need to know if the next email costs $0.001 or triggers a $500 overage fee. That's the real cost driver.
Add "Overage Rate:" as a required field right after each limit. No exceptions.
show me the bill
You're right, the overage rate is the hidden variable that makes or breaks a budget. But requiring it *right after each limit* in a template creates a practical problem when a quote has twenty different quotas - it becomes unwieldy fast.
A better middle ground might be a dedicated "Overage Pricing" section that mandates listing the top 3-5 most likely overage scenarios for that tool. For a marketing platform, that's emails, contacts, and maybe API calls. For cloud storage, it's egress and requests. This focuses on the high-impact items without drowning the template in minutiae for every single line item.
buyer beware, but buy smart