Cost Estimates and Selection Checklists
How to compare ERP quotes: an RFP template and normalisation method
Ask ERP vendors and partners for quotes in one format, then normalise users, modules, currency, renewal terms and missing lines to compare offers fairly in Canada.
ERP quotes become comparable only when you dictate the format: the same users by type, the same modules, the same volumes, the same five years, in the same currency, with implementation broken into the same phases. When quotes arrive in different shapes, normalise them in a spreadsheet before you look at totals: fill missing lines with your own estimate, convert USD, apply each offer's renewal terms, and add a risk allowance for open-ended items. The lowest headline number is often the quote that left the most out.
This guide is part of the ERP selection checklist. Figures are illustrative.
What to send vendors: a short request for quote
You do not need a 100-page RFP. A clear 5-to-10-page document usually gets better answers:
- Company profile: industry, locations (including any in Quebec), entities, revenue band, number of staff.
- Scope: the processes the system must run, with volumes (orders, invoices, items, purchase orders per month).
- Users by role: full, light, device and external users, now and in three years.
- Integrations: payroll provider, banks, e-commerce, EDI partners, shipping, CRM.
- Canadian requirements: GST/HST and QST, CAD and USD transactions, French-language needs, data hosting preferences, accessibility needs.
- Data migration: source systems, years of history wanted, known data-quality issues.
- Timeline and constraints: desired go-live, busy seasons to avoid, year-end date.
- Pricing template (below), to be returned completed.
- Contract questions: renewal cap, notice period, SLA, data export, exit assistance.
The pricing template
| Line | Year 1 | Year 2 | Year 3 | Year 4 | Year 5 | Currency | Notes / assumptions |
|---|---|---|---|---|---|---|---|
| Full users (number × price) | |||||||
| Light/approval users | |||||||
| Device or self-service users | |||||||
| Modules not in base | |||||||
| Environments, storage, entities | |||||||
| Support plan | |||||||
| Implementation by phase | – | – | – | – | Fixed or T&M? Rate? | ||
| Data migration | – | – | – | – | Number of test loads | ||
| Integrations (each) | Build and yearly connector | ||||||
| Training | |||||||
| Post-go-live support | |||||||
| Renewal uplift assumption | Cap? |
Ask vendors to state explicitly what is not included.
Normalising what comes back
1. Same scope. If Vendor B did not quote an inventory add-on that Vendor A included, ask B for the price, or estimate it and mark it as an estimate.
2. Same currency. Convert USD at one agreed rate for all offers and add the same buffer; see USD contracts and FX risk.
3. Same renewal logic. Apply each contract's actual cap. If a vendor will not cap, apply a cautious assumption and note it; see renewal price increases.
4. Same implementation basis. Map partner estimates onto the same phases. For time-and-materials quotes, add a risk allowance; for fixed-fee quotes, check what the change-request rate would be for the gaps you already know about.
5. Same internal effort. If one partner assumes your team does the data cleaning and another does it for you, add your internal hours to the first.
Worked example (illustrative)
| Normalised five-year line (CAD) | Vendor A | Vendor B | Vendor C |
|---|---|---|---|
| Subscription as quoted | 150,000 | 120,000 (USD converted) | 165,000 |
| Missing module added | – | 18,000 (estimate) | – |
| Renewal uplift applied | 9,000 (3% cap) | 16,000 (no cap, 6% assumed) | 0 (price fixed 5 years) |
| FX buffer (5% on USD lines) | – | 6,900 | – |
| Implementation | 70,000 fixed | 55,000 T&M | 85,000 fixed |
| Risk allowance on T&M (20%) | – | 11,000 | – |
| Internal effort difference | – | 12,000 | – |
| Normalised total | 229,000 | 238,900 | 250,000 |
Vendor B looked cheapest on the headline subscription, but after normalisation it sits between A and C. Vendor C is the most expensive yet carries the least risk: a fixed price for five years and a fixed implementation fee. The decision now becomes a trade-off between about $21,000 and certainty, which is a far better conversation than comparing headline prices. FX buffer here: 5% × (120,000 + 18,000) = $6,900.
Red flags in quotes
- A per-user price with no description of what each user type can do.
- "Implementation: estimate to follow after discovery" with no range.
- Discounts that apply to year one only.
- A data-migration line with no mention of test loads or reconciliation.
- Support described only as "standard".
- No answer to the data-export question.
- Pressure to sign by a quarter-end date in exchange for a discount; it may be genuine, but do not skip steps for it.
Asking for best and final offers
Once quotes are normalised, share with each finalist the specific lines where it is weaker (without disclosing competitors' figures if you have agreed confidentiality) and ask for a revised offer. Common concessions include a renewal cap, extra sandboxes, training days, a longer price-protection period or a milestone holdback on implementation.
FAQ
How many vendors should receive the request?
Three or four is manageable for most SMBs. More makes normalisation and demos time-consuming.
Should I show vendors my budget?
Sharing a range can save time with vendors that are far outside it. Some buyers prefer to hold it back until the shortlist.
Can I compare a SaaS quote with an on-premise quote?
Yes, if you add infrastructure, IT time and upgrades to the on-premise side. See cloud vs on-premise ERP costs.
Do I need a lawyer for an RFQ?
Not for the request itself. You may want legal review of the contract terms you will negotiate later.
Sources
- Competition Bureau Canada — pricing representations and bundled offers
- Bank of Canada — exchange rates for normalising USD quotes
- Canada Revenue Agency — sales tax treatment of software and services