1. [Home](/)
2. [Guides](/guides)
3. How to Fill Out an RFP Pricing Spreadsheet Without Errors

GuidesOctober 7, 2026

# How to Fill Out an RFP Pricing Spreadsheet Without Errors

Buyer-locked pricing workbooks, unit vs lump-sum vs tiered pricing, rounding and hidden-row traps, and a pre-submission QA checklist with specific checks.

## The short answer

To fill out an RFP pricing spreadsheet without errors, never price inside the buyer’s file. Build the price in your own model, then copy values into only the cells the buyer left editable. Match the pricing model the buyer asks for (unit, lump sum or tiered), round derived rates so stored values equal displayed ones (Excel keeps 15 digits), log every assumption on its own tab, reconcile totals against the narrative, and run a QA checklist covering hidden rows, protection and file format.

## Key takeaways

- **The workbook is a form, not your model:** Keep your cost build, margins and scenarios in an internal file. The buyer’s template only receives final values.
- **Locked means locked:** Evaluators often merge bidders’ sheets into one comparison. An inserted column or rewritten formula can break that, or get your sheet set aside.
- **Displayed isn’t stored:** Excel calculates to [15 digits of precision](https://learn.microsoft.com/en-us/troubleshoot/microsoft-365-apps/excel/floating-point-arithmetic-inaccurate-result) whatever the format shows. Round derived unit prices in the cell.
- **Assumptions belong on a tab:** A price without its quantities, currency, tax treatment and validity date is a number the buyer can read three ways.
- **Reconcile three ways:** Independent line sum, workbook total and every total quoted in the narrative must agree before anything is uploaded.
- **The catch:** No checklist fixes a wrong pricing strategy. This guide gets the arithmetic and the file right; what you charge is a separate, human decision.

## Inventory the workbook before you type a number

Buyer pricing workbooks range from a single tab to a dozen linked sheets with protected formulas. Spend 30 minutes mapping it before anyone enters a price. Open a copy, never the original download, and write down:

- **Every tab and its job:** instructions, price schedule, rate card, volume tiers, optional items, assumptions, certification or signature page.
- **Which cells are input cells:** usually shaded and left editable. On a protected sheet, Microsoft’s [Protect a worksheet](https://support.microsoft.com/en-us/office/protect-a-worksheet-3179efdb-1285-4d49-a9c3-f4ca36276de6) page notes that “by default, the entire sheet is locked and protected,” so the buyer has to open specific ranges for you to type in. If a cell you need is locked, that’s a question for the buyer, not a password problem.
- **Hidden rows, columns and sheets:** Unhide everything in your working copy so you can see what the formulas reference.
- **Formulas you’ll feed:** Trace which totals depend on your input cells, and whether the buyer’s totals include optional items.
- **Data validation lists:** Dropdowns for units, currencies or “Included / Not included” constrain what you can enter. Use the exact values.
- **Instructions that conflict:** The narrative RFP says prices exclude tax; the workbook header says “inclusive.” Log it and ask during the [clarification window](/guides/rfp-clarification-questions).

The same Microsoft page adds a caveat worth remembering: “Worksheet level protection isn’t intended as a security feature.” Protection stops accidental edits, not determined ones. Don’t treat a buyer’s locked sheet as a place to hide anything, and don’t assume your own protection keeps internal numbers private.

## Respect the buyer-locked template

When a buyer locks a template, they usually plan to drop every bidder’s sheet into a single comparison model. That’s why changes that look harmless cause trouble. Avoid:

- Unprotecting a sheet, even if the password is guessable or blank.
- Inserting rows or columns inside a priced range.
- Overwriting a buyer formula with a hard-coded value.
- Merging cells, renaming tabs or changing number formats in input ranges.
- Typing text such as TBD or a “see note” remark into a numeric cell.

If your offer doesn’t fit the grid (a line item the buyer didn’t foresee, a discount that depends on volume), don’t force it. Enter the closest compliant value, explain the rest on the assumptions tab, and ask a clarification question if it moves the total. If the buyer provides an “additional costs” or “optional items” section, use that and nothing else.

## Unit, lump-sum and tiered pricing

The buyer chooses the pricing structure, and each structure fails in its own way.

| Structure                                        | What the buyer sees                       | What goes wrong                                                        | Check                                                                      |
| ------------------------------------------------ | ----------------------------------------- | ---------------------------------------------------------------------- | -------------------------------------------------------------------------- |
| Unit price (per user, per hour, per transaction) | Rate times the buyer’s estimated quantity | Your rate assumes a volume the buyer never promised                    | Price at the buyer’s stated quantity; note minimums on the assumptions tab |
| Lump sum (fixed price per deliverable or phase)  | One number per line                       | Scope creep with no change mechanism; costs missed in the build        | List what the lump sum includes and excludes                               |
| Tiered or volume bands                           | A rate per band                           | Band edges overlap or leave a gap (does user 501 fall in band 2 or 3?) | Test the exact boundary values                                             |
| Rate card plus estimate                          | Hourly rates and an estimated total       | Estimate and rates drift apart after edits                             | Recompute the estimate from the rate card at the end                       |
| Option years or periods                          | Base plus options                         | Escalation applied twice or not at all                                 | Recompute every year from base rates and the stated escalation             |

For multi-year and option pricing in US federal bids, keep line items in proportion to their real costs. [FAR 15.404-1(g)](https://www.acquisition.gov/far/15.404-1) defines unbalanced pricing as an acceptable total in which one or more line items are “significantly over or understated,” and names separately priced base and option quantities among the highest-risk cases. Front-loading the base year to fund a cheap option period is exactly what that paragraph is written to catch.

## Rounding and hidden-formula traps

Most spreadsheet errors in pricing aren’t typos. They’re arithmetic the evaluator can’t reproduce.

**Stored versus displayed values.** Microsoft’s [floating-point article](https://learn.microsoft.com/en-us/troubleshoot/microsoft-365-apps/excel/floating-point-arithmetic-inaccurate-result) explains that Excel stores numbers “within 15 digits of precision,” and the cell format controls only what you see. A derived rate shown as $147.49 might be $147.4875 underneath. The evaluator retypes $147.49, multiplies it by the hours and gets a different total from yours.

The fix is the ROUND function at the point where the rate is derived, for example `=ROUND(base_rate*(1+escalation),2)`. That makes the stored value match the displayed one. Microsoft also describes a workbook-wide **Precision as displayed** option, with a warning: once enabled, accuracy beyond the displayed decimals is lost when you save, and “You can’t undo this option and recover the lost data.” Don’t turn it on in a buyer’s template.

**Round per line, then sum.** If the buyer’s instructions say unit prices to two decimals, round each extended line, then total the rounded lines. Rounding only the grand total leaves line items that don’t add up to it.

**SUM ranges that miss rows.** A row inserted below the last line of a `SUM(E5:E8)` range isn’t included. Check every total’s range after the final edit.

**Hidden rows.** Hidden rows still calculate. A row hidden in the template with a leftover value inflates a total nobody can see. Microsoft’s [Document Inspector](https://support.microsoft.com/en-us/office/remove-hidden-data-and-personal-information-by-inspecting-documents-presentations-or-workbooks-356b7b5d-77af-44fe-a07f-9aa4d085966f) has modules for hidden rows and columns, hidden worksheets, comments and invisible content, and it warns that removing hidden rows, columns or worksheets that contain data “might change the results of the calculations or formulas in your workbook.” Inspect, then decide row by row.

**External links.** If you pasted formulas from your internal model, the buyer’s file may now point at a file on your network. Paste values only.

## Currency and tax

Write these down before pricing, and repeat them on the assumptions tab:

- **Currency:** the one the RFP specifies. If it allows multiple, state which you used and don’t mix currencies within one total.
- **Exchange rate:** if your costs are in another currency, the rate, the source and the date you used, plus whether you’ll hold it for the validity period.
- **Tax:** inclusive or exclusive, per the instructions, and which taxes. If the RFP is silent, ask; if unanswered, state exclusive and say so prominently.
- **Travel and expenses:** included in the rates, billed at cost, or capped.

## The assumptions and exclusions tab

If the buyer’s workbook has an assumptions tab, use it. If not, and the instructions allow attachments, add a separate document rather than a new tab in a locked file. One row per assumption:

| Column      | Example                                                         |
| ----------- | --------------------------------------------------------------- |
| id          | A-07                                                            |
| price\_line | Line 3, Training                                                |
| assumption  | Sessions are delivered remotely, up to 12 attendees each        |
| type        | QUANTITY, SCOPE, CURRENCY, TAX, VALIDITY, DEPENDENCY, EXCLUSION |
| if\_wrong   | Each on-site session adds travel at cost                        |
| rfp\_ref    | Section 5.4; Q&A item 11                                        |

Keep it consistent with the narrative’s assumptions section. Two lists that disagree are worse than one short one.

## Worked example: A reconciliation that catches an error

Say you’re pricing year 1 of an illustrative software and services bid. The price schedule has five lines, the last one inserted late after a scope call.

| Line | Item                          | Quantity x unit     | Extended |
| ---- | ----------------------------- | ------------------- | -------- |
| 1    | Platform subscription         | 250 users x $480    | $120,000 |
| 2    | Implementation (lump sum)     | 1 x $45,000         | $45,000  |
| 3    | Training                      | 6 sessions x $1,500 | $9,000   |
| 4    | Premium support               | 12 months x $1,250  | $15,000  |
| 5    | Data migration (inserted row) | 1 x $18,000         | $18,000  |

The independent sum of lines 1 to 5 is $207,000\. Then the reconciliation:

| Check                   | Source A                           | Source B                     | Result                                                      |
| ----------------------- | ---------------------------------- | ---------------------------- | ----------------------------------------------------------- |
| Year 1 total            | Workbook total cell: $189,000      | Independent sum: $207,000    | Fail: the SUM range stops at line 4 and misses line 5       |
| Executive summary total | Narrative: $207,000                | Corrected workbook: $207,000 | Pass after the range fix                                    |
| User count              | Narrative: “up to 250 named users” | Line 1: 250                  | Pass                                                        |
| Training                | Narrative: “four on-site sessions” | Line 3: 6 remote sessions    | Fail: narrative copied from an older bid                    |
| Services rate, year 2   | Displayed: $147.49                 | Stored: $147.4875            | Fail: 1,600 hours gives $235,980 stored vs $235,984 retyped |

Three fixes follow. Extend the SUM range to include line 5 ($207,000 minus $189,000 is the $18,000 that went missing). Rewrite the training paragraph to match the workbook, because the priced scope is what you’ll be held to. And change the year 2 rate cell to `=ROUND(142.5*1.035,2)` so the stored and displayed values are both $147.49 and the total becomes $235,984.

The $4 rounding gap looks trivial. The $18,000 gap isn’t. Without the independent sum, the bid would have gone out with a schedule total $18,000 lower than the executive summary, and an evaluator would have had to guess which one you meant.

## Pre-submission QA checklist

Run it on the final file, after the last edit, by someone who didn’t build the price.

1. **Line math:** For every line, quantity times unit equals extended, recalculated outside the workbook.
2. **Totals:** Every subtotal and grand total range covers all rows; the independent sum matches.
3. **Narrative match:** Every price, quantity and service level quoted in the proposal matches the workbook. Search the narrative for each figure.
4. **Assumptions match:** The assumptions tab and the narrative’s assumptions section say the same things.
5. **Empty cells:** No blank input cells. Enter 0 or “Included” exactly as the instructions specify.
6. **Errors:** Search for `#REF!`, `#DIV/0!`, `#N/A` and `#VALUE!` on every tab.
7. **Hidden content:** Run the Document Inspector; account for every hidden row, column and sheet; remove internal comments and personal information.
8. **Protection intact:** Every sheet the buyer protected is still protected, and no rows or columns were inserted in locked ranges.
9. **External links:** None. The file doesn’t reference your internal model.
10. **Rounding:** Derived rates are rounded in the cell; displayed equals stored.
11. **Currency and tax:** One currency per total, tax treatment matches the instructions.
12. **File format:** Saved in the format the portal accepts (for example `.xlsx` versus `.xls`, or a PDF copy as well if requested), under the buyer’s file-naming rule and size limit.
13. **Clean open:** Open the saved file fresh, ideally on another machine or in a browser version of Excel, and confirm totals, formatting and dropdowns survive.
14. **Sign-off:** The pricing owner initials the final version number in the bid log. The [version control guide](/guides/rfp-version-control) covers the naming.

Build two hours for this into the plan. Pricing QA left to the last evening is how the wrong version gets uploaded, which is the classic [deadline bottleneck](/guides/rfp-deadline-bottlenecks).

## A US federal note on certified cost or pricing data

On larger US federal negotiated contracts, the pricing spreadsheet may be only part of what’s required. Under [FAR 15.403-4](https://www.acquisition.gov/far/15.403-4) (FAC 2026-01, effective March 13, 2026), “the threshold for obtaining certified cost or pricing data is $950,000 for prime contracts awarded before July 1, 2018, and $2.5 million for prime contracts awarded on or after July 1, 2018,” unless an exception applies. Above that line, expect a far more detailed cost build than a price schedule, plus a Certificate of Current Cost or Pricing Data.

Under the FAR overhaul (RFO), the [Part 15 model deviation](https://www.acquisition.gov/far-overhaul/far-part-deviation-guide/far-overhaul-part-15) issued September 30, 2025 moves this rule to 15.403-3 and applies it when an action meets or exceeds the same $2.5 million threshold. Check which version your solicitation cites. The [government RFP guide](/guides/how-to-respond-to-a-government-rfp) covers the wider process.

## Where software helps (and where it doesn’t)

Response software helps with the file. It doesn’t help with the price.

The useful job is fidelity: taking the buyer’s workbook in and putting answers back into the same file, with formulas and formatting intact. [Tenderbolt](/tenderbolt) autofills Excel questionnaires in the original format and lists RFQ pricing-schedule matching. [AutoRFP.ai](/autorfp-ai) imports Excel, Word, PDF and portals and exports back into the original file with macros, formulas and templates intact. [RFP Response Builder](/rfp-response-builder) lives inside Word and Excel, which suits Office-first teams. Test complex files in a trial: G2 reviewers in June and August 2026 report that [Inventive AI](/inventive-ai) exports of complex templates or multi-tab Excel files needed a manual formatting pass.

Those tools fill text cells from approved content. The numbers in a pricing schedule should come from your own model, owned by finance or a deal desk. Adjacent quoting tools help there: [XAIT](/xait) pairs XaitCPQ with proposal authoring so quotes and narrative stay in sync, and [QuoteWerks](/quotewerks) provides controlled pricing and approvals with an audit trail, though it can’t import or answer an incoming RFP. The [CPQ tag](/tags/cpq) lists the rest.

If your RFPs come with a single-tab price schedule and a handful of lines, skip the tooling. A copy of the template, an internal model, and the 14-point checklist above will catch nearly every error that matters. Add software when multi-tab workbooks and repeated questionnaires are eating days, and keep the pricing decision with the people who own the margin.

## Sources

- [Floating-point arithmetic may give inaccurate result in Excel](https://learn.microsoft.com/en-us/troubleshoot/microsoft-365-apps/excel/floating-point-arithmetic-inaccurate-result), Microsoft Learn, updated March 30, 2026, accessed October 2026
- [Remove hidden data and personal information by inspecting documents, presentations, or workbooks](https://support.microsoft.com/en-us/office/remove-hidden-data-and-personal-information-by-inspecting-documents-presentations-or-workbooks-356b7b5d-77af-44fe-a07f-9aa4d085966f), Microsoft Support, accessed October 2026
- [Protect a worksheet](https://support.microsoft.com/en-us/office/protect-a-worksheet-3179efdb-1285-4d49-a9c3-f4ca36276de6), Microsoft Support, accessed October 2026
- [15.403-4 Requiring certified cost or pricing data](https://www.acquisition.gov/far/15.403-4), Federal Acquisition Regulation (FAC 2026-01, effective March 13, 2026), acquisition.gov, accessed October 2026
- [15.404-1 Proposal analysis techniques](https://www.acquisition.gov/far/15.404-1), Federal Acquisition Regulation (FAC 2026-01), acquisition.gov, accessed October 2026
- [FAR Overhaul: Part 15](https://www.acquisition.gov/far-overhaul/far-part-deviation-guide/far-overhaul-part-15), RFO model deviation text (issued September 30, 2025), acquisition.gov, accessed October 2026

Table of Contents

- [The short answer](#the-short-answer)
- [Key takeaways](#key-takeaways)
- [Inventory the workbook before you type a number](#inventory-the-workbook-before-you-type-a-number)
- [Respect the buyer-locked template](#respect-the-buyer-locked-template)
- [Unit, lump-sum and tiered pricing](#unit-lump-sum-and-tiered-pricing)
- [Rounding and hidden-formula traps](#rounding-and-hidden-formula-traps)
- [Currency and tax](#currency-and-tax)
- [The assumptions and exclusions tab](#the-assumptions-and-exclusions-tab)
- [Worked example: A reconciliation that catches an error](#worked-example-a-reconciliation-that-catches-an-error)
- [Pre-submission QA checklist](#pre-submission-qa-checklist)
- [A US federal note on certified cost or pricing data](#a-us-federal-note-on-certified-cost-or-pricing-data)
- [Where software helps (and where it doesn’t)](#where-software-helps-and-where-it-doesnt)
- [Sources](#sources)

[Summarize with ChatGPT](https://chatgpt.com/?q=Summarize%20this%20article%3A%20https%3A%2F%2Frfp-software-tools.com%2Fguides%2Frfp-pricing-spreadsheet)[Summarize with Claude](https://claude.ai/new?q=Summarize%20this%20article%3A%20https%3A%2F%2Frfp-software-tools.com%2Fguides%2Frfp-pricing-spreadsheet)[Summarize with Perplexity](https://www.perplexity.ai/?q=Summarize%20this%20article%3A%20https%3A%2F%2Frfp-software-tools.com%2Fguides%2Frfp-pricing-spreadsheet)

Share this article

## Related articles

[**RFP Compliance Matrix: How to Follow Every Buyer Instruction**How to build an RFP compliance matrix: shred every shall and must, track formatting and submission rules, and run a final compliance pass before you submit.RFP Software Tools · October 7, 2026](/guides/rfp-compliance-matrix)[**Human-in-the-Loop Review for AI-Drafted RFP Answers**How to review AI-drafted RFP and security questionnaire answers: risk tiers, who signs off, sampling rules, a reviewer checklist and a routing example.RFP Software Tools · October 7, 2026](/guides/human-in-the-loop-review-ai-rfp-answers)[**RFP Version Control: Managing Drafts Without Losing Edits**How to run version control on an RFP response: one source of truth, naming rules, section locks, freeze points, a version log and how to recover a lost edit.RFP Software Tools · October 7, 2026](/guides/rfp-version-control)[**BAFO (Best and Final Offer): How to Prepare One**What a BAFO is, how US federal final proposal revisions replaced the term, and how to trade price against scope without breaching your floor or compliance.RFP Software Tools · October 7, 2026](/guides/bafo-best-and-final-offer)
