Capacity planning
Required against available hours for each machine or resource from products, demand, cycle and setup times: load, bottleneck, shortfall and the demand the bottleneck allows.
Input
Paste, open a CSV, TSV, TXT or XLSX file (up to 20 MB), or drop it on the field. Files are read in this browser only.
Product Resource Demand Cycle time P-100 Saw 1200 3 P-100 CNC mill 12
1 row = 1 product on a resource
Columns: tab, ; or ,
Decimals: 12,5 or 12.5
Paste measurements to start.
One row per product and resource it passes through: the demand in the period (on one row of the product is enough), the cycle time per unit on that resource, and if you like the number of setups in the period and the minutes of one setup.
Paste, open a CSV, TSV, TXT or XLSX file (up to 20 MB), or drop it on the field. Files are read in this browser only.
Resource Units Shifts Hours Days Efficiency % Saw 1 1 7.5 20 85
1 row = 1 resource
Columns: tab, ; or ,
Decimals: 12,5 or 12.5
Paste measurements to start.
One row per machine, work centre or station group: parallel units, shifts per day, hours per shift, working days in the period and the efficiency or OEE in percent.
Runs in this browser. Data is not uploaded or stored.
Results
How the capacity plan is calculated
A rough-cut capacity plan compares the hours a period's demand needs on each machine or work centre with the hours that resource can actually deliver. The resource with the highest load is the bottleneck: it decides how much of the demand the plant can make.
Formulas
- Run hours of a resource = Σ over the products that use it of demand × cycle time per unit.
- Setup hours = Σ setups in the period × time of one setup. Setups do not grow with the quantity.
- Available hours = parallel units × shifts per day × hours per shift × working days × efficiency (or OEE).
- Load = (run + setup hours) / available hours. Above 100 % the difference is the shortfall, below it the spare hours.
- Bottleneck: the resource with the highest load.
- Demand possible: all demands scaled by the same factor m, setups unchanged. A resource stays within its hours while m × run + setup ≤ available, so m = min over the resources of (available − setup) / run; each product's possible demand is ⌊demand × m⌋. The resource that gives the minimum limits more demand; usually it is the bottleneck, but not when a resource's load is mostly setups.
Worked example (the tool's example)
- The two CNC mills work 2 shifts of 7.5 h for 20 days at 80 % efficiency: 2 × 2 × 7.5 × 20 × 0.80 = 480 h available.
- They mill 1200 × P-100 at 12 min, 800 × P-200 at 15 min and 500 × P-300 at 9 min: 30,900 min = 515 h of run time, plus 10 setups (4 × 45 + 4 × 60 + 2 × 45 = 510 min = 8.5 h). Required 523.5 h: load = 523.5 / 480 = 109.1 %, a shortfall of 43.5 h.
- The saw (91.5 %), the lathe (98.4 %) and assembly (86.7 %) fit. The mills are the bottleneck.
- At 100 % of the mills: m = (480 − 8.5) / 515 = 0.9155, so 91.6 % of the demand: 1098 of P-100, 732 of P-200, 457 of P-300, 274 of P-400. Otherwise 43.5 hours must be found, for example one more shift of one mill for about 7 days.
Common mistakes
- Using nominal hours without an efficiency or OEE factor: a resource at 95 % of its nominal hours is already overloaded.
- Forgetting setups, or counting them per unit.
- Treating parallel machines that are not interchangeable (different tooling, sizes) as one resource.
- Planning monthly totals for a demand that is not even through the month: peaks can overload a resource whose monthly load looks fine.
- Adding capacity at a resource that is not the bottleneck: the output does not change.
Input and files
- Routing columns are found by their header names: Product, Resource, Demand, Cycle time, Setups, Setup time. The demand may be written on one row of each product and left empty on the others; two different demands for one product are reported. The same product may use a resource on several rows (several operations): the hours add up.
- Every resource of the routing must be in the resource list. A resource no product uses is listed with zero load.
- Numbers may use a decimal comma or point; cycle times in seconds, minutes or hours per unit, setup times in minutes.
- Files: CSV, TSV and TXT are read as if pasted (UTF-8, UTF-16, otherwise Windows-1257). XLSX: choose the sheet and the columns or a cell range; formula cells use the value Excel last saved, dates are kept as text. Files up to 20 MB are read in this browser only and never uploaded.
- XLSX files are read with SheetJS Community Edition 0.20.3, Apache License 2.0 (license text at the end of this file).
Questions
- What load should a resource be planned to?
- Below 100 % of its available hours once the efficiency is taken into account; many plants aim at 85 to 90 % so that a breakdown or a rush order does not delay everything. A resource planned above 100 % will not make the plan without overtime, extra shifts or moving work.
- Why count setups separately?
- Setups depend on the number of batches, not on the quantity. If demand grows with the same number of batches, only the run time grows; if batches get smaller to cut stock, the setup hours grow while the demand stays the same.
- Is the most loaded resource always the bottleneck?
- For the current plan, yes. For more demand, not always: a resource whose load is mostly fixed setup time can be more loaded today but have more room for extra quantity than one with more run time. The tool reports both the most loaded resource and the one that limits more demand.
- What does this rough-cut plan leave out?
- Timing within the period, queues, batch sequencing, material availability and labour. It answers whether the hours are there in total; a finite schedule decides whether the orders can be done in time.