Last updated: April 14, 2026
Key Facts
- Every material exists in one of six states: Ordered, Received, Stored, Allocated, Installed, Reconciled
- Most contractors only track Ordered and maybe Received — the other four are invisible
- Enforcing state transitions prevents double-ordering, material loss, and reconciliation failures
- Each state change is an immutable event — the system cannot lie about where material is
The state machine concept
If you've spent time in the trades, you know where your material is. It's in the yard. It's on the truck. It's at the job site. It's installed.
But your systems don't know that. Your ERP knows you ordered it. Maybe your receiving log shows it arrived. After that? It's in the void — a black hole between procurement and the final invoice where material moves, gets used, gets wasted, and gets lost.
RunBlu's material control layer closes that black hole with six enforced states. Think of it as a state machine — material can only move forward through defined transitions, and every transition is logged as an immutable event.
State 1: Ordered
A purchase order has been created. Material is expected but hasn't arrived.
What the system knows:
- What was ordered (material type, quantity, specifications)
- When it should arrive (expected delivery date)
- Which job it's intended for (if specified on the PO)
- Who ordered it and why
Why it matters: This is the starting point for accountability. When you know what's incoming, you can prevent duplicate orders. If another PM requests the same material, the system shows it's already on order. No more "I didn't know we already ordered that."
State 2: Received
Someone physically received the material. It's been counted, inspected (if applicable), and entered the ledger.
What the system knows:
- What actually arrived (which may differ from what was ordered)
- Who received it and when
- The physical condition at receipt
- Any discrepancies from the PO (short shipments, wrong material, damage)
Why it matters: Receiving is a physical event, not a PO matching exercise. The key insight: the material exists because someone held it, not because a spreadsheet says so. PO matching is a financial exercise that happens separately. Receiving is about physical reality.
Common failure mode without enforcement: Material arrives at the job site and goes straight into use without being logged. The yard thinks it hasn't arrived yet. Purchasing orders more. You've just over-ordered because the receiving step was skipped.
State 3: Stored
The material has been assigned to a specific physical location.
What the system knows:
- The exact location (Yard 1, Bay 4, Shelf B — or Truck 12 — or Job Site 2847, Staging Area)
- When it was stored
- Who put it there
- Whether it's been moved since
Why it matters: Location awareness is the foundation of trust. When the PM opens RunBlu and sees "200 ft 1-inch EMT, Bay 4, Yard 1, stored 4/3," they don't need to call the yard manager. They don't need to drive out and check. They know, because the system enforces it.
Common failure mode without enforcement: Material gets dumped in the yard with no location assignment. Three weeks later, someone needs 1-inch EMT and can't find it because it's buried under other deliveries. They order more. The original material sits in the yard for months, depreciating.
State 4: Allocated
A project manager has claimed the material for a specific job. It's reserved.
What the system knows:
- Which job owns this material
- Which PM allocated it
- When the allocation was made
- Whether the material has been physically staged or is still in its stored location
Why it matters: Allocation is enforcement, not aspiration. In most systems (spreadsheets, ERP notes, whiteboard lists), "allocated" is a note someone wrote. Nothing prevents another PM from grabbing the same material. In a material control layer, allocation is a state transition — the material is locked to that job until it's explicitly transferred or released.
Common failure mode without enforcement: PM for Job A allocates 500 feet of wire on Tuesday. PM for Job B's crew grabs it from the yard on Thursday because it wasn't physically labeled. Job A is now short. Both PMs order more. You've now purchased 1,500 feet of wire for jobs that need 1,000 total.
State 5: Installed
The material has been consumed — installed on the job, used up, or incorporated into the work.
What the system knows:
- How much material was actually used
- When it was installed
- Who confirmed the installation
- The variance between what was allocated and what was consumed
Why it matters: Installation is where inventory becomes cost. The material exits active inventory and becomes a job cost. If you don't track this transition, you're left with phantom inventory — material the system thinks exists but doesn't. Phantom inventory drives over-ordering, misreporting, and reconciliation nightmares.
Common failure mode without enforcement: A crew installs 400 feet of conduit but doesn't log it. The system still shows 400 feet in inventory. The next PM to check sees "available" material that doesn't exist. They build their plan around it. When they go to grab it, it's not there. Emergency order. Overtime. Delay.
State 6: Reconciled
The financial loop closes. What was ordered matches what was received, installed, and returned. Or it doesn't — and the variance is visible.
What the system knows:
- PO value vs. received value vs. installed value vs. returned value
- Per-job material cost accuracy
- Variances and their sources
- Whether the job is over or under on material against budget
Why it matters: Reconciliation is where most contractors give up. It's too painful to do manually, so it either doesn't happen or happens months later with rough estimates. A material control layer makes reconciliation continuous — every state transition feeds the financial picture. Variances are caught in real-time, not discovered during a painful post-mortem.
Common failure mode without enforcement: Job closes. Three months later, accounting tries to reconcile material costs. There's a $40K variance. Nobody remembers what happened. Did material get transferred to another job? Was there theft? Did someone return material to the distributor without logging it? The variance gets written off as "cost of doing business."
The enforced state machine
The critical word is enforced. Material can only move through defined transitions:
Ordered → Received → Stored → Allocated → Installed → Reconciled
With allowed secondary transitions:
- Stored → Transferred (to another location) → Stored
- Allocated → Released (back to available) → Stored
- Installed → Returned (to stock or distributor) → Stored
Every transition requires someone to confirm it happened. The system doesn't guess. It doesn't infer. It doesn't auto-update based on assumptions. A human confirms, and the event is recorded immutably.
This is what makes the data trustworthy. When RunBlu says 200 feet of EMT is in Bay 4, it means:
- Someone received it and confirmed it exists
- Someone stored it in Bay 4 and confirmed the location
- Nobody has moved it since — because if they had, there would be a transfer event
No other system in the contractor's stack provides this guarantee.
What happens when you enforce all six
When all six states are enforced, several things change immediately:
- Over-ordering drops 40–60% — because you can see what you have and what's already allocated
- Material loss drops 70–80% — because movement is tracked and discrepancies surface immediately
- Reconciliation time drops 90% — because it happens continuously, not as a painful post-mortem
- Working capital recovers — because you stop buying material you already have
These aren't aspirational projections. They're what happens when you replace guesswork with an enforced state machine.
Start tracking
If you're ready to see how material state tracking works in practice, book a walkthrough. If you want to understand your current material bleed first, start with a Bleed Audit — it's free, takes 30 minutes, and gives you the number.