Manpower-Loaded Schedule: What It Is, Why Your GC Is Asking, and How to Build One From Their P6 or MS Project PDF
A manpower-loaded schedule is a construction schedule in which every activity carries the crew size or labor hours needed to complete it, so the totals per week form a manpower histogram. It answers one question the dates alone cannot: how many people does this trade need on site, and when.
Also called: man-loaded schedule, resource-loaded schedule, labor-loaded schedule. The picture it produces is called a manpower loading chart, manpower histogram, labor histogram, or manpower curve. They all describe the same thing: workers per day or week, plotted across the job.
If you are a subcontractor, you usually meet the term in an email from the general contractor: "Please send a man-loaded schedule for your scope by Friday." This page explains what they want, what the contract language behind the request looks like, and how to build one from the schedule PDF the GC already sent you.
What does a GC mean by "man-loaded"?
They mean: take the activities and durations in the project schedule that belong to your trade, and tell us how many workers you plan to put on each one. "Man-loaded", "manpower-loaded" and "resource-loaded" are used interchangeably in the field. The GC is not asking for a new schedule. The dates and logic stay theirs. You are adding one column: crew. They are simply asking how many people it will take to complete the project, given the current schedule.
A GC asks for this for five practical reasons.
- To check that the dates are believable. A schedule that shows 20,000 square feet of drywall hung in five days is only real if somebody is planning to send the crew that can do it. Crew sizes expose durations that were guessed.
- To see the stacking of trades. When every sub's crew is loaded, the GC can add them up by area and by week. That total drives hoist time, parking, laydown, site safety staffing, etc.
- Because their contract with the owner requires it. On public and large private work the owner's scheduling specification often requires a resource-loaded schedule, and the GC passes that requirement down to each subcontractor.
- Bid leveling. If the request arrives before the job is awarded, the GC is likely comparing competing companies. Two bids that look the same on price can look very different once each shows the crews and hours behind it.
- Capacity. On larger projects, a GC may ask for this to judge whether your company can actually supply the manpower the schedule calls for.
What they expect back is small: your activities, the GC's dates, a crew size (average workers per day) or total man-hours for each, and a chart or table of workers per week. Most GCs are happy with a spreadsheet or a PDF. Some want the numbers typed into their template so they can paste them into Primavera P6.
What do specs and subcontracts actually say?
The request is not a fad. The words come straight out of owner specifications and contract exhibits. A few examples, quoted from the documents themselves.
US Department of Veterans Affairs, Section 01 32 16.16, Network Analysis Schedules (Design-Build), dated 05-01-22. The section opens by requiring the contractor to develop "a fully Resource loaded (cost and manpower) Network Analysis System (NAS) plan". In the list of data that must appear on each work activity (Article 2.3, paragraph A.2, item f) it says:
Manpower required (average number of workers per day). Load manpower for each and every activity with proper trade codes in the "resource" field of P6 for ease of generating individual Trade and overall manpower profile required to plan and complete the project.
The same list asks for activity coding by trade, with examples: "GEN, MECH, ELEC, CARP, PLAST, or other acceptable abbreviations". And it ties the schedule to money. Under periodic progress and payment submittals (Article 3.1, paragraph G):
The Contractor is entitled to a periodic (not less than monthly) progress payment upon approval of the resource loaded project schedule.
That sentence is why a GC on a VA job chases subs for crew sizes: until the loaded schedule is approved, the pay application is stuck. Source: VA Section 01 32 16.16.
US Army Corps of Engineers, UFGS 01 32 01.00 10, Project Schedule (August 2026). The Corps treats workers per day as an activity code the Contracting Officer can turn on. Paragraph 3.3.7.1:
Assign Workers per Day for all field construction or direct work activities, if directed by the Contracting Officer. Workers per day is based on the average number of workers expected each day to perform a task for the duration of that activity.
And if a contractor proposes to finish early, paragraph 3.3.21 says the schedule will not be accepted "without being fully resource-loaded (including crew sizes and hours)". So on Corps work the requirement is conditional, but when it applies the unit is the same: average workers per day, per activity. Source: UFGS 01 32 01.00 10.
Private EPC contracts. The same idea shows up in negotiated contracts, usually in hours rather than heads. One publicly filed engineering, procurement and construction contract for a power plant states that the baseline schedule and every update "will be manpower loaded", that each activity is assigned a total number of craft-hours, and that the hours loaded in the schedule must balance to the contractor's total estimated direct man-hours. Source: contract exhibit filed with the SEC, Section 8.4.3.
Two units, then, and you should know which one your GC wants:
- Crew size: average workers per day on the activity. This is what most building GCs and the VA ask for.
- Man-hours (craft-hours): total labor hours on the activity. This is common on industrial and EPC work, and it lets the owner check your schedule against your estimate.
They convert into each other with one line of arithmetic, shown below.
What does a manpower-loaded schedule look like?
Here is a small, made-up example: a framing and drywall subcontractor's scope on the second floor, east wing, of a medical office building. The activity IDs, names and dates are the GC's. The man-hours come from the sub's estimate. Divide them by the working days in the activity, then by the hours each person works in a day, and you have the average crew.
| ID | Activity | Trade | GC's dates | Man-hours | Working days | Hours per day | Average crew |
|---|---|---|---|---|---|---|---|
| A1010 | Layout and top track, L2 East | Carpenters | Mar 1 – Mar 5 | 80 | ÷ 5 | ÷ 8 | = 2 |
| A1020 | Frame interior partitions, L2 East | Carpenters | Mar 8 – Mar 26 | 720 | ÷ 15 | ÷ 8 | = 6 |
| A1030 | In-wall backing and blocking, L2 East | Carpenters | Mar 22 – Apr 2 | 160 | ÷ 10 | ÷ 8 | = 2 |
| A1040 | Hang drywall, L2 East | Carpenters | Mar 29 – Apr 16 | 960 | ÷ 15 | ÷ 8 | = 8 |
| A1050 | Tape and finish, L2 East | Finishers | Apr 12 – Apr 30 | 600 | ÷ 15 | ÷ 8 | = 5 |
| Total | 2,520 |
Man-hours are your input, from your estimate. Working days are Monday to Friday, counted from the GC's start and finish. Hours per day is 8 unless you are planning overtime. The last column is what goes back to the GC, and that table is the manpower-loaded schedule.
Notice the trade column. Hanging drywall and taping it are usually done by two different trades, even when both work for the same subcontractor: carpenters hang the board, finishers tape and finish it. If your company employs more than one trade, expect the GC to ask for the manpower broken out by trade classification, not just a single headcount. Owner specifications ask for the same thing. That is what the VA's trade codes (CARP, PLAST, ELEC and the rest) are for. Load each activity with the trade that performs it and the breakout takes care of itself.
Now lay each crew out across the days its activity runs, and add up every column, once per trade and once for everyone. The totals are the workers you need on site each day. Drawn as bars, they are the manpower histogram:
Want to try it with your own numbers? Open the free manpower loading chart generator with this example's dates and total hours filled in, then change them.
Four things jump out that the dates alone never showed:
- The peak is 13 workers, in the week of April 12, when hanging and taping overlap: 8 carpenters and 5 finishers. If the company has nine people available that month, this is the week to solve now, not in April.
- The trades peak at different times. Carpenters top out at 10 in the week of March 29, two weeks before the overall peak, and are off the floor after April 16. Finishers never exceed 5 but stay two weeks longer. A single headcount hides both facts, and they are different people to find.
- The ramp is steep. The crew goes from 2 to 10 in five weeks. Those are hires, transfers from another job, or a labor call to the hall, and each of those has a lead time.
- The check total works. Add up the workers-per-day row and you get 315 mandays. One manday is 8 hours, so that is 2,520 hours, the same as the man-hours column. If your estimate carried 2,100 hours for this area, either the crews are too big, the GC's durations are too long, or the estimate was light. Better to know before you sign the schedule.
How do you convert between man-hours and crew size?
Divide the hours by the working days and by the hours in a shift:
crew = man-hours ÷ (working days × hours per day)
So 720 hours of framing in a 15-day activity at 8 hours a day is 720 ÷ (15 × 8) = 6 framers.
An estimator writing in Electrical Contractor magazine gives the same formula for electricians, then makes a useful point: nobody installs for a full eight hours. After setup, material handling, breaks and cleanup, he suggests dividing by six productive hours instead of eight, which in his example raises a four-person crew to between five and six (Stan Shook, "Calculating Manpower", Electrical Contractor, May 2008). Whichever divisor you use, use the same one on every activity and tell the GC which it is.
Start from whichever number you trust more. If your estimate has labor hours by area or by system, spread those hours over the GC's activities and let the formula produce the crews. If your estimate is thin but your foremen know what crew the work takes, start from their crews and compare the hours they add up to with your bid.
How do I build one from the GC's schedule PDF?
You do not need Primavera P6 or Microsoft Project. The GC's PDF already contains everything except your crews.
- Get the schedule in a readable form. Ask for the P6 or MS Project schedule as a PDF with the activity table showing (ID, name, start, finish, duration). An XER or XML export also works. A native .mpp file does not help unless you own Project; ask for a PDF print of it instead.
- Pull your scope. A GC schedule often runs to hundreds or thousands of activities and only a few dozen are yours. Filter by the words your trade shows up under: "frame", "drywall", "GWB", "tape", "ceiling" and so on. Check the result against the floor plans, because schedulers name things inconsistently. In Labor Loader this is the keyword step: drop the PDF into the scope sandbox and it lists every matching activity with its dates. You can also do this by hand, copying your activities and durations into Excel, but it is time-consuming and error-prone.
- Put a crew or hours on every activity. Work down the list with your estimate or your foreman. Average workers per day is the usual unit. Where two of your activities overlap in the same area with the same people, say so, or the chart will double-count them.
- Look at the chart before the GC does. Find the peak week and the steepest ramp. Compare the total hours with your bid. Fix the crews you can fix and write down the durations you cannot meet. The manpower loader sandbox builds the chart as you type, in your browser, with nothing saved.
- Send it with your assumptions. Include the table, the chart, the schedule version and data date you worked from, the shift length you assumed, and any durations you are flagging. Assumptions in writing are what protect you when the schedule changes.
A tool that does steps 2 to 4 is what we call a manpower loader: it man-loads the GC's schedule for your scope and produces the manpower-loaded schedule and manpower loading chart. Labor Loader is one. A careful spreadsheet is another; it is just slower, and it has to be rebuilt on every update.
How is it different from resource loading and cost loading?
Schedulers use three related terms. A manpower-loaded schedule is the labor slice of a resource-loaded one.
| Manpower loading | Resource loading | Cost loading | |
|---|---|---|---|
| What is put on each activity | Crew size or man-hours | Labor, plus equipment and sometimes materials | Dollar value |
| What it produces | Manpower histogram: workers per week | Resource histograms and curves for each resource | Cash-flow curve and the schedule of values |
| Who usually asks | GC to subcontractor; owner to GC | Owner specs (VA, USACE, DOTs), EPC contracts | Owner, for pay applications |
| What a sub provides | Crews or hours for their own activities | Usually labor only; equipment if it is yours and it matters | A value for each of their activities |
When a spec says "resource loaded" and your scope is labor, a manpower-loaded schedule is what satisfies it. If the GC also wants cost loading, they will ask for a value per activity that adds up to your subcontract amount. That is a separate column on the same list of activities.
What happens when the GC issues revision 2?
The schedule will change, and your crews have to follow it. Every update can move your dates, stretch or compress your durations, add activities, or delete them, usually without anyone telling you which ones.
This is where the hours matter. Suppose framing finishes late and, to hold the turnover date, the GC shortens "Hang drywall, L2 East" from 15 days to 10. The work did not get smaller. The same 960 hours in 10 days is 960 ÷ (10 × 8) = 12 hangers instead of 8, in a week when the finishers are also on the floor. Your peak just went from 13 to 17. That is a conversation to have in writing the week the update comes out, with both charts attached.
So on every update:
- compare the new schedule against the one you loaded, activity by activity, for your scope only;
- carry your crews and hours over to the activities that did not change;
- re-load the ones that moved, and look at the new peak;
- send the GC the revised chart and name the changes that drive it.
Labor Loader's comparison tool does the first step for signed-in users: it lines up two versions of the schedule and lists what was added, removed or changed in your scope, and by how many days.
Why this matters more than it used to
Labor is the constraint on most jobs. In the AGC of America and NCCER 2026 workforce survey of 1,830 respondents, 87 percent of firms reported openings for hourly craft workers, and 42 percent of respondents said shortages of their own or their subcontractors' workers had delayed projects, the most common cause of delay they named (2026 Workforce Survey Analysis). A GC who asks for a manpower-loaded schedule is trying to find those delays while they are still on paper.
Frequently asked questions
Is a man-loaded schedule the same as a manpower-loaded schedule?
Yes. "Man-loaded" is the short form general contractors and subcontractors use in conversation and email. "Manpower-loaded", "labor-loaded" and, in specifications, "resource-loaded" describe the same thing: a schedule with crew sizes or labor hours assigned to each activity.
Does the GC want crew size or man-hours?
Ask, because both are common. Building GCs and the VA specification ask for average workers per day on each activity. Industrial and EPC contracts often ask for total craft-hours per activity so they can be checked against the estimate. Either converts to the other with crew = hours ÷ (days × hours per day).
Do I need Primavera P6 to make one?
No. The GC owns the P6 schedule. You need their activity list for your scope, which a PDF export contains, plus your crew sizes. A spreadsheet or a manpower loader produces the table and the histogram. The GC can key your numbers into P6 if their spec requires it there.
What is a manpower histogram?
A manpower histogram is a bar chart of workers per period, usually per week, built by adding up the crews on every activity active in that period. It is also called a manpower loading chart, labor histogram or manpower curve. Its peak is the largest crew you will need on site.
How detailed should it be?
As detailed as the GC's schedule for your scope, and no more. Load the activities they gave you. If one of their activities hides very different work, such as framing and hanging in a single bar, note the split in your assumptions instead of inventing activity IDs that do not exist in their schedule.
How often do I have to update it?
Every time the GC issues a schedule update that touches your activities, which on an active job is typically monthly and sometimes every two weeks. Re-load only what changed, compare the new peak with the old one, and send both.