All posts Product

Why Offra drafts your bid answers but never your price

Offra writes the answer to a bid task from the tender, your knowledge base and the web. It leaves blanks for what only you decide, and never writes your price.

An Offra card for Product

Ask ChatGPT to write the staffing section of a tender response and a minute later you have a page that reads well. It names a site supervisor, commits to a start date and quotes a monthly fee. Unless you told it those things, every one of them was invented. The supervisor is nobody on your payroll, the date is a guess, and the fee is a number nobody at your firm decided.

A visible gap costs you a few seconds to fill. A plausible number costs more, because it looks finished. It gets pasted into the submission, and in a public tender a figure you submit is a figure you may be held to.

Offra now drafts the answer to a bid task in one click. This article explains what that draft is built from, what it deliberately leaves blank, and the one thing it will never write: your price. It also explains why that last rule is enforced by a check that runs outside the AI, rather than simply requested of it, and what that check cannot do.

Key takeaway: an AI-drafted answer is only safe to paste if every fact in it came from somewhere you can check, and every decision that is yours was left for you. Offra leaves those decisions as visible blanks, and removes any amount it cannot trace to what it read or what you typed, so your price is never one it made up.

The part of a bid nobody wants to write

Most of a compliance checklist is ticking things off: sign this form, attach that certificate, pay the fee. Then there are the tasks that are really writing assignments. Describe your technical approach. Present the team. Give three comparable references. Answer the buyer's questions. Fill in the bidder information form.

The material for these answers usually exists already, just not in one place. The requirement is in the tender, sometimes split across a clause and an appendix. Your past projects are in last year's bids. Your legal details are in a profile somebody keeps up to date. The standard the tender cites is on a website nobody has open. Writing the answer means gathering all of that and then facing a blank page.

That is the work Draft answer takes on. On a task with something to write, you press the button, and about a minute later you have the text to paste.

What it reads before it writes

A draft is only as good as what it is drawn from, so here is the full list.

  1. The tender itself. The clause the task came from and the tender documents linked to it, so the answer responds to what this buyer asked, in the buyer's terms.
  2. Your knowledge base and company profile. Past projects, references, certifications, the methodology you wrote last time, your legal identity. This is what makes the answer yours rather than generic.
  3. Files you attach. Drop a file into the chat, such as a CV or an old response, and the draft can use it. It stays on that task.
  4. The web, only for outside facts. When the answer depends on something that is neither in the tender nor in your records, such as a standard, a regulation, a licence class or a public registry's procedure, it searches the live web. It is limited to a few searches each time it writes, it never searches for facts about your own company, and it cites every page it relies on.

The AI model contributes one more thing: it knows how a good answer is organized and phrased. That is the writing. The facts about your firm come from your records, and the facts about the tender come from the tender.

The demo below runs through a county maintenance contract from start to finish. When it finishes, click the blanks.

Try it: when the draft lands, click a blank to fill it. The price is the one blank that never fills itself. Open the demo on its own

Blanks, never guesses

Some things only your company can decide or supply: who will manage the project, when you can start, how many people you will commit. A draft that fills those in is guessing, and a guess that reads well is hard to catch.

So the draft leaves them as placeholders in capital letters, like [PROJECT MANAGER NAME] or [START DATE], highlighted in the answer. A fact that appears several times uses the same label each time, so filling it once fills it everywhere. Under the answer, a To fill list shows the blanks still open. Click one and the chat box starts the message for you ([PROJECT MANAGER NAME] = ); type the name, send it, and the answer is rewritten with that name in every place it appears.

The idea behind this is simple. You can fill a blank in seconds. You cannot reliably spot a fabrication in a paragraph that reads well.

Your price is never written, and a check enforces it

The strictest rule concerns money. The answer never states your price, rate, fee, markup, discount, budget or cost for this bid. That includes an estimate, a range and a "typical" figure. It holds even when the tender publishes the buyer's own estimate. Where a price belongs, you get a blank such as [LUMP-SUM PRICE].

Amounts it read are different, and they are welcome: the value of a past contract from your knowledge base, a quantity or figure from the tender, a public figure from the web. Those appear as written in the source.

An instruction alone would not be enough. A model told not to write a price will usually comply, and "usually" is the wrong standard for the number that decides the bid. So the rule is backed by a check that does not depend on the model at all:

  • Before an answer is saved, every money amount in it is compared against everything the run actually saw: the tender sections it read, your knowledge base and profile, the web results it read, every message you typed, and the previous version of the answer.
  • It compares values, not spellings, so "$4.2 million" in the tender matches "$4,200,000" in the answer.
  • An amount found in none of those sources was invented. The draft is sent back once to be written without it, and if the amount is still there, it is replaced with [AMOUNT TO CONFIRM].

Your own price is simply something you tell it. Type "our price is $450,000" in the chat and the answer uses it exactly as you wrote it, because now it came from you.

What the check cannot do

The check compares numbers, not meanings. If the tender publishes an estimate of $2 million, then $2 million is an amount the run read, and the check alone could not tell "the buyer's estimate is $2 million" from "our price is $2 million". That gap is exactly why the instruction forbids your price even when the tender publishes an estimate. Each control covers the case the other misses.

For the same reason, a small amount can coincidentally match an unrelated number somewhere in a long tender. The check reliably catches invented totals and rates. It is not a proofreader, and it is not the last line: you are. Offra never submits anything. You read the answer before it goes anywhere.

It only offers a draft where there is something to write

When Offra analyses a tender, it sorts each task by whether there is anything to draft. A methodology, a work plan, a references write-up, a team description, answers to the tender's questions, a letter or attestation on your letterhead and the fields of a form all get the Draft answer button.

A signature, a fee, a registration, a site visit, a document to obtain and attach (a bond, an insurance certificate, financial statements) or a price schedule on its own do not. There is nothing to write, so no button appears. When the sorting is unsure, it offers the button.

An answer you revise by asking

The answer sits on one side of the task and a chat sits on the other. On a phone they become two tabs.

  • Revise it by asking. "Make it shorter." "Stress our winter work." "Use the attached CV." Each request rewrites the same answer, so there is only ever one current version.
  • Take it with you. Copy puts the whole answer on your clipboard with its headings and lists intact for Word or Google Docs. When the answer is a document you would actually submit, such as a covering letter, a methodology section or an attestation, you can also download it as a Word file.
  • Leave it running. A draft takes a minute or so and keeps going if you close the task. The task list shows where it got to, and if you are elsewhere in Offra when it finishes, a notice tells you it is ready.

It only asks you a question when a follow-up request is ambiguous. The first run always ends with an answer.

Four questions to ask any AI that writes bids

Whichever tool you use, these four questions tell you whether its drafts are safe to paste:

  1. Can you see where each fact came from? A reference, a certification or a figure should trace back to your records, the tender or a cited page.
  2. What does it do when it does not know? A visible blank is honest. A plausible name or date is a problem you have to find yourself.
  3. Can it write your price, and what stops it? If the only safeguard is an instruction to the model, it will hold most of the time, not every time.
  4. Who submits? The bid should leave your hands, not the tool's.

Where to find it

Draft answer is part of the Business plan. You can also try it for free: your first bid in Offra runs with every Business feature, Draft answer included, on one real tender of your own. You add a card to start it, and nothing is charged. On other plans, the task page shows an "Included with Business" note where the button would be.

The full list of Business capabilities is on the advanced intelligence page, and the plans are compared on the pricing page.

Related reading: why pasting the tender into ChatGPT is not a compliance matrix, and why Offra shows you what it is unsure about.

Ready when you are

Win more public tenders, with a fraction of the effort.

Upload your first tender and get a review-ready checklist of requirements, gaps and deadlines in minutes.

Free account, no card. Add a card when you run your first bid — you're not charged.