New: role-based approval matrix and session-replay activity tracking are live. Read more

How to Allocate Fabric Dyeing and Finishing Costs in ERP

Accurate cost allocation in dyeing and finishing is critical for fabric margins. Learn how ERP tracks consumables, machine hours, and utilities per batch.

Elderly couple working on traditional silk production process indoors.
Photo: Quang Nguyen Vinh via Pexels

What this covers

  • Track consumables, machine hours, and utilities per batch to avoid cost misallocation.
  • Use ERP to assign indirect costs like maintenance and labour to specific dyeing/finishing processes.
  • Reconcile actual costs with invoices to spot discrepancies before they affect margins.
  • Allocate utility costs by production line, not by guesswork, to reveal hidden expenses.
  • Adjust for scrap, rework, and machine downtime to reflect real-world production costs.

Dyeing and finishing costs are the hidden margin killers in fabric production

Most fabric plants allocate dyeing and finishing costs by dividing the total invoice by the number of batches or kilos processed. This method hides inefficiencies, overcharges profitable lines, and leaves you guessing which processes are actually losing money. Without batch-level tracking, you cannot tell whether a high-cost dye job was caused by a slow machine, a chemical spill, or an operator error—until the invoice arrives and the damage is done.

The solution is not spreadsheets or manual logs. It is an ERP system that ties every cost driver—consumables, machine hours, utilities—to the specific batch card, then rolls those costs into the final fabric price. The result is not just accuracy, but visibility: you see which dyeing or finishing processes are bleeding money, and which are performing better than expected.

Why spreadsheets and manual logs fail at cost allocation

Spreadsheets and paper logs break down when you try to allocate costs beyond direct materials. For example, a dyeing batch might use 50 litres of water, but how much of that water’s cost should be assigned to the batch? If you split the monthly water bill by production volume, you miss the fact that some machines use more water than others. If you split it by machine hours, you ignore the fact that some dyes require more rinsing than others.

Manual logs add another layer of error. An operator might record 2.5 hours on a jigger machine, but the actual time logged in the ERP system shows 3.2 hours due to setup delays. Without automation, these discrepancies compound over weeks, leading to either overcharged customers or underpriced fabric.

Facteno’s production module captures machine hours, consumables, and utilities at the batch level, then links them directly to the fabric’s cost record. This removes the guesswork from allocation.

Start with consumables: the dye, chemicals, and water that vary by batch

Consumables are the easiest costs to allocate accurately, but only if you track them per batch. A 50-kilo dye job might use 20 kilos of reactive dye, 10 kilos of salt, and 300 litres of water—but another 50-kilo job for a different customer could use 15 kilos of dye, 15 kilos of salt, and 400 litres of water. If you allocate costs by average usage, you either overcharge the first customer or undercharge the second.

In Facteno, each batch card records the exact quantity of dye, chemicals, and water used, pulled from the stores ledger and utility meters. For example:

Illustration: Say your own reactive dye costs $12 per kilo, salt costs $0.50 per kilo, and water is $0.02 per litre. Batch A uses 20 kilos of dye, 10 kilos of salt, and 300 litres of water. Batch B uses 15 kilos of dye, 15 kilos of salt, and 400 litres of water.

Batch A consumable cost = (20 × $12) + (10 × $0.50) + (300 × $0.02) = $240 + $5 + $6 = $251.

Batch B consumable cost = (15 × $12) + (15 × $0.50) + (400 × $0.02) = $180 + $7.50 + $8 = $195.50.

Allocate these figures to each batch in the ERP, and you avoid cross-subsidising one customer with another.

Further complications arise with scrap and rework. If 3 per cent of Batch A’s fabric fails QC and must be redyed, the additional dye and labour should be charged to the original batch—not absorbed as an overhead. Facteno’s quality control module flags defects and links them back to the batch, ensuring the extra cost is captured.

Machine hours: how long the jigger, washer, and dryer actually run

Machine downtime and inefficiencies distort cost allocation more than any other factor. A jigger machine might be rated for 8 hours per shift, but if it runs at 60 per cent efficiency due to setup delays, the actual cost per batch rises by 40 per cent. Most plants allocate machine costs by dividing the total depreciation by the number of batches, ignoring the fact that some machines run longer than others.

Facteno tracks machine hours per batch using time clocks or RFID tags on batch cards. For example:

Illustration: Say your jigger machine depreciates at $500 per month and runs 200 hours in that month. If Batch C runs for 4 hours on the jigger, its share of depreciation is:

($500 ÷ 200 hours) × 4 hours = $10.

If Batch D runs for 6 hours, its share is $15. This method ensures high-volume batches pay their fair share, while long-setup batches reveal where efficiency is dropping.

However, machine hours alone do not tell the full story. A washer might run for 3 hours but use twice the water of a dryer running for the same time. Facteno’s utility allocation guide shows how to split water, electricity, and gas by machine type, not just by hours.

Utilities: water, electricity, and gas per machine, not per month

Utility costs are the most commonly misallocated expense in dyeing and finishing. A plant might divide the monthly electricity bill by production volume, but this ignores that:

  • Jigger machines use more electricity than dryers during the same hour.
  • Some dyes require hotter water, increasing gas costs.
  • Rinsing cycles after dyeing can double water usage for certain fabrics.

Facteno links utility meters to specific machines and records consumption per batch. For example, a batch processed on a high-pressure washer might use 1,200 litres of water, while a batch on a low-pressure washer uses 600 litres. The ERP assigns the actual consumption to each batch, not an average.

