Naar hoofdinhoud springen

De boekhoudgids voor machinewerkplaatsen: taakkostprijsberekening, onderhanden werk en echte marges

8 min leestijdMike ThriftMike Thrift
De boekhoudgids voor machinewerkplaatsen: taakkostprijsberekening, onderhanden werk en echte marges

Een eigenaar van een opdrachtwerkplaats draait tien opdrachten per maand. Negen daarvan halen een gezonde marge van 22%. De tiende — een "snelle gunst" voor een vaste klant met strakke toleranties en een haastige offerte — kost 40 uur aan opstelwerk en herbewerking die nooit werden gefactureerd. Aan het einde van de maand ziet het banksaldo van de werkplaats er prima uit, dus de eigenaar neemt aan dat alles in orde is. Dat is het niet. Die ene opdracht heeft net de winst van drie goede opdrachten tenietgedaan, en omdat de werkplaats prijzen berekende op basis van een vast "uurtarief voor de werkplaats" in plaats van wat elke opdracht daadwerkelijk verbruikte, zag niemand het aankomen totdat de boekhouder maanden later de cijfers uit elkaar haalde.

Dit is de meest voorkomende valkuil in de financiën van machinewerkplaatsen en CNC-opdrachtwerkplaatsen: het bedrijf is winstgevend op totaalniveau, maar onzichtbaar in de details. Je kunt een volle werkplaats draaien, je omzetdoelen halen, en toch langzaam geld verliezen op een derde van je opdrachten — omdat je boekhouding je vertelt wat je hebt uitgegeven, niet wat elke opdracht je daadwerkelijk heeft gekost om te maken.

Waarom "Kijk naar het banksaldo" niet werkt voor een opdrachtwerkplaats

De meeste kleine fabrikanten beginnen met het bijhouden van hun bedrijf zoals een dienstverlenend bedrijf dat zou doen: omzet erin, kosten eruit, en een banksaldo dat stijgt of daalt. Dat werkt prima voor een bedrijf met één productlijn en voorspelbare kosten. Het valt uit elkaar zodra je tientallen verschillende opdrachten per maand offreert, elk met zijn eigen materiaal, machinetijd, opstelcomplexiteit en afwerkingseisen.

Een machinewerkplaats heeft niet "een kostprijs." Ze heeft een kostprijs per opdracht, en die kostprijs bestaat uit verschillende componenten die zich elk anders gedragen:

  • Directe arbeid — het uurtarief van de verspaner vermenigvuldigd met de uren die daadwerkelijk aan die opdracht zijn besteed
  • Arbeidsoverhead — loonheffingen, arbeidsongeschiktheidsverzekering en secundaire arbeidsvoorwaarden, berekend als percentage van de arbeidsuren
  • Werkplaats-(machine)overhead — afschrijving, onderhoud, energie, gereedschap en vloeroppervlak gekoppeld aan de specifieke machine of het werkcentrum dat is gebruikt
  • Algemene en administratieve overhead — verkoop-, offerte-, planning- en administratiekosten, evenredig toegewezen over de opdrachten
  • Materialen en externe diensten — grondstoffen, ingekochte onderdelen en eventuele externe bewerkingen zoals warmtebehandeling, verchromen of anodiseren, gefactureerd tegen werkelijke kostprijs

Wanneer werkplaatsen alleen de eerste en de laatste van deze categorieën bijhouden — arbeid en materiaal — missen ze de twee categorieën die stilletjes bepalen of een opdracht daadwerkelijk winstgevend was: overhead en de machinetijd die ze heeft verbruikt. Een vijfassige freesmachine die tussen opstellingen stilstaat, kost het bedrijf echt geld, zelfs als er geen materiaal wordt gefreesd. Als die kost niet wordt toegewezen aan de opdracht die hem heeft veroorzaakt, wordt hij ofwel opgeslokt in "algemene overhead" (waar hij verdwijnt als afrondingsverschil) ofwel gelijkmatig verspreid over alle opdrachten (waarbij eenvoudig werk structureel te duur en complex werk structureel te goedkoop wordt geprijsd).

Waarom activiteitsgebaseerde kostprijsberekening beter is dan een vast werkplaatstarief

