The construction bidding process for general contractors: a 3-week checklist
The subcontractor side of a GC's bid, laid out as a three-week day-by-day checklist from documents arriving to the ten minutes after closing.
The construction bidding process looks different from the general contractor's chair than it does in a textbook. From here it's three weeks of inviting, chasing and leveling subcontractor quotes, with the actual estimate happening in the gaps. Every estimator carries a version of this checklist in their head. The reason to write it down is that the job you've bid nine times before is exactly the job where a step gets skipped, because you're not paying attention to the process any more.
This version assumes a three-week hard-bid commercial project with subcontracted trades. Compress it or stretch it. The order matters more than the dates.
Day 0: documents arrive
Read the instructions to bidders first, before the drawings. Bid date, time, delivery method, bond requirements, mandatory site meeting, RFI deadline, sub-listing requirements. Every date goes in the calendar today, not tomorrow.
Set up the project in whatever you track with: name, address, bid date and time with the time zone, owner and consultant.
Do a fast scope read. Not a takeoff. Flip through the drawings and the spec table of contents and list the trades. Thirty minutes, tops. You're looking for the unusual: a trade you don't normally carry, a proprietary system, a long-lead item.
Flag the long-lead trades. Curtain wall, elevators, structural steel, switchgear, custom millwork, anything with a specified manufacturer. These get invited first, before anything else happens.
Days 1 to 2: invite the long-lead trades
Pull the trade list for each long-lead scope, filtered by cost code and region. If the list isn't coded, this is where you find out, usually the hard way.
Send individual invitations. One person, one email, trade in the subject, due date, link to the documents, and "let me know if you're bidding." Templates, if you want them.
Book the site meeting if there is one, and tell the long-lead subs about it now.
Days 3 to 5: invite everything else
Finish the scope list: every trade you need a price for, with a cost code and a target number of bidders. Four to six real bids on major trades usually means inviting eight to ten. The arithmetic behind that.
Invite each scope, same rules as before. If you're doing it by hand, block a full morning and do it in one sitting; spreading it across three days is how scopes get missed.
Log every invitation as it goes out: person, company, scope, date. If your tool does this automatically, check that it actually did.
Write your own RFIs before the deadline. The subs will ask the same questions, and you want the answers before they do.
Days 6 to 8: first follow-up
Pull the non-responders per scope. Only the people who haven't said yes, no or maybe.
Send a two-line follow-up. "Are you planning to bid the electrical on Riverview? Due the 16th at 2. One word is fine." Phone the trades you need. Cadence and wording.
Check the counts. A major scope with fewer than three "bidding" answers on day 8 is a problem you can still fix: widen the region, ask a trusted sub for a referral, or call the two firms you most want. On day 18 it's a problem you can only live with.
Attend the site meeting and note who from your list turned up. Anyone who came and hasn't replied is an easy phone call.
Days 9 to 14: addenda and RFIs
Send every addendum to every bidder still in play, individually, same subject line plus "Addendum 1," with a one-line summary of what changed for their trade where you can manage it. Ask for confirmation. Why posting it isn't the same as notifying anyone.
Include the "maybe" subs in that. They haven't said no.
Answer sub questions the same day. A question that sits for two days is a sub who prices the wrong thing or gives up.
Second follow-up to the silent, with different wording than the first.
Days 15 to 19: the run-in
Confirm every "bidding" sub is still bidding. "Still good for Friday?" three or four days out.
Get scope clarifications in writing from the major trades before the number arrives. What's in, what's out.
Check your own bid form. Bond, addenda acknowledgment, sub listing, signatures. Fill in everything that doesn't depend on numbers, now, while it's quiet.
Set up the leveling sheets. One per major scope, rows for expected inclusions and exclusions, a column per bidder. How to lay them out.
Day 20: bid day
Morning: chase stragglers by phone. Anyone marked "bidding" with no number by 10 AM.
Log numbers as they arrive, with the time, and with the inclusions and exclusions from the cover page rather than just the total.
Level in real time. Plug gaps before comparing anything.
Two hours before closing, stop taking new scope. You need the time to assemble, and a late number that changes the picture is more dangerous than helpful at that point.
Submit with margin. Fifteen minutes early for electronic, thirty for physical.
After closing: the ten minutes everyone skips
Update the tracking record. Who bid, who didn't, who said they would and then didn't. Update "last invited" and "last bid" on every contact.
Note who to thank. The subs who bid competitively and didn't get the job are the ones you want next time, and a two-line email now is how you keep them.
Note who to drop. Three "bidding" answers followed by silence is information about that sub.
Write down what went wrong, honestly, for day 8 of the next one.
On tools
You can run this entire list with Outlook, a spreadsheet and a phone, and plenty of people do. The steps that hurt at scale are the individual invitations on days 3 to 5, the "who hasn't responded" pulls on days 6 and 14, and the addendum to everyone still in. Those three are what invitation tools exist for. Invite All handles all three from your own mailbox with per-person response tracking. The checklist doesn't care what you use. It cares that every step happens, in order, every time.