CON-330 · Lesson 9 of 12 · 26 min
Logistics, site delivery and materials management
Procurement does not end when the truck is dispatched. Materials must arrive at a site that can receive them, be unloaded safely, checked against the order, stored where they will not be damaged or stolen, and moved to the work face when the crews need them. On a tight urban site such as Larch Street, where the building covers almost the whole lot, space and crane time are among the scarcest resources on the project, and poor logistics show up quickly as double handling, damaged materials, idle crews and conflicts between trades. This lesson covers the site logistics plan, delivery scheduling, receiving and inspection, storage and protection, and the choice between just-in-time delivery and stockpiling. Crane and forklift safety are covered in HSE-219 and HSE-218.
The site logistics plan
The site logistics plan is a drawing, updated by phase, showing how people, vehicles and materials move on and around the site. It is prepared by the superintendent with the project manager, reviewed with major trades during buyout so that their bids reflect it, and attached to each subcontract.
| Element | Questions the plan answers |
|---|---|
| Access and gates | Where do trucks enter and leave? Turning radii, gate hours, flaggers |
| Street use | Which permits are needed for lane closures, hoarding and street occupancy? What do they cost? |
| Hoisting | Crane type, location and reach; hoist location; who books crane time |
| Laydown and storage | Where each trade may store material, for how long, and how much |
| Unloading | Who unloads (supplier, trade or contractor), with what equipment |
| Temporary facilities | Offices, washrooms, power, water, waste bins, parking |
| Safety and the public | Pedestrian routes, overhead protection, traffic control, emergency access |
| Phasing | How the plan changes as the building rises and space disappears |
Logistics costs money, and the contract documents and subcontracts must say who pays. If the invitation to bid does not state that trades must book crane time through Halyard and are allowed, say, 4 crane hours per floor, or that each trade unloads its own deliveries, the trades will either price generously or claim extras later.
Crane and hoist time as a shared resource
On a building with a tower crane, crane time is usually provided by the general contractor and shared among trades. The procurement team should estimate each trade's crane demand during buyout and decide whether it is included in the general conditions or charged to the trades.
# Allocating tower crane hours during the wood-frame phase (illustrative)
crane_cost_per_hour = 285 # crane, operator and signal person, blended
demand_hours = { # per floor, five wood-frame floors
"Wood framing (panels, trusses)": 22,
"Windows": 5,
"Mechanical (RTU later, risers)": 3,
"Drywall (board stocking)": 6,
"Roofing (final floor only)": 0,
}
floors = 5
total = sum(h * floors for h in demand_hours.values()) + 14 # roofing stocking at the roof
available = 10 * 5 * 9.5 # weeks x days x hours in the phase
print(f"Crane demand: {total} h of {available:.0f} h available ({total / available:.0%})")
for trade, h in demand_hours.items():
hrs = h * floors + (14 if trade.startswith("Roofing") else 0)
print(f"{trade:32} {hrs:4} h = {hrs * crane_cost_per_hour:>8,} at cost")Crane demand: 194 h of 475 h available (41%) Wood framing (panels, trusses) 110 h = 31,350 at cost Windows 25 h = 7,125 at cost Mechanical (RTU later, risers) 15 h = 4,275 at cost Drywall (board stocking) 30 h = 8,550 at cost Roofing (final floor only) 14 h = 3,990 at cost
Total demand of about 194 hours over the phase uses less than half the available crane hours, so the crane is not a bottleneck on average. But demand is lumpy: framing panels and trusses need the crane for long blocks, while window and drywall stocking need it in short bursts, often on the same days. The logistics plan should assign daily crane windows by trade, and the subcontracts should say how crane time is booked and what happens to a trade that misses its window.
Scheduling deliveries
Every delivery to a constrained site is an event that must fit the site's gate hours, crane windows, laydown space and street permits. The contractor should require suppliers and subcontractors to book deliveries in advance through a delivery schedule, usually managed by the site coordinator.
| Constraint | Typical rule |
|---|---|
| Delivery windows | Bookings at least 48 hours ahead; deliveries outside window turned away or charged |
| Municipal limits | Noise by-laws, rush-hour restrictions, permitted hours for lane closures |
| Oversize loads | Provincial and municipal permits for oversize or overweight vehicles; escorts for large equipment |
| Unloading readiness | Crane, forklift, rigging and crew available at the booked time |
| Sequence | Deliveries in installation order (for example, panels floor by floor) to avoid rehandling |
Large equipment deliveries deserve their own plan. The switchgear for Larch Street arrives on a flatbed, is lifted by a mobile crane through a temporary opening in the podium wall, and is rolled into the electrical room. The plan must confirm the room is ready (housekeeping pad cast, doors and openings sized), the crane and permits are booked, the supplier's representative is present for inspection, and the receiving crew knows the rigging points. A late delivery is bad; an early delivery with nowhere to put the equipment is also bad.
Just in time or stockpile?
Just-in-time (JIT) delivery brings material to site shortly before installation, often lifting it straight from the truck to the floor where it will be installed. It saves laydown space, rehandling and damage, but makes the work vulnerable to any delivery delay. Stockpiling holds material on or near site ahead of need, which protects the schedule but costs space, handling, protection and cash.
# Drywall for one residential floor: deliver just in time or stock early? (illustrative)
boards = 2_400 # sheets per floor
# Just in time: crane lifts straight from truck into the floor two days before install
jit_crane_hours, crane_rate = 6, 285
jit_risk_cost = 0.10 * 3 * 4_800 # 10 % chance of a 3-day crew wait at 4,800 per day
# Stockpile: delivered with the floor below, stored on the slab, moved by hand later
stock_handling_hours, crew_rate = 40, 68
stock_damage = 0.02 * boards * 16 # 2 % damage at 16 per sheet
stock_protection = 900 # moisture protection and temporary storage
jit = jit_crane_hours * crane_rate + jit_risk_cost
stock = jit_crane_hours * crane_rate + stock_handling_hours * crew_rate + stock_damage + stock_protection
print(f"Just in time: {jit:,.0f} (crane {jit_crane_hours * crane_rate:,} + expected delay {jit_risk_cost:,.0f})")
print(f"Stockpile: {stock:,.0f}")Just in time: 3,150 (crane 1,710 + expected delay 1,440) Stockpile: 6,098
For drywall on Larch Street, JIT is cheaper in expectation, because the crane lift is the same either way while stockpiling adds handling, damage and protection. The answer changes with the risk: if the supplier were unreliable or the delivery came from far away, the expected delay cost would rise and stockpiling might win. Critical long-lead equipment is usually delivered when the space is ready rather than stockpiled, but with buffer time in the schedule. Materials with volatile prices may be bought early and stored off site (Lesson 8), which is a financial decision as much as a logistics one.
| Favours just in time | Favours stockpiling |
|---|---|
| Tight site with little laydown | Remote site or long delivery distance |
| Reliable local supplier | Unreliable or single-source supplier |
| Material easily damaged by weather or handling | Robust material, easily protected |
| Crane can lift directly from truck to floor | Winter roads, seasonal access or strike risk |
| Stable prices | Volatile prices or expected tariff increases |
Laydown space
Laydown space is often the binding constraint. The procurement team should estimate the space each trade needs at peak and compare it with what the site offers in each phase.
# Laydown demand versus space during the wood-frame phase (m2, illustrative)
available_m2 = 260
demand_m2 = {"Wood framing panels and trusses (2 floors ahead)": 140,
"Windows (1 floor ahead)": 45,
"Mechanical and electrical rough-in": 40,
"Drywall (stocked on floors, not in laydown)": 0,
"Waste bins and recycling": 30,
"General contractor (forms, tools)": 25}
total = sum(demand_m2.values())
print(f"Demand {total} m2 vs available {available_m2} m2 -> {'shortfall' if total > available_m2 else 'ok'} of {abs(total - available_m2)} m2")
print(f"Framing one floor ahead instead of two saves about {140 // 2} m2")Demand 280 m2 vs available 260 m2 -> shortfall of 20 m2 Framing one floor ahead instead of two saves about 70 m2
Demand exceeds the available laydown by 20 m². Options include holding framing panels one floor ahead instead of two (saving about 70 m²), storing windows at the supplier and delivering just in time, or renting a nearby lot. Each has a cost or a risk, and the choice should be made and written into the subcontracts during buyout, not argued about on site.
Receiving and inspection
When material arrives, someone must check it against the purchase order and packing slip before the driver leaves: right product, right quantity, no visible damage, required documentation (mill certificates for rebar, labels for fire-rated products, factory test reports for equipment). Discrepancies are noted on the delivery receipt and reported to the supplier promptly, because purchase orders and sale of goods law usually give the buyer only a reasonable time to reject non-conforming goods (Lesson 6). Signing a clean receipt for damaged goods makes a claim much harder.
| Check on delivery | Action if it fails |
|---|---|
| Quantity and items match the packing slip and purchase order | Note shortage on the receipt; notify supplier the same day |
| No visible damage to packaging or product | Photograph, note on receipt, refuse if severe |
| Required certificates and labels present | Quarantine material until documents arrive |
| Correct product and finish (colour, size, rating) | Refuse or quarantine; notify supplier and trade |
| Equipment shipped with accessories and manuals | List missing items on the receipt |
# Receiving log summary for October (illustrative)
deliveries = [ # (supplier, items ordered, items received, damaged, documents complete)
("Rebar supplier", 38, 38, 0, True),
("Lumber yard", 120, 116, 3, True),
("Window plant", 24, 24, 2, False),
("Electrical", 65, 63, 0, True),
]
for s, ordered, rec, dmg, docs in deliveries:
issues = []
if rec < ordered: issues.append(f"short {ordered - rec}")
if dmg: issues.append(f"damaged {dmg}")
if not docs: issues.append("documents missing")
print(f"{s:15} {'; '.join(issues) if issues else 'complete'}")
fill = sum(d[2] for d in deliveries) / sum(d[1] for d in deliveries)
print(f"Line fill rate: {fill:.1%}")Rebar supplier complete Lumber yard short 4; damaged 3 Window plant damaged 2; documents missing Electrical short 2 Line fill rate: 97.6%
A short monthly summary like this turns individual delivery problems into supplier performance data. The window plant delivered damaged units and missing documents; repeated, that pattern should feed into the supplier's performance rating (Lesson 11) and into how Halyard prequalifies that plant next time.
Storage, protection and security
Materials on site are vulnerable to weather, damage, theft and simply getting lost. Wood framing, engineered wood and mass timber must be kept dry and off the ground; drywall and insulation must be protected from moisture; copper wire and tools attract theft; finished products such as cabinets, doors and fixtures are easily damaged by other trades. The subcontract should say who is responsible for protecting a trade's materials and installed work until handover, and the contractor's builder's risk insurance (CON-350) has deductibles and conditions, such as security measures, that affect how much of a loss is recovered.
Worked problem
The cost of poor protection
A pallet of 90 sheets of drywall is left uncovered on the fourth floor before a rainstorm and must be discarded. Replacement drywall costs $16 a sheet delivered, the crane lift to replace it costs $570, and the drywall crew loses half a day waiting, costing $2,400. What is the loss, and who should bear it?
Show solution
- Material: 90 × 16 = $1,440.
- Crane: $570.
- Crew time: $2,400.
- Total: $4,410.
Answer: Most of the loss is not the material but the knock-on time and handling. If the subcontract makes the drywall trade responsible for protecting its stocked materials, the trade bears the loss; if the general contractor stocked the floor without protection, it is the contractor's. Clear responsibility in the subcontract and the logistics plan settles this before it happens.
Common mistakes
MistakeLeaving logistics out of the bid documents.
InsteadInclude the logistics plan, crane and hoist rules, laydown and unloading responsibilities in every invitation to bid.
MistakeTreating crane time as unlimited.
InsteadEstimate each trade's demand, assign daily windows and set booking rules.
MistakeAccepting deliveries without booking.
InsteadRequire advance booking in a delivery schedule that respects gate hours, permits and crane windows.
MistakeChoosing just-in-time or stockpiling by habit.
InsteadCompare handling, damage, protection, space and expected delay costs for each material.
MistakeSigning clean delivery receipts for damaged or short shipments.
InsteadInspect before the driver leaves and note every discrepancy on the receipt.
MistakeLeaving protection responsibility unclear.
InsteadState in each subcontract who protects stored materials and installed work until handover.
Summary and key terms
- The site logistics plan shows access, street use, hoisting, laydown, unloading, temporary facilities, safety and phasing, and should be attached to subcontracts.
- Crane and hoist time is a shared resource that should be estimated, allocated and booked.
- Deliveries need advance booking within gate hours, municipal limits and crane windows; large equipment needs its own delivery plan.
- Just-in-time delivery saves space, handling and damage but increases exposure to delay; stockpiling does the reverse.
- Laydown demand should be compared with available space by phase and resolved during buyout.
- Receiving inspections check quantity, condition, product and documents before the driver leaves.
- Subcontracts should assign responsibility for protecting stored materials and installed work.
- Site logistics plan
- A phased drawing showing how people, vehicles and materials move on and around the site.
- Laydown area
- Space on or near site for storing materials before installation.
- Just-in-time delivery
- Delivering material shortly before installation to minimize storage.
- Stockpiling
- Holding material on or near site ahead of need.
- Delivery schedule
- A booking system for deliveries within site constraints.
- Double handling
- Moving material more than once before installation.
- Receiving inspection
- Checking a delivery against the order and for damage and documents.
- Packing slip
- The supplier's list of items in a shipment.
- Quarantine
- Setting material aside until documents or inspections confirm it may be used.
- Line fill rate
- The share of ordered items delivered complete.
Practice problems
Work each problem on paper first, then reveal the answer to check.
List five elements of a site logistics plan.
Show answer
Access and gates, street use, hoisting, laydown, unloading, temporary facilities, safety, phasing.
Why should the logistics plan be issued with the invitation to bid?
Show answer
So trades price the logistics they will actually face and do not claim extras later.
A trade needs 6 crane hours per floor on 5 floors at $285 an hour. What is the crane cost?
Show answer
30 h × 285 = $8,550.
Name three conditions that favour stockpiling.
Show answer
Remote site, unreliable supplier, robust material, seasonal access, volatile prices.
JIT costs $1,700 plus a 15 % chance of a $6,000 delay; stockpiling costs $4,300. Which is cheaper in expectation?
Show answer
JIT: 1,700 + 900 = $2,600, cheaper than $4,300.
Laydown demand is 310 m² against 260 m² available. Give two responses.
Show answer
Hold material fewer floors ahead, deliver some items just in time, store at the supplier, rent nearby space.
What should be checked when material arrives?
Show answer
Quantity, condition, correct product, documents and accessories against the order and packing slip.
Why not sign a clean receipt for damaged goods?
Show answer
It weakens the claim against the supplier or carrier.
A delivery has 116 of 120 items. What is its line fill rate?
Show answer
96.7 %.
Who should be responsible for protecting a trade's stored materials?
Show answer
Whoever the subcontract assigns, usually the trade for its own materials and installed work until handover.
Lesson quiz · 5 questions
Score 60% or more to complete this lesson.
Create a free account to save your progress, take quizzes and earn a certificate.