De traditionele kortste weg is één gemengd werkplaatstarief: één bedrag per uur dat op elke opdracht wordt toegepast, ongeacht op welke machine ze werd uitgevoerd of hoeveel opstelwerk ze vereiste. Het is eenvoudig, en het is fout op een specifieke, voorspelbare manier — het subsidieert je slechtste opdrachten met de marge van je beste opdrachten.

Activiteitsgebaseerde kostprijsberekening (ABC) lost dit op door kostendrijvers bij te houden in plaats van één gemiddelde. In plaats van één werkplaatstarief bouw je een machine-uurtarief voor elk afzonderlijk werkcentrum — je CNC-freesmachines, je draaibanken, je slijpmachines, je inspectieafdeling — gebaseerd op de werkelijke afschrijving, het onderhoud, het gereedschap en het energieverbruik van die machine, gedeeld door haar beschikbare uren. Een onderdeel dat zes minuten op een freesmachine van $40.000 doorbrengt en twee uur op een vijfassig bewerkingscentrum van $400.000 mag niet dezelfde prijs krijgen als een onderdeel waarbij dat omgekeerd is. Wanneer je overhead toewijst op basis van activiteit in plaats van een vast gemiddelde, zie je al snel welke opdrachten stilletjes andere opdrachten subsidiëren — en voor welke klanten je in feite betaalt om voor hen te mogen werken.

Hiervoor is geen enterprise-software nodig. Een spreadsheet met een machine-uurtarief per werkcentrum, elk kwartaal bijgewerkt naarmate je overheadcijfers veranderen, levert de meeste werkplaatsen al 90% van het voordeel op. De lat ligt niet bij verfijning — het gaat er simpelweg om kosten bij te houden per opdracht en per machine in plaats van per maand en per banksaldo.

Materiaal volgen van grondstof tot afgewerkt onderdeel

De tweede blinde vlek is voorraad. Het materiaal van een machinewerkplaats doorloopt drie afzonderlijke stadia, en elk daarvan moet zichtbaar zijn in je boekhouding — niet alleen in je hoofd of op een whiteboard op de werkvloer:

  1. Grondstoffen — staafmateriaal, gietstukken, plaat en ingekochte onderdelen die in het magazijn liggen, nog niet toegewezen aan een opdracht
  2. Onderhanden werk (OHW) — materiaal dat voor een opdracht is uitgehaald en waarop directe arbeid, machinetijd en overhead worden geboekt, maar dat nog geen afgewerkt, geïnspecteerd onderdeel is
  3. Gereed product — voltooide, geïnspecteerde onderdelen die wachten op verzending of afhaling

Dit is geen academische kwestie. Uitval en herbewerking vinden plaats in de OHW-fase, en als je de kostenopbouw per opdracht niet bijhoudt terwijl die door de werkplaats beweegt, verdampt een afgekeurd onderdeel gewoon als een onverklaard materiaalverschil aan het einde van de maand, in plaats van te verschijnen als "Opdracht #4471 verloor $340 aan voorraad en 3 uur machinetijd aan een afgebroken gereedschap." Het ene vertelt je wat er is gebeurd en stelt je in staat je proces te verbeteren. Het andere maakt je cijfers gewoon een beetje slechter, om redenen die niemand kan verklaren.

In de praktijk betekent dit dat je rekeningschema grondstoffen, OHW en gereed product als afzonderlijke categorieën moet scheiden in plaats van alles in één enkele post "voorraad" of "kostprijs verkopen" te proppen, en dat je opdrachtkostprijsberekening de OHW bijna in realtime moet bijwerken naarmate arbeid, machine-uren en materiaal worden verbruikt — niet achteraf, eenmaal per maand, uit het geheugen.

Opdrachten prijzen zodat je je marge echt kent

Zodra je machine-uurtarieven per werkcentrum en een nette opdrachtkostprijsberekening hebt, wordt prijsbepaling een opbouw in plaats van een gok:

Materiaal (werkelijke voorraadkost, inclusief uitvalmarge) + Arbeid (uren × belast tarief) + Machinetijd (uren × werkcentrumtarief) + Externe bewerking (werkelijke leverancierskost) + Toegewezen algemene kosten + Streefmarge = Offerte

Wat mensen het vaakst verkeerd doen, is de opsteltijd bij complexe geometrieën. Een onderdeel met vijf opstellingen en strakke positietoleranties kan gemakkelijk drie tot vier keer langer duren om op te stellen dan een eenvoudig prismatisch onderdeel, en als je ramingsproces een ruw gemiddelde per onderdeel gebruikt in plaats van een echte opstelraming, zul je je moeilijkste opdrachten structureel te laag offreren — juist de opdrachten die de hoogste marge zouden moeten dragen, omdat concurrenten het minst goed uitgerust zijn om ze uit te voeren.

De oplossing is een terugkoppelingslus: vergelijk na verzending van een opdracht de werkelijke uren en werkelijke kosten met de offerte. Doe dit consequent en je zult merken dat een klein aantal opdrachten — vaak dezelfde handvol onderdeelnummers of dezelfde klant — verantwoordelijk is voor het grootste deel van je margeverlies. Werkplaatsen die er een gewoonte van maken elk kwartaal hun tien minst winstgevende opdrachten te bekijken, vinden het patroon meestal snel: het is zelden willekeurig. Meestal gaat het om een specifieke tolerantieklasse, een specifiek materiaal, of de revisiegewoonten van een specifieke klant.

Branchebenchmarking geeft een idee van de spreiding die dit veroorzaakt. In het Top Shops-benchmarkonderzoek van Modern Machine Shop rapporteren de best presterende werkplaatsen een spilbenutting van ongeveer 72%, tegenover circa 60% bij doorsnee werkplaatsen, met nieuwere apparatuur (gemiddelde CNC-leeftijd van 7 jaar tegenover 10). Dat verschil tussen "top" en "doorsnee" is niet in de eerste plaats een talentkloof — het is een meetkloof. Werkplaatsen die hun werkelijke kosten per machine-uur kennen, nemen betere beslissingen over welke opdrachten ze nastreven, welke ze laten schieten, en waar ze in nieuwe apparatuur investeren, omdat ze het rendement kunnen zien in plaats van ernaar te gissen.

Waar de boekhouding hierin past

Niets van dit alles werkt als je onderliggende boekhouding niet op elk moment kan antwoorden op de vraag "wat heeft deze opdracht echt gekost?" Dat betekent dat je boekhouding kostenregistratie op opdrachtniveau moet ondersteunen — het koppelen van arbeid, materiaal, machinetijd en externe diensten aan een opdracht of werkorder, niet alleen aan een grootboekrekening — en dat grondstoffen, OHW en gereed product netjes gescheiden moeten blijven, zodat een uitvalgebeurtenis verschijnt als een traceerbaar verschil in plaats van te verdwijnen in een maandelijks afrondingsverschil.

Dit is precies het soort gestructureerde, controleerbare administratie waarvoor plain-text accounting uitermate geschikt is. Beancount.io laat je opdrachtkosten, machine-uurtoewijzingen en voorraadstadia bijhouden als duidelijk getagde, versiebeheerde transacties in plaats van ondoorzichtige boekingen begraven in een propriëtaire database — dus wanneer je wilt weten of Opdracht #4471 daadwerkelijk winst heeft opgeleverd, staat het antwoord in je grootboek, niet in je geheugen. Je kunt de documentatie raadplegen voor hoe je een rekeningschema rond opdrachtkostprijsberekening structureert, of Fava verkennen om de winstgevendheid per opdracht en werkcentrum te visualiseren zodra de data er is.

Vereenvoudig je financieel beheer

Een winstgevende machinewerkplaats runnen gaat niet over harder werken op de werkvloer — het gaat over weten welke opdrachten het daadwerkelijk waard zijn om uit te voeren. Beancount.io biedt plain-text accounting die je volledige transparantie en controle geeft over je financiële data, met de controleerbaarheid om elke dollar aan kosten terug te traceren naar de opdracht die hem heeft veroorzaakt. Ga gratis aan de slag en ontdek waarom fabrikanten overstappen op plain-text accounting om eindelijk hun echte marges te zien.

Dit artikel delen