Wenn du wissen willst, wie aus einem Einkaufspreis ein verkaufbarer Listenpreis wird – und warum ein Händler seine Ware spürbar teurer abgibt, als sie ihn gekostet hat – dann brauchst du die Handelskalkulation. Sie ist Pflichtstoff für die IHK-Prüfung (WiSo) und gleichzeitig knallhart praktisch, sobald du selbst Ware ein- und verkaufst. Hier kommt das komplette Schema, die drei Kalkulationsrichtungen, die wichtigen Kennzahlen – und eine PowerShell-Funktion, die dir die Rechnerei abnimmt.
Ziel
Du sollst nach diesem Beitrag:
- das Handelskalkulationsschema sicher von oben nach unten durchrechnen können,
- Vorwärts-, Rückwärts- und Differenzkalkulation auseinanderhalten,
- Kalkulationszuschlag, Kalkulationsfaktor und Handelsspanne berechnen und unterscheiden,
- und das Ganze einmal als wiederverwendbares PowerShell-Tool in der Hand haben.
Worin unterscheidet sich die Handelskalkulation?
Ein Produktionsbetrieb zerlegt seine Kosten fein in Material- und Fertigungsgemeinkosten, Verwaltung und Vertrieb (klassische Zuschlagskalkulation). Ein Händler produziert nichts – er kauft fertige Ware ein und verkauft sie weiter. Deshalb werden seine Gemeinkosten nicht aufgesplittet, sondern in einem einzigen Satz zusammengefasst: den Handlungskosten (über den Handlungskostenzuschlagssatz).
Der Handlungskostenzuschlag gibt das prozentuale Verhältnis der Handlungskosten zum Wareneinsatz (Bezugspreis) an.
Das macht die Handelskalkulation zu einer schlanken Zuschlagskalkulation – ideal für Handel und E‑Commerce.
Das Handelskalkulationsschema
Das Schema läuft vom Listeneinkaufspreis (was der Lieferant offiziell aufruft) bis zum Listenverkaufspreis (was am Ende auf deinem Preisschild steht). Wichtig: Es wird immer mit Nettopreisen gerechnet – die Mehrwertsteuer bleibt außen vor.
| # | Position | Rechenweg | Bezug |
|---|---|---|---|
| 1 | Listeneinkaufspreis | 100 % | Grundwert Einkauf |
| 2 | − Lieferrabatt | − a % | vom Listeneinkaufspreis |
| 3 | = Zieleinkaufspreis | 100 % − a % | |
| 4 | − Lieferskonto | − b % | vom Zieleinkaufspreis |
| 5 | = Bareinkaufspreis | 100 % − b % | |
| 6 | + Bezugskosten | + € | Fracht, Verpackung, Zoll … |
| 7 | = Bezugspreis (Einstandspreis) | Wareneinsatz | |
| 8 | + Handlungskosten | + c % | vom Bezugspreis |
| 9 | = Selbstkosten | ||
| 10 | + Gewinn | + d % | von den Selbstkosten |
| 11 | = Barverkaufspreis | ||
| 12 | + Kundenskonto | + e % | verminderter Grundwert |
| 13 | = Zielverkaufspreis | ||
| 14 | + Kundenrabatt | + f % | verminderter Grundwert |
| 15 | = Listenverkaufspreis | 100 % | Grundwert Verkauf |
Merke – die Stolperfalle bei Skonto & Rabatt im Verkaufsteil: Kundenskonto, Vertreterprovision und Kundenrabatt werden nicht auf den darunterliegenden Wert aufgeschlagen, sondern sind Prozente vom darüberliegenden Preis (Zielverkaufspreis bzw. Listenverkaufspreis = 100 %). Du rechnest also „im Hundert“ mit vermindertem Grundwert:
Barverkaufspreis = Zielverkaufspreis × (100 % − e %)
→ Zielverkaufspreis = Barverkaufspreis ÷ (100 % − e %)
Zielverkaufspreis = Listenverkaufspreis × (100 % − f %)
→ Listenverkaufspreis = Zielverkaufspreis ÷ (100 % − f %)
Die drei Kalkulationsrichtungen

| Richtung | Bekannt | Gesucht | Leitfrage |
|---|---|---|---|
| Vorwärtskalkulation | Einkauf / Einstand | Verkaufspreis | „Was darf / muss ich verlangen?“ |
| Rückwärtskalkulation | Verkaufspreis (Markt) | max. Einstandspreis | „Was darf die Ware kosten?“ |
| Differenzkalkulation | Einkauf und Verkauf | Gewinn | „Was bleibt mir übrig?“ |
Die Rückwärtskalkulation ist im Handel oft die ehrlichste: Der Markt diktiert den Preis (gerade bei vergleichbaren Produkten), und du rechnest zurück, wie viel du maximal im Einkauf zahlen darfst, ohne dass die Marge kippt.
Durchgerechnetes Beispiel (Vorwärtskalkulation)
Ein Einzelhändler kauft ein Gerät zum Listeneinkaufspreis von 512,64 € (netto). Konditionen: 10 % Lieferrabatt, 2 % Lieferskonto, 5,40 € Bezugskosten, 43 % Handlungskosten, 15 % Gewinn, 2 % Kundenskonto, 10 % Kundenrabatt.
| Position | Satz | Betrag |
|---|---|---|
| Listeneinkaufspreis | 100 % | 512,64 € |
| − Lieferrabatt | 10 % | 51,26 € |
| = Zieleinkaufspreis | 461,38 € | |
| − Lieferskonto | 2 % | 9,23 € |
| = Bareinkaufspreis | 452,15 € | |
| + Bezugskosten | 5,40 € | |
| = Bezugspreis (Einstand) | 457,55 € | |
| + Handlungskosten | 43 % | 196,75 € |
| = Selbstkosten | 654,30 € | |
| + Gewinn | 15 % | 98,15 € |
| = Barverkaufspreis | 752,45 € | |
| + Kundenskonto | 2 % | 15,36 € |
| = Zielverkaufspreis | 767,81 € | |
| + Kundenrabatt | 10 % | 85,31 € |
| = Listenverkaufspreis | 853,12 € |
Kleiner Realitäts-Check: Je nachdem, ob du jeden Zwischenschritt rundest oder mit allen Nachkommastellen durchrechnest, weicht der Endwert um ein, zwei Cent ab (hier: 853,12 € bei schrittweiser Rundung). In der Prüfung gilt i. d. R. die schrittweise gerundete Variante.
Die drei Kennzahlen: Zuschlag, Faktor, Spanne
Aus genau diesem Beispiel lassen sich drei Kennzahlen ableiten, die ständig verwechselt werden. Der Rohgewinn ist dabei die Differenz zwischen Bezugspreis und Listenverkaufspreis:
Rohgewinn = Listenverkaufspreis − Bezugspreis
= 853,12 € − 457,55 € = 395,57 €
| Kennzahl | Formel | Aussage | Ergebnis |
|---|---|---|---|
| Kalkulationszuschlag | Rohgewinn ÷ Bezugspreis × 100 | Aufschlag auf den Einkauf | 86,45 % |
| Kalkulationsfaktor | Listenverkaufspreis ÷ Bezugspreis | Multiplikator Einkauf → Verkauf | 1,8645 |
| Handelsspanne | Rohgewinn ÷ Listenverkaufspreis × 100 | Rohgewinn-Anteil am Verkauf | 46,37 % |
Eselsbrücke: Zuschlag und Faktor schauen auf den Einkauf (Nenner = Bezugspreis), die Handelsspanne schaut auf den Verkauf (Nenner = Listenverkaufspreis). Mit dem Faktor sparst du dir das ganze Schema: Einstand × 1,8645 = Listenverkaufspreis (netto).
Bonus: Handelskalkulation als PowerShell-Funktion
Damit du nicht jedes Mal die Tabelle von Hand rechnest, hier eine kleine Vorwärtskalkulation als Funktion. Sie rundet schrittweise (prüfungskonform) und gibt das komplette Schema aus.
<#
.NOTES
Name: PS_Handelskalkulation_Vorwaerts
Author: Andreas Bowitz
Version: 0.1
LastUpdated: 2026-Jun-03
.SYNOPSIS
Berechnet die Vorwaertskalkulation vom Listeneinkaufspreis bis zum
Listenverkaufspreis (netto, ohne USt) nach dem Handelskalkulationsschema.
.EXAMPLE
Get-Handelskalkulation -Listeneinkaufspreis 512.64 -LieferrabattProz 10 `
-LieferskontoProz 2 -Bezugskosten 5.40 -HandlungskostenProz 43 `
-GewinnProz 15 -KundenskontoProz 2 -KundenrabattProz 10
#>
function Get-Handelskalkulation {
[CmdletBinding()]
param(
[Parameter(Mandatory)] [double] $Listeneinkaufspreis,
[double] $LieferrabattProz = 0,
[double] $LieferskontoProz = 0,
[double] $Bezugskosten = 0,
[Parameter(Mandatory)] [double] $HandlungskostenProz,
[Parameter(Mandatory)] [double] $GewinnProz,
[double] $KundenskontoProz = 0,
[double] $KundenrabattProz = 0
)
# Hilfsfunktion: kaufmaennisch auf 2 Nachkommastellen runden
function r([double]$x) { [math]::Round($x, 2, [MidpointRounding]::AwayFromZero) }
# --- Einkaufsteil (Aufschlag/Abschlag vom Grundwert) ---
$lieferrabatt = r($Listeneinkaufspreis * $LieferrabattProz / 100)
$zieleinkauf = r($Listeneinkaufspreis - $lieferrabatt)
$lieferskonto = r($zieleinkauf * $LieferskontoProz / 100)
$bareinkauf = r($zieleinkauf - $lieferskonto)
$bezugspreis = r($bareinkauf + $Bezugskosten)
# --- Selbstkosten & Gewinn ---
$handlungsk = r($bezugspreis * $HandlungskostenProz / 100)
$selbstkosten = r($bezugspreis + $handlungsk)
$gewinn = r($selbstkosten * $GewinnProz / 100)
$barverkauf = r($selbstkosten + $gewinn)
# --- Verkaufsteil: verminderter Grundwert ("im Hundert") ---
$zielverkauf = r($barverkauf / (1 - $KundenskontoProz / 100))
$kundenskonto = r($zielverkauf - $barverkauf)
$listenverkauf = r($zielverkauf / (1 - $KundenrabattProz / 100))
$kundenrabatt = r($listenverkauf - $zielverkauf)
# --- Kennzahlen ---
$rohgewinn = r($listenverkauf - $bezugspreis)
$zuschlag = r($rohgewinn / $bezugspreis * 100)
$faktor = [math]::Round($listenverkauf / $bezugspreis, 4)
$spanne = r($rohgewinn / $listenverkauf * 100)
[PSCustomObject][ordered]@{
Listeneinkaufspreis = $Listeneinkaufspreis
Lieferrabatt = $lieferrabatt
Zieleinkaufspreis = $zieleinkauf
Lieferskonto = $lieferskonto
Bareinkaufspreis = $bareinkauf
Bezugskosten = $Bezugskosten
Bezugspreis = $bezugspreis
Handlungskosten = $handlungsk
Selbstkosten = $selbstkosten
Gewinn = $gewinn
Barverkaufspreis = $barverkauf
Kundenskonto = $kundenskonto
Zielverkaufspreis = $zielverkauf
Kundenrabatt = $kundenrabatt
Listenverkaufspreis = $listenverkauf
Kalkulationszuschlag = "$zuschlag %"
Kalkulationsfaktor = $faktor
Handelsspanne = "$spanne %"
}
}
Aufruf mit den Beispielwerten von oben:
Get-Handelskalkulation -Listeneinkaufspreis 512.64 -LieferrabattProz 10 `
-LieferskontoProz 2 -Bezugskosten 5.40 -HandlungskostenProz 43 `
-GewinnProz 15 -KundenskontoProz 2 -KundenrabattProz 10 | Format-List
→ liefert u. a. Bezugspreis = 457,55, Selbstkosten = 654,30, Listenverkaufspreis = 853,12, Kalkulationsfaktor = 1,8645.
Praxisbezug: Warum das im (Online-)Handel zählt
Wer Ware handelt – ob Drucker, Notebooks oder Sammelkarten – steht vor genau dieser Rechnung. Drei typische Fälle:
- Vorwärts: Booster-Display im Einkauf, du willst deinen Listenpreis bestimmen → Schema von oben nach unten.
- Rückwärts: Der Marktpreis einer Karte steht fest (z. B. aus einer Preisquelle) → du rechnest zurück, was dein maximaler Einstand sein darf, damit Handlungskosten und Wunschmarge noch passen. Genau hier setzt der Kalkulationsfaktor an:
Marktpreis ÷ 1,8645 = max. Einstand(bei gleicher Kostenstruktur). - Differenz: Ware ist eingekauft, Verkaufspreis ist gesetzt → du prüfst, was tatsächlich an Gewinn übrig bleibt.
Nicht vergessen: Die ganze Kalkulation läuft netto. Die Umsatzsteuer kommt erst danach obendrauf bzw. wird im B2B durchgereicht – sie ist kein Bestandteil der Preiskalkulation.
Fazit: Die Handelskalkulation ist eine schlanke Zuschlagskalkulation mit nur einem Gemeinkostensatz – wer das Schema und die drei Kennzahlen (Zuschlag, Faktor, Spanne) sauber trennt, kalkuliert Verkaufspreise in der Prüfung und im echten Lager fehlerfrei.