Cost DriverWhen It LandsWhat Makes It Move
Water usageDuring rinsing and dyeingMachine type, dye process, fabric weight
ElectricityDuring machine operationMachine efficiency, load time, power draw
GasDuring heating cyclesWater temperature, dye type, batch size
SteamDuring drying and pressingFabric moisture content, dryer settings

This table shows why splitting utilities by guesswork distorts costs. For instance, a batch dyed with a cold process might use half the gas of a batch dyed with a hot process—but if you allocate gas by average, the cold-process batch subsidises the hot one.

Labour and maintenance: the hidden costs tied to specific machines

Labour and maintenance are often treated as overheads, but they should be allocated to the batches that cause the work. For example:

  • An operator spends 30 minutes setting up a jigger machine for a reactive dye job. That time should be charged to the batch, not spread across all fabric.
  • A washer breaks down and requires maintenance. The repair cost should be linked to the batches processed on that machine in the past month.
  • Overtime pay for a rush dyeing job should be assigned to the specific batch, not buried in indirect costs.

Facteno’s payroll module tracks labour time per batch, while the purchase module links maintenance invoices to machine usage logs. For example:

Illustration: Say your operator earns $15 per hour. If they spend 0.5 hours setting up Batch E, the labour cost is $7.50. If the same operator works overtime for 2 hours on Batch F, that adds $30 to Batch F’s cost.

Maintenance invoices are split by machine usage. If Machine X runs 120 hours in a month and incurs $600 in repairs, each hour of usage costs $5. Batch G, which ran for 8 hours on Machine X, absorbs $40 of that repair cost.

This method reveals which machines are high-maintenance and which operators are efficient. It also ensures rush jobs do not hide their true cost.

Reconcile actual costs with invoices to spot discrepancies early

Even with accurate allocation, invoices from dyehouses and finishing units often do not match the ERP’s calculated costs. This happens because:

  • The supplier charges a flat rate per kilo, ignoring your actual consumable usage.
  • Your utility provider bills by the month, not by machine or batch.
  • Labour costs are lumped into a single overhead, not tied to specific batches.

Facteno’s finance module compares the ERP’s cost per batch with the supplier’s invoice. For example:

Illustration: The ERP calculates Batch H’s dyeing cost at $420, but the supplier’s invoice shows $480. The discrepancy of $60 could be due to:

  • Unrecorded consumables (e.g., extra dye used without a batch card update).
  • Machine downtime not logged in the ERP.
  • A supplier overcharging for a specific dye type.

By reconciling these figures weekly, you catch errors before they affect margins.

This process also highlights where suppliers are overcharging. If multiple batches show a consistent overcharge for the same dye type, you can negotiate better rates—or switch suppliers.

What to do next week: three steps to start allocating costs accurately

You do not need to overhaul your entire system overnight. Start with these three steps:

  1. Audit one dyeing and one finishing batch. Pull the batch cards, machine logs, and utility records for a recent job. Calculate the cost using the methods above, then compare it to the supplier’s invoice. Note any discrepancies.
  2. Enable batch-level tracking in your ERP. If you are using Facteno, ensure the production module is recording consumables, machine hours, and utilities per batch. If you are not, contact us for a live demo of how it works.
  3. Reconcile one invoice against ERP data. Pick a supplier invoice and cross-check it with the ERP’s cost calculation. Adjust your allocation rules if the two do not match.

These steps will not solve every cost allocation issue, but they will reveal where your current method is failing—and where Facteno can help.

Frequently asked

What if our dyehouse uses a flat-rate pricing model?
Flat-rate pricing means the supplier’s invoice does not break down costs by consumables or machine hours. In this case, allocate their flat rate to each batch based on kilos processed, then use your ERP to track the actual consumables and utilities you use. Over time, you will see whether the supplier’s rate covers your true costs—or if you are overpaying.
How do we handle scrap and rework in cost allocation?
Scrap and rework should be allocated to the original batch that generated them. In Facteno, the quality control module flags defective fabric and links it back to the batch card. The extra dye, labour, and utilities for rework are then added to that batch’s cost record.
Can we allocate costs retroactively if we are not tracking them now?
Retroactive allocation is possible but requires detailed records. If you have batch cards, machine logs, and utility meters from the past month, you can reconstruct costs. However, without automation, this process is error-prone. Facteno’s implementation plan includes a data migration phase to bring historical records into the system.
What if our machines run at different efficiencies?
Machine efficiency should be factored into cost allocation. For example, if Machine A runs at 70 per cent efficiency while Machine B runs at 90 per cent, the cost per hour on Machine A will be higher. Facteno tracks actual runtime (not rated capacity) and adjusts allocation accordingly. You can also set efficiency thresholds in the system to flag underperforming machines.
How do we decide which costs to allocate directly vs. treat as overhead?
Direct costs (consumables, machine hours, labour tied to a batch) should always be allocated. Overhead costs (rent, general maintenance) should only be allocated if they vary by production volume. For example, if your dyehouse’s rent is fixed, it should not be split by batch. However, if your utility provider charges by consumption, those costs should be allocated directly. Facteno’s costing module helps you define these rules clearly.
See it working

Everything above is how Facteno actually behaves

Ask for demo access and we will walk you through a full plant with four months of documents, so you can check the numbers yourself.

Next step

See it running on a real plant, with your questions in the room

The demo carries four months of live documents — orders, batches, inspections, payroll and books that tie. Ask for access and we will walk your process through it.

Request demo access What the demo covers

One business day to reply. No card. No installation.
Or message us on WhatsApp +44 7348 614469 · [email protected]