Kanaalkannibalisatie is zo’n ecommerceprobleem dat achteraf heel logisch klinkt en in de wekelijkse meeting juist irritant vaag voelt. Amazon groeit. Shopify daalt. bol.com converteert beter, maar dezelfde SKU heeft ineens korting nodig om direct te verkopen. Google Shopping lijkt efficiënt, Amazon Ads lijkt efficiënt en finance vraagt zich ondertussen af waarom de totale contributiemarge nauwelijks beweegt.
De fout die ik bij multi-channel merkeigenaren vaak zie, noem ik elke kanaalwinst behandelen alsof die incrementeel is. Een team ziet Amazon.de met €18.000 per maand groeien nadat het Sponsored Products-budget is verhoogd. Fijn. Alleen daalt branded search op Shopify met €7.500, verliest bol.com €4.200 op dezelfde productfamilie en stijgt het blended retourpercentage omdat Amazon meer proefkopers aantrekt. Het kanaaldashboard zegt “groei”. Het businessdashboard zegt: “we hebben betaald om dezelfde vraag via een duurdere route te laten lopen”.
Mijn standpunt: kanaalkannibalisatie is geen reden om marketplaces te vermijden. Dat is de luie conclusie. Amazon, bol.com, Walmart, TikTok Shop en Mirakl-retailers kunnen allemaal echte nieuwe vraag creëren. De betere vraag is: welk deel van de kanaalgroei is nieuwe vraag, en welk deel was vraag die je al had?
Deze gids is geschreven voor merkeigenaren die verkopen via Amazon, bol.com, Shopify, Walmart, TikTok Shop, Kaufland of Mirakl-retailers, meestal vanaf ongeveer €1,5K maandelijkse ad spend of 1.000 orders per maand. Op dat niveau is kannibalisatie geen theoretisch risico meer. Het wordt een wekelijkse allocatievraag: waar moet voorraad heen, waar mogen ads schalen, waar moet je kortingen beschermen en waar int een marketplace vooral tol op een order die waarschijnlijk toch al was gekomen?
Wat bestaande adviezen goed doen
Het huidige onderzoeksbeeld is nuttig, maar stopt vaak net te vroeg. DataHawk maakt het sterkste analyticsargument: marketplace-data zit verspreid over Amazon, Walmart, Shopify, advertentieplatformen en spreadsheets. Teams hebben daarom uniforme dashboards, alerts en productgerichte profit-overlays nodig in plaats van exportbestanden die elkaar tegenspreken. Hun content over advertising analytics benoemt ook terecht dat ROAS en TACoS lastig over kanalen te vergelijken zijn als attributievensters, valuta en kosteninputs niet gelijkgetrokken worden.
MerchantSpring beschrijft de operationele pijn goed. Marketplace-metrics raken versnipperd zodra sellers meer landen en platformen toevoegen. Impressions, CTR, sales performance, seller health, voorraad en winstgevendheid leven in aparte omgevingen. Analyse wordt dan een tijdvreter. Hun punt is simpel en terecht: professionele sellers hebben centrale marketplace-reporting nodig om betere beslissingen te nemen.
Jungle Scout, Helium 10, sellerboard en SellerApp behandelen Amazon-winstgevendheid elk vanuit een eigen hoek. Jungle Scout kijkt naar sales analytics, profit overview, productniveau PPC-kosten en P&L-overzichten. Helium 10 positioneert profit tracking als dashboard voor omzet, nettowinst, refunds en productbeslissingen. sellerboard is sterk in verborgen Amazon-kosten zoals retouren, low-inventory fees, reimbursements en gemiste winst door stockouts. SellerApp behandelt Amazon analytics, PPC-optimalisatie, keyword performance en SKU-level profit visibility.
De artikelen en video’s over kanaalkannibalisatie voegen daar een belangrijke laag aan toe. Ze waarschuwen dat Amazon, Shopify, Google, Meta en marketplace ads op dezelfde klant kunnen bieden. Ze behandelen overlap, branded search, Amazon off-site placements, assortimentsverschillen en prijsarchitectuur. Een goed punt uit die bredere discussie: stoppen met Amazon lost het probleem meestal niet op. Vaak creëer je vooral reseller-risico en verlies je waardevolle data.
De basis is er dus: breng data samen, bereken winst goed, geef kanalen een rol en kijk niet alleen naar omzet.
Wat meestal mist
Veel content behandelt kannibalisatie nog als een marketing-overlap probleem: twee kanalen mikten op dezelfde shopper, dus spend werd verspild. Dat klopt, maar het is niet compleet.
De dure vorm van kannibalisatie ontstaat wanneer de operationele beperkingen van een SKU meeverhuizen met de order. Een order neemt niet alleen omzet mee. Een order neemt fulfilmentkosten, marketplacecommissie, retourkans, advertentiekosten, cash timing, review-impact, voorraaddruk en toekomstige klanttoegang mee. Als dezelfde vraag van Shopify naar Amazon verschuift, verandert het margeprofiel. Als vraag van bol.com naar een Mirakl-retailer gaat met strengere servicelevels, verandert het operationele risico. Als vraag van Amazon.nl naar Amazon.de verschuift, kunnen btw, fulfilment en retourkosten opnieuw anders uitpakken.
Daarom moet een dashboard voor kanaalkannibalisatie drie vragen beantwoorden, niet één:
- Vraag: groeiden de totale orders van de productfamilie, of pakte één kanaal bestaande vraag af?
- Economie: steeg de behouden contributiemarge na ads, fees, fulfilment, retouren en kortingen?
- Capaciteit: gebruikte het kanaal voorraad, cash of operationele aandacht die elders meer had opgeleverd?
Kan je dashboard die drie vragen niet beantwoorden, dan beloon je al snel het kanaal met het luidste attributiemodel. Sneu voor de spreadsheet, maar precies zo ontstaan winstmargalekken.
De cannibalisatiescore: een praktisch model
Begin bij een productfamilie, niet bij een kanaal. Een shopper denkt niet in SKU’s, ASINs en EANs. Die denkt: “die blauwe lunchbox”, “die magnesium gummies”, “die draadloze mini-stofzuiger”. Je analytics moeten daarom marketplace-listings, Shopify-varianten, bundels en landenversies groeperen in één commerciële familie.
Score daarna elke SKU-kanaalcombinatie op vier signalen.
1. Baseline demand
Bouw een baseline van vier tot acht weken voor elke productfamilie vóór de kanaalwijziging. Gebruik orders, omzet én contributiemarge, niet alleen sessies of clicks. Neem seizoenspatronen mee als je die hebt. Een zonnebrandmerk in juni heeft een andere baseline nodig dan een keukenmerk in februari.
2. Transfer rate
Meet of groei in het ene kanaal samenvalt met daling in een ander kanaal voor dezelfde productfamilie. Dit is geen perfecte attributie. Het is een operatorsignaal. Als Amazon 300 units wint en Shopify 220 units verliest terwijl de totale familievraag nauwelijks stijgt, ga dan uit van transfer totdat je het tegendeel bewijst.
3. Margin delta
Vergelijk contributiemarge per order per kanaal. Neem marketplacecommissie, fulfilment, payment costs, retourkosten, advertentiekosten, kortingen en kanaalspecifieke service fees mee. Een order van €40 op Shopify en een order van €40 op Amazon zijn niet hetzelfde beestje. De ene laat misschien €17,20 contributiemarge over; de andere €10,80.
4. Capacity cost
Geef voorraad en cash een score. Als een kanaal de laatste 600 units van een product opslokt die elders winstgevender hadden verkocht, is ROAS niet genoeg bewijs. Het kanaal gebruikte schaarse voorraad. Schaarse voorraad verdient een hogere beslisdrempel.
FiveX is hier praktisch omdat het platform marketplace sales, advertising, product profitability en inventory in één overzicht samenbrengt. In plaats van Amazon Ads, bol-rapporten, Shopify-exports en voorraadbestanden los te controleren, zie je of een SKU-kanaalcombinatie vandaag commerciële toestemming heeft om te schalen.
Scenario 1: North Sea Hydration en de Amazon-“winst”
Stel: North Sea Hydration verkoopt elektrolytensticks via Shopify, Amazon.de en bol.com. In mei verhoogt het team Amazon Sponsored Products van €2.500 naar €5.000 omdat branded en category campaigns een ROAS van 4,1 laten zien. Amazon-omzet stijgt van €42.000 naar €61.000. Champagne? Misschien één voorzichtig glas.
De productfamilie-view vertelt een koeler verhaal:
- Amazon-omzet: +€19.000
- Shopify-omzet: -€8.400
- bol.com-omzet: -€3.600
- Totale productfamilie-omzet: +€7.000
- Amazon contributiemarge per order: €9,20
- Shopify contributiemarge per order: €15,80
- Amazon retour/refund-impact: 4,5% van omzet versus 2,1% op Shopify
Het Amazon-dashboard zegt dat €2.500 extra ad spend €19.000 omzet opleverde. De familieweergave zegt dat ongeveer €12.000 daarvan mogelijk verschoof vanuit kanalen met hogere marge. Erger nog: de incrementele €7.000 kwam via een route met lagere marge. Na ads en retouren steeg de behouden contributiemarge maar met €820.
De juiste actie is niet “Amazon uitzetten”. Amazon blijft een discovery-kanaal. De juiste actie is campagnerollen splitsen. Houd non-branded category campaigns live voor acquisitie, cap branded defence, sluit termen uit waarop Shopify al winstgevend converteert en reserveer voorraad voor de directe subscription pack. In FiveX horen marketplace ad spend, SKU-marge en voorraadguardrails in dezelfde beslisview te zitten. Amazon krijgt budget waar het nieuwe kopers toevoegt. Niet waar het twee keer betaald krijgt voor vraag die Shopify al had verdiend.
Scenario 2: LumaLift Home en de bol-kortingsval
LumaLift Home verkoopt een draadloze bureaulamp via Shopify, bol.com en een Franse Mirakl-retailer. De lamp kost €49,95. Shopify verkoopt normaal 900 units per maand met €16,40 contributiemarge. bol.com verkoopt 650 units met €11,70 contributiemarge. De Mirakl-retailer verkoopt 220 units met €9,90 contributiemarge, maar geeft toegang tot een nieuwe B2B-doelgroep.
In de eerste week van een back-to-schoolcampagne duwt bol.com het team richting een promo van €44,95. bol-orders stijgen van 160 naar 310 units. Dat oogt sterk. Maar Shopify-orders dalen van 225 naar 150 units en de Mirakl-retailer vertraagt omdat gedeelde magazijnvoorraad onder de replenishment-drempel zakt.
- bol incrementele units: +150
- Shopify verloren units: -75
- Mirakl verloren units: -35
- Netto nieuwe units: +40
- Promomarge op bol: €7,10 per order
- Verloren Shopify-marge: 75 × €16,40 = €1.230
- Verloren Mirakl-marge: 35 × €9,90 = €346,50
- Nieuwe bol-marge: 150 × €7,10 = €1.065
De campagne voegde orders toe en verloor toch contributiemarge. Dat is de klassieke kortingsval: de marketplace viert velocity, terwijl de productfamilie marge en voorraaddekking verliest. De oplossing is een kanaalpermissieregel: bol-promoties mogen alleen wanneer netto voorraaddekking boven 45 dagen ligt, Shopify geen full-price e-mailsequence draait en de verwachte margin delta positief blijft na verdrongen orders.
FiveX helpt door product profitability, channel sales en stock analytics te combineren. Het doel is niet om bol.com slecht neer te zetten. Het doel is weten wanneer bol.com een promo-SKU verdient, wanneer Shopify de premium bundle moet houden en wanneer Mirakl voorraad nodig heeft omdat de B2B-klant echt incrementeel is.
Scenario 3: Atlas Kitchen en de valse TikTok-piek
Atlas Kitchen lanceert een TikTok Shop creator push voor een compacte blender. Eén creatorvideo brengt 480 orders in vier dagen. Het TikTok-dashboard toont €23.040 omzet, 2,9 ROAS en 12% creatorcommissie. Iedereen is blij omdat het kanaal eindelijk “werkt”.
Dan komt de multi-channel analytics-view binnen. De organische Amazon-rank voor dezelfde blender verbetert niet. Shopify paid social-conversies dalen in dezelfde periode met 95 orders. Amazon Sponsored Products blijft draaien en geeft €1.100 uit terwijl voorraad naar TikTok fulfilment wordt getrokken. Het verwachte retourpercentage op TikTok is 11%, tegenover 5% op Amazon.
Hier zit de kannibalisatie niet alleen in customer overlap. Dit is voorraad- en operationele kannibalisatie. TikTok creëerde deels nieuwe vraag, maar gebruikte ook voorraad, trok aandacht uit fulfilment en liet winstgevende Amazon ads doorlopen terwijl beschikbaarheid zwakker werd.
De slimmere regel: creatorpieken moeten eerst een inventory permission check triggeren voordat paid amplification opschaalt. Daalt voorraaddekking onder 21 dagen, dan pauzeert TikTok-budget, blijft Amazon-defence alleen live voor termen met hoge marge en wordt replenishment opnieuw geprioriteerd op contributiemarge per beschikbare unit. Dat is precies het soort operationele logica dat multi-channel analytics moet ondersteunen.
Zo bouw je het dashboard
Een goed dashboard voor kanaalkannibalisatie hoeft niet enorm te zijn. Het moet op het juiste niveau werken: productfamilie × kanaal × week.
- Omzet en orders: per marketplace, land en fulfilmentroute.
- Contributiemarge: omzet minus marketplace fees, fulfilment, payment fees, COGS, retouren, kortingen en ad spend.
- Ad role: branded defence, generic discovery, competitor conquesting, retargeting of promosupport.
- Klantsignaal: new-to-brand waar beschikbaar, eerste order versus herhaalaankoop, subscription of returning customer gedrag.
- Voorraaddruk: days of supply, inbound inventory, stockout risk en kanaalreservering.
- Transfer warning: één kanaal omhoog, ander kanaal omlaag, totale familiemarge vlak of slechter.
Maak daarna drie simpele labels:
- Incremental: totale familiecontributie groeit en voorraaddruk blijft acceptabel.
- Transfer: kanaalomzet groeit, maar een ander kanaal daalt en totale familiemarge beweegt nauwelijks.
- Destructive: kanaalomzet groeit terwijl totale familiecontributie, voorraaddekking of cash timing verslechtert.
Hier moet FiveX vooral praktisch voelen. Het platform kan marketplace-data, advertentieprestaties, product profitability en inventory insights koppelen zodat iedereen naar dezelfde commerciële waarheid kijkt. De ad manager ziet welke campagnes spend verdienen. Operations ziet welk kanaal voorraad verdient. Finance ziet of omzet ook behouden contributiemarge werd. Er wordt minder geruzied. Een klein wonder.
De operatorregel: straf kanalen niet, geef ze een taak
Het doel is niet om één perfect kanaal te kronen. Shopify is niet altijd beter omdat de marge hoger is. Amazon is niet altijd slechter omdat de fees hoger zijn. bol.com kannibaliseert niet automatisch direct sales omdat er een promotie draait. De taak is om elk kanaal een rol te geven en het kanaal op die rol af te rekenen.
Gebruik dit simpele operating model:
- Amazon: high-intent shoppers aantrekken, core listings verdedigen en categorievraag bewijzen, maar niet te veel betalen voor branded demand die elders al binnenkomt.
- Shopify: klantrelaties, subscriptions, bundels, e-mailwinst en premium positioning bezitten.
- bol.com: Benelux marketplace demand pakken en promo-elasticiteit testen, maar full-price direct momenten en voorraaddekking beschermen.
- Mirakl-retailers: retailer-specifieke doelgroepen openen, maar servicelevels, payout timing en operationele complexiteit bewaken.
- TikTok Shop: vraagpieken en social proof creëren, maar alleen met inventory- en retourguardrails.
Zodra kanalen taken hebben, wordt kannibalisatie makkelijker te bespreken. Je vraagt niet meer of Amazon sales “gestolen” heeft. Je vraagt of Amazon zijn toegewezen taak uitvoerde tegen een contributiemarge die de business accepteert.
Tot slot
Multi-channel groei wordt rommelig omdat de klant zich niet aan jouw rapportagestructuur houdt. Die zoekt op Amazon, vergelijkt via Google, klikt op een TikTok-video, opent een e-mail en koopt waar het aanbod het makkelijkst voelt. Je dashboards moeten volwassener zijn dan die journey.
Kanaalkannibalisatie-analytics gaat niet over angst. Het gaat over eerlijkheid. Sommige marketplace-groei is echt incrementeel. Sommige groei is een nuttige trade-off. En sommige groei is gewoon dure orderverplaatsing met een mooie ROAS-hoed op.
Verkoop je via meerdere marketplaces en rangschikt je weekly meeting kanalen nog steeds op omzet? Begin dan met één productfamilie. Map elke SKU, bereken contributiemarge per kanaal, voeg voorraaddruk toe en label groei als incremental, transfer of destructive. Kun je dat voor één familie, dan kun je het voor de hele catalogus.
Dat is het verschil tussen “we verkopen overal” en “we weten waar de volgende winstgevende order moet gebeuren”. FiveX bestaat om die tweede zin elke week makkelijker te maken.