How it works

Compare subcontractor bids side by side.Same lines. Same job.

Two totals on a table is not a comparison if they are not the same job. One bid leaves mobilization out. The other carries it. The low number looks like the better bid until you put that line on both rows.

Bid expectations are the questions every bidder answers the same way, grouped under quote, timeline, or scope. Optional by default. Mark Must Answer when you need the row.

Some subs fill the form. Some attach a PDF. Some email a quote. Rex AI can fill those answers from the attachment so the comparison still has a complete row. Analysis only. You still send, level, and award.

Invited bidding stays free. Rex AI for bidders is a subscription they can choose.

On the request

Write the lines you need bid.Once. Then every sub answers them.

When you post the job, add the bid expectations the work actually needs: mobilization as a quote line, open cut and restoration as scope, traffic control in hours if that is how you buy it. That is what you want them to bid against. Not a freeform PDF you have to decode later.

  • Grouped under quote, timeline, or scope, so the form stays readable.
  • Optional by default. Must Answer when the row has to come back.
  • Unit-priced when you want a rate times your quantity, not a lump they invented.

On the job

They sit on the tender.The same list the invite already carried.

Once the job is out, those expectations are on the details page with the dates, the description, and the attachments. Every invited company sees the same list. No one is bidding a different job.

  • Quote, scope, and timeline stay grouped the way you wrote them.
  • A later edit can mark the section Updated so bidders see what changed.

On the form

They fill it. Or Rex AI reads the quote.Nothing writes until they apply it.

The bid form is those same lines. A sub can type the answers. Or they attach the quote and Rex AI matches it to the expectations you wrote. Invited bidding stays free. Rex AI is optional for the bidder.

  • Maps each find to a named expectation, so they can see what came from where.
  • Leaves gaps visible. If traffic control is not on the quote, he does not invent a number.
  • The send stays with the bidder.
Rex AI for subcontractors

On the prime side

The low number is not the same job.Until the row exists.

Harbour Utilities comes in at $168,200. Northline Excavating at $176,400. Without a Mobilization line, that spread looks like price. With the line, you can see the low number left it out. If they skipped the form, or emailed a PDF, Rex AI can fill that answer from the attachment. You keep their blank, or you use the fill.

  • Bidder submission stays on the row. Rex AI's findings sit beside it.
  • Works on an on-platform bid with a blank expectation, and on a manual bid from email.
  • Filling a blank is not awarding the job. You still decide.
Rex AI for primes

Side by side

Now the table is the same job.Two bidders. The lines you asked for.

Compare Bids puts two companies on one chart. Bid amount, then each expectation as its own row. That is how you compare subcontractor bids side by side: you asked for the lines, the form collected them, and Rex AI helped complete what the PDF still held.

  • Headline totals stay visible. The rows underneath tell you what they actually include.
  • Excluded is an answer, not a missing cell.
  • Level from there if you want. The original stays on the page.

FAQ

How the lines get compared.

What is unit pricing on a bid expectation?

On a quote Bid Expectation, job posters can turn on Create Quantity and set the quantity needed, plus an optional unit of measure (for example Sq Ft or Linear Ft).

Bidders then enter a unit rate. KNTRCTR multiplies rate × quantity to calculate the line total, so everyone prices against the same quantity.

Leave Create Quantity off if you want a simple lump-sum quote line. Unit pricing is optional and can be edited later on the job.

If the poster later changes the quantity, existing bids keep the quantity they were submitted against. Adjustments for the new quantity belong in bid leveling.

Can I level my subcontractor bids in KNTRCTR?

Yes. KNTRCTR includes bid leveling for job posters so you can normalize subcontractor bids line by line before award.

Bid leveling keeps the original bidder response visible while you enter separate leveled values for comparison.

You can level quote expectations (including unit rate and quantity on unit-priced lines), level provisional / additional amounts (amount, multiplier, and include/exclude), add bid adjustments as increases or decreases, and add leveled notes under Pricing, Scope, and Timeline.

The leveled amount is calculated from the original bid amount, plus or minus expectation-leveling differences, plus or minus provisional leveling differences, plus or minus bid adjustments.

Bid leveling is poster-side only and locks once the job is awarded.

Can I exclude a bid expectation when submitting a bid?

Job posters can mark individual bid expectations as Must Answer. Those require a direct answer or Exclude from bid with a reason before submit.

Optional expectations can be left blank. Bidders can still exclude them with a reason (up to 200 characters) if they are out of scope.

If a bidder skips an optional row, Rex AI may fill it from attachments when the poster runs a deep dive. Answering in-app where possible still gives the most accurate comparison.

If a Must Answer response or a required exclusion reason is missing, KNTRCTR blocks submission until it is fixed.

What are provisional or additional amounts on a bid?

Provisional / additional amounts are costs a bidder adds that were not listed in the poster's Bid Expectations—for example allowances, contingencies, or extras.

Each item can include a label, amount, multiplier, optional description, and a Conditional flag when the cost may not apply.

They appear separately from the poster's Bid Expectations in bid details and side-by-side comparison, so the pricing structure stays clear.

More questions

Ask for the lines.Then compare the same job.

Set the bid expectations. Let the form, or Rex AI, get the answers in place. The job still awards the way you award. The comparison is finally apples to apples.