Hoe Zhang Yiming en ByteDance aanbevelingsalgoritmen en contentlogistiek combineerden om TikTok/Douyin op te schalen tot een wereldwijde aandachtsmotor.

Zhang Yiming (geboren 1983) is vooral bekend als oprichter van ByteDance, maar zijn verhaal gaat minder over beroemd ondernemerschap en meer over een specifieke productovertuiging.
Na zijn studie aan de Nankai University (waar hij van micro-elektronica naar software schakelde) vervulde hij rollen die hem blootstelden aan zoeken, feeds en consumenteninternet op schaal: bouwen bij reiszoek-startup Kuxun, een korte periode bij Microsoft China, en daarna het oprichten van een vroeg vastgoedproduct, 99fang.
Zhang’s kernvraag was eenvoudig: hoe koppel je snel de juiste informatie aan de juiste persoon, zonder hen veel werk te laten doen?
Vroegere internetproducten gingen ervan uit dat gebruikers zouden zoeken of portals en categorieën zouden volgen. Maar naarmate content explodeerde, verschoof de bottleneck van “niet genoeg informatie” naar “te veel informatie.” Zijn productthesis was dat software meer van het filteren moet overnemen—en dat continu moet doen—zodat de ervaring bij elke interactie verbetert.
Vanaf het begin beschouwde ByteDance personalisatie als een kernproductprimitive, niet als een feature die je later toevoegt. Die mindset komt terug in drie terugkerende keuzes:
Dit is een uiteenzetting van mechanismen, geen mythologie: hoe aanbevelingsalgoritmen, productontwerp en “contentlogistiek” samenwerken—en wat dat betekent voor makers, adverteerders en veiligheid op wereldschaal.
ByteDance begon niet met short video. Het begon met een eenvoudigere vraag: hoe help je mensen nuttige, interessante informatie te vinden wanneer er te veel van is?
Zhang Yiming’s vroege producten waren nieuws- en informatieapps die bedoeld waren om te leren waar elke gebruiker om gaf en de feed daar vervolgens op aan te passen.
Het doorbraakalproduct was Toutiao (een “headlines” app). In plaats van gebruikers te vragen uitgevers of vrienden te volgen, behandelde het content als voorraad en de feed als een gepersonaliseerde etalage.
Die framing was belangrijk omdat het het bedrijf dwong om de kernmachines vroeg te bouwen: content taggen, rangschikken en tevredenheid in realtime meten.
De meeste consumentenapps vertrouwden toen op een social graph—wie je kent bepaalt wat je ziet. ByteDance zette in op een interest graph—wat je kijkt, overslaat, leest, deelt en zoekt bepaalt wat je daarna ziet.
Die keuze maakte het product minder afhankelijk van netwerkeffecten bij lancering en meer afhankelijk van het snel “goed genoeg” krijgen van aanbevelingen.
Vanaf het begin zag ByteDance productbeslissingen als hypotheses. Features, layouts en rangschikkingsaanpassingen werden continu getest, en winnende varianten werden snel uitgerold.
Dit was niet alleen A/B-testen als gereedschap; het was een managementsysteem dat leersnelheid beloont.
Toen de aanbevelingsmotor werkte voor artikelen, was de stap naar rijkere formats een logische volgende stap. Video bood duidelijkere feedbacksignalen (kijktijd, herhalingen, voltooiing), snellere consumptie en een groter opwaarts potentieel als de feed consequent relevant bleef—waardoor Douyin en later TikTok mogelijk werden.
Gedurende het grootste deel van de mediahistorie was het probleem schaarste: er waren niet genoeg kanalen, uitgevers of makers om elke niche te vullen. Distributie was eenvoudig—zet de tv aan, lees de krant, bezoek een paar websites—en de “beste” content was wat door beperkte poorten kwam.
Nu is de bottleneck omgedraaid. Er is meer content dan een persoon kan evalueren, zelfs binnen één categorie. Dat maakt “te veel content” minder een creatieprobleem en meer een distributieprobleem: de waarde verschuift van het produceren van meer posts naar het snel helpen van de juiste kijker het juiste te vinden.
Chronologische feeds veronderstellen dat je al weet wie je moet volgen. Ze zijn geweldig om vrienden of een kleine groep makers bij te houden, maar ze falen wanneer:
Follower-gebaseerde ontdekking bevoordeelt ook incumbents. Zodra een paar accounts vroeg aandacht vangen, wordt groei moeilijker voor iedereen—ongeacht kwaliteit.
Als content overvloedig is, hebben platforms signalen nodig die “gezien” scheiden van “bevallen”. Tijd besteed is belangrijk, maar niet de enige aanwijzing. Voltooiingspercentage, herhalingen, pauzes, shares en acties als “niet geïnteresseerd” helpen nieuwsgierigheid van tevredenheid te onderscheiden.
In een broadcast-model betekent schalen het duwen van één hit naar miljoenen. In een gepersonaliseerd model betekent schalen het leveren van miljoenen verschillende “kleine hits” aan de juiste micropublieken.
De uitdaging is niet bereik—het is relevantie met snelheid, herhaaldelijk, voor iedere persoon.
De feeds van ByteDance (Douyin/TikTok) voelen magisch omdat ze snel leren. Maar het kernidee is eenvoudig: het systeem maakt herhaaldelijk een gok over wat je leuk zult vinden, kijkt wat je daarna doet, en past de volgende gok aan.
Zie de feed als een winkel met miljoenen items.
Kandidaatgeneratie is de “shortlist”-stap. Uit de enorme catalogus haalt het systeem een paar honderd of duizend video's die mogelijk bij je passen. Het gebruikt brede aanwijzingen: je taal, locatie, apparaat, accounts die je volgt, onderwerpen waar je mee hebt ingestemd, en wat vergelijkbare kijkers leuk vonden.
Ranking is de “definitieve ordening”-stap. Uit die shortlist voorspelt het welke video's je op dit moment het meest waarschijnlijk zult kijken en waarderen, en sorteert ze vervolgens. Kleine verschillen doen er veel toe: het verwisselen van twee video's kan bepalen wat je daarna kijkt, en dat verandert wat het systeem leert.
Het algoritme leest geen gedachten—het leest gedrag. Gangbare signalen zijn onder andere:
Belangrijk is dat het ook “negatieve” voorkeuren leert: wat je consequent overslaat, dempt of markeert als niet interessant.
Voor een nieuwe gebruiker begint het systeem met veilige, diverse keuzes—populaire content in je regio en taal, plus een mix van categorieën—om snel voorkeuren te ontdekken.
Voor een nieuwe video draait het vaak een gecontroleerde “trial”: laat het aan kleine groepen zien die waarschijnlijk geïnteresseerd zijn en vergroot de distributie als de betrokkenheid sterk is. Zo kunnen onbekende makers doorbreken zonder bestaand publiek.
Korte video's produceren veel feedback in minuten: veel views, veel swipes, veel voltooiingen. Die dichte stroom signalen helpt het model snel bij te werken en de lus tussen “testen” en “leren” te verkorten.
ByteDance kan A/B-tests draaien waarbij verschillende groepen licht verschillende rangschikkingsregels zien (bijvoorbeeld: shares zwaarder wegen dan likes). Als een variant betekenisvolle uitkomsten verbetert—zoals tevredenheid en zinvolle tijdsbesteding—wordt die de nieuwe standaard, en gaat de cyclus door.
De feed van ByteDance wordt vaak “verslavend” genoemd, maar wat er echt gebeurt is een compenserend feedbacksysteem. Elke swipe is zowel een keuze als een meting.
Wanneer je kijkt, wegveegt, liket, comment, opnieuw afspeelt of deelt, genereer je signalen die het systeem helpen raden wat het vervolgens moet tonen.
Een enkele view geeft op zichzelf weinig informatie. Maar miljoenen kleine acties—vooral terugkerende patronen—schetsen een helder beeld van wat jouw aandacht vasthoudt. Het platform gebruikt die signalen om:
Dit is het flywheel: engagement → betere matching → meer engagement. Naarmate de matching verbetert, besteden gebruikers meer tijd; die extra tijd levert meer data; die data verbetert de matching weer.
Als het systeem alleen maar “meer van wat werkte” achtervolgt, wordt je feed snel repetitief. Daarom bevatten de meeste aanbevelingssystemen opzettelijk exploratie—content die nieuw, aangrenzend of onzeker is.
Exploratie kan eruitzien als:
Goed gedaan houdt het de feed fris en helpt het gebruikers dingen te ontdekken waar ze niet naar zouden zoeken.
Een flywheel kan de verkeerde kant op draaien. Als de makkelijkste manier om aandacht te winnen sensatiezucht, verontwaardiging of extreme content is, kan het systeem dat overbelonen. Filterbubbels kunnen ontstaan als personalisatie te smal wordt.
Platforms balanceren gewoonlijk tevredenheid en nieuwigheid met een mix van diversiteitsregels, kwaliteitsdrempels en veiligheidsbeleid (hier later behandeld), plus pacing-controls zodat “hoog-arousal” content niet elke sessie domineert.
Als mensen over ByteDance praten wijzen ze meestal naar aanbevelingsalgoritmen. Maar er is een stillere kant die evenveel werk doet: contentlogistiek—het end-to-end proces om een video van de telefoon van een maker naar het juiste scherm van de kijker te krijgen, snel, veilig en herhaaldelijk.
Denk eraan als een supply chain voor aandacht. In plaats van magazijnen en vrachtwagens beheert het systeem:
Als een stap traag of onbetrouwbaar is, heeft het algoritme minder om mee te werken—en verliezen makers motivatie.
Een goed presterende feed heeft constant ‘verse voorraad’ nodig. ByteDance-achtige producten helpen makers vaker te posten door de productiekosten te verlagen: in-app templates, effecten, muziekfragmenten, bewerkingsshortcuts en begeleide prompts.
Dit zijn niet alleen leuke features. Ze standaardiseren formats (lengte, beeldverhouding, tempo) en maken videos makkelijker af te maken, wat de postfrequentie verhoogt en prestaties eenvoudiger vergelijkbaar maakt.
Na upload moeten video’s worden verwerkt naar meerdere resoluties en formaten zodat ze vloeiend afspelen op verschillende apparaten en netwerkomstandigheden.
Snelle verwerking is belangrijk omdat:
Betrouwbaarheid beschermt ook de sessie. Als de playback stottert, stoppen gebruikers met scrollen en verzwakt de feedbackloop.
Op schaal is moderatie geen enkele beslissing—het is een workflow. De meeste platforms gebruiken gelaagde stappen: automatische detectie (spam, naaktheid, geweld, auteursrechtelijk beschermde audio), risicoscoring en gerichte menselijke review voor randgevallen en beroepen.
Regels werken alleen als ze consistent worden uitgevoerd: duidelijke beleidsregels, training van reviewers, auditsporen, escalatiepaden en metingen (false positives, doorlooptijd, recidivisten).
Met andere woorden, handhaving is een operationeel systeem dat minstens zo snel moet evolueren als de content.
Het voordeel van ByteDance is niet alleen “het algoritme.” Het is hoe het product is gebouwd om de juiste signalen voor de feed te genereren—en om die signalen door te laten stromen.
Een groot aanbevelingssysteem heeft een stabiele toevoer nodig. TikTok/Douyin verlagen frictie met altijd-beschikbare camera, eenvoudig trimmen, templates, filters en een grote geluidsbibliotheek.
Twee ontwerppunten zijn belangrijk:
Meer makers die vaker posten betekent meer variatie voor de feed om te testen—en meer kansen om een match te vinden.
De full-screen speler verwijdert concurrerende UI-elementen en moedigt één duidelijke actie aan: swipe. Geluid-aan als standaard verhoogt emotionele impact en maakt trends draagbaar (een geluid wordt een gedeelde referentie).
Dit ontwerp verbetert ook de datakwaliteit. Als elke swipe een duidelijk ja/nee-signaal is, kan het systeem sneller leren dan in rommelige interfaces waar aandacht verdeeld is.
Remix-formaten veranderen “creëren” in “reageren.” Dat is belangrijk omdat replies context erven:
In de praktijk is remixen ingebouwde distributie—zonder volgers nodig te hebben.
Notificaties kunnen de lus heropenen (nieuwe reacties, posts van makers, live-evenementen). Streaks en vergelijkbare mechanismen kunnen retentie verhogen, maar ook mensen aanzetten tot compulsief controleren.
Een nuttige productles: geef de voorkeur aan betekenisvolle prompts (reacties, gevraagde follows) boven drukprompts (angst om een streak te verliezen).
Kleine keuzes—direct afspelen, minimale laadtijd, één primaire greep—maken de aanbevolen feed de standaard manier om te verkennen.
Het product toont je niet alleen content; het traint herhaald gedrag: open app → kijk → swipe → verfijn.
ByteDance vertaalde de app niet gewoon en noemde het internationaal. Ze behandelden globalisatie als zowel een productprobleem als een operating-system probleem: wat mensen leuk vinden is intens lokaal, maar de machine die het levert moet consistent zijn.
Lokalisatie begint met taal, maar gaat snel naar context—memes, muziek, humor en wat als “goed” tempo in een video telt.
Lokale makergemeenschappen zijn hier cruciaal: vroeg succes hangt vaak af van een kleine groep native makers die de toon zetten waar anderen zich aan spiegelen.
Teams lokaliseren doorgaans:
Naarmate gebruik groeit, wordt de feed een logistieke operatie. Regionale teams behandelen partnerships (labels, sportcompetities, media), makerprogramma’s en beleidsuitvoering die lokale wetgeving weerspiegelt.
Moderatie schaalt in lagen: proactieve filters, meldingen van gebruikers en menselijke review. Het doel is snelheid en consistentie—duidelijke overtredingen snel verwijderen en randgevallen met lokale expertise behandelen.
Global gaan betekent leven binnen app store regels en apparaatbeperkingen. Updates kunnen worden vertraagd door reviewprocessen, features kunnen per regio verschillen en low-end telefoons dwingen tot moeilijke keuzes over videokwaliteit, caching en datagebruik.
Distributie is geen marketingvoetnoot; het bepaalt wat het product betrouwbaar kan doen.
Trends kunnen binnen dagen opkomen en verdwijnen, terwijl beleidsontwikkeling en training weken duren. Teams overbruggen de kloof met “tijdelijke regels” voor opkomende formats, snelle handhavingsrichtlijnen en intensieve monitoring tijdens volatiele momenten—en zetten wat werkt later om in duurzaam beleid en tooling.
Voor meer over hoe de feed achter de schermen wordt ondersteund, zie de tekst “/blog/content-logistics-hidden-system-behind-the-feed”.
De feed van ByteDance wordt vaak beschreven als een “algoritme”, maar gedraagt zich meer als een marktplaats. Kijkers brengen vraag (aandacht). Makers leveren de voorraad (video’s). Adverteerders financieren het systeem door te betalen voor toegang tot die aandacht—zolang die voorspelbaar en veilig bereikt kan worden.
Makers uploaden niet alleen content; ze produceren het rauwe materiaal waar het aanbevelingssysteem mee kan experimenteren, distribueren en van leren.
Een constante stroom van verse posts geeft het platform meer “experimenten” om te draaien: verschillende onderwerpen, hooks, formats en doelgroepen.
In ruil bieden platforms incentives die gedrag sturen:
Merken geven meestal minder om virale toevalligheid en meer om herhaalbare uitkomsten:
Aanbeveling maakt het mogelijk dat nichegemeenschappen floreren zonder enorme volgersaantallen. Tegelijkertijd kan het snel aandacht concentreren in massatrends wanneer veel kijkers vergelijkbaar reageren.
Die dynamiek creëert strategische spanning voor makers: nichecontent kan loyaliteit opbouwen; deelnemen aan trends kan bereik laten exploderen.
Omdat distributie prestatiegebaseerd is, optimaliseren makers voor signalen die het systeem snel kan lezen: sterke openingen, duidelijke formats, seriegedrag en consistente posting.
Het beloont ook “leesbare” content—duidelijke onderwerpen, herkenbare audio en herhaalbare templates—omdat die makkelijker aan de juiste kijkers op schaal te matchen is.
De superkracht van ByteDance—feeds optimaliseren voor engagement—schept een ingebouwde spanning. Dezelfde signalen die een systeem vertellen “mensen kunnen hier niet mee stoppen” zeggen niet automatisch “dit is goed voor hen.” Op kleine schaal lijkt dat een UX-kwestie. Op TikTok/Douyin-schaal wordt het een vertrouwenskwestie.
Aanbevelingssystemen leren van wat gebruikers doen, niet van wat ze later wensen dat ze hadden gedaan. Snelle herhalingen, lange kijktijd en laat-nacht scrollen zijn makkelijk te meten. Spijt, angst en dwangmatig gebruik zijn dat niet.
Als een feed alleen is afgestemd op meetbaar engagement, kan het content overbelonen die verontwaardiging, angst of obsessie oproept.
Een paar voorspelbare risico’s duiken in markten op:
Dit hoeft geen kwaadwillende actoren binnen het bedrijf te vergen; het kan voortkomen uit gewone optimalisatie.
Mensen vragen vaak om een eenvoudig antwoord: “Waarom zag ik dit?” In de praktijk mixt ranking duizenden features (kijktijd, skips, versheid, apparaatcontext, makerhistorie) plus real-time experimenten.
Zelfs als een platform een lijst factoren deelt, zal dat niet netjes vertalen naar één menselijke reden voor een specifieke impressie.
Veiligheid is niet alleen moderatie achteraf. Het kan in het product en de operatie worden ingebouwd: frictie voor gevoelige onderwerpen, sterkere controls voor minderjarigen, diversificatie om repetitieve blootstelling te verminderen, limieten op late-night aanbevelingen en duidelijke tools om de feed te resetten of bij te stellen.
Operationeel betekent het goed getrainde reviewteams, escalatiepaden en meetbare veiligheids-KPI’s—niet alleen groeikpi’s.
Beleid over wat is toegestaan, hoe beroepen werken en hoe handhaving wordt geaudit beïnvloedt direct vertrouwen. Als gebruikers en toezichthouders het systeem ondoorzichtig of inconsistent vinden, wordt groei fragiel.
Duurzame aandacht vereist niet alleen mensen laten kijken, maar verdienen dat je toestemming hebt om terug te blijven komen in hun leven.
Het succes van ByteDance maakt “aanbevelingen + snel uitrollen” tot een eenvoudig recept. Het overdraagbare deel is niet een enkel model—het is het operating system rond discovery: korte feedbackloops, heldere metingen en serieuze investering in de contentpijp die die loops voedt.
Snelle iteratie werkt wanneer het gepaard gaat met meetbare doelen en korte leercycli. Behandel elke wijziging als een hypothese, ship klein en lees resultaten dagelijks—niet alleen per kwartaal.
Focus metrics op gebruikerswaarde, niet alleen tijd besteed. Voorbeelden: “sessies die eindigen met een follow”, “content opgeslagen/gedeeld”, “enquêtes over tevredenheid” of “retentie van makers.” Deze zijn lastiger dan ruwe kijktijd, maar sturen betere afwegingen.
Optimalisatie alleen voor engagement zonder guardrails. Als “meer minuten” de score is, beloon je uiteindelijk lage kwaliteit, polariserende of repetitieve content omdat die betrouwbaar plakt.
Geloof ook niet de mythe dat algoritmen redactionele oordelen overbodig maken. Discoverysystemen coderen altijd keuzes: wat te boosten, wat te beperken en hoe randgevallen te behandelen.
Begin met constraints, niet slogans:
Aanbevelingen hangen af van contentlogistiek: tooling, workflows en kwaliteitscontrole. Investeer vroeg in:
Als je budgetteert, prijs het hele systeem—modellen, moderatie en support—voordat je opschaalt ("/pricing").
Een praktische noot voor teams die software bouwen: veel van deze “systeem”-investeringen (dashboards, interne tools, workflow-apps) zijn eenvoudig snel te prototypen als je de build–measure–learn-lus kunt verkorten. Platforms zoals Koder.ai kunnen hier helpen door teams via een chatinterface webapps te laten vibe-coden, vervolgens broncode te exporteren of te deployen—handig om experimentdashboards, moderatiequeue-prototypen of creator-operations tooling op te zetten zonder lange traditionele bouwtrajecten.
Voor meer productdenken zoals dit, zie de tekst "/blog".
De kernproductthesis van ByteDance valt samen te vatten in een simpele vergelijking:
aanbevelingsalgoritmen + contentlogistiek + productontwerp = een schaalbare aandachtsmotor.
Het algoritme matcht mensen met waarschijnlijk interessante video’s. Het logistieksysteem zorgt dat er altijd iets te kijken is (aanbod, review, labeling, distributie, creatietools). En het productontwerp—full-screen afspelen, snelle feedbacksignalen, lage frictie creatie—zet elke view om in data die de volgende view verbetert.
Sommige belangrijke details blijven onduidelijk of moeilijk te verifiëren zonder interne toegang:
In plaats van te gokken, behandel publieke claims (van het bedrijf, critici of commentatoren) als hypotheses en zoek naar consistente bewijzen in disclosures, onderzoek en observeerbaar productgedrag.
Als je dieper wilt duiken zonder te technisch te worden, focus op deze onderwerpen:
Als je deze vragen paraat houdt, kun je TikTok, Douyin en elk toekomstig feed-product met scherpere ogen analyseren.
Zhang Yiming’s productvisie was dat software informatie continu voor je zou moeten filteren, op basis van gedragssignalen, zodat de ervaring bij elke interactie verbetert. In een wereld met te veel content verandert de taak van het product van “help me informatie vinden” naar “beslis wat nú het meest relevant is.”
Een social-graph-feed wordt aangedreven door wie je volgt; een interest-graph-feed wordt aangedreven door wat je doet (kijken, wegvegen, opnieuw afspelen, delen, zoeken). De interest-graph aanpak werkt zelfs wanneer je niemand volgt, maar is afhankelijk van snel goede aanbevelingen en snel leren uit feedback.
Meestal doet een feed twee dingen:
Kandidaatgeneratie vindt mogelijke matches; ranking bepaalt de uiteindelijke volgorde waarbij kleine veranderingen kunnen bepalen wat je daarna kijkt.
Sterke signalen komen vaak van observeerbaar gedrag, vooral:
Likes en opmerkingen tellen mee, maar kijkgedrag is vaak het meest betrouwbaar omdat het moeilijker op schaal te manipuleren is.
Voor nieuwe gebruikers starten platformen met diverse, “veilige” populaire content in je regio/taal om snel voorkeuren te detecteren. Voor nieuwe video's doen ze vaak een beperkte trial-distributie naar groepen die waarschijnlijk geïnteresseerd zijn en breiden ze uit als de engagement sterk is. Zo kunnen onbekende makers doorbreken zonder veel volgers—als vroege prestaties goed zijn.
Exploratie voorkomt dat de feed saai wordt door opzettelijk aangrenzende of onzekere content te testen. Tactieken zijn onder meer:
Zonder exploratie kan het systeem overfitten en smalle lussen creëren die saai of gepolariseerd aanvoelen.
Runaway optimization ontstaat wanneer de snelste manier om aandacht te winnen sensationele of extreme content is, waardoor het algoritme dat onbedoeld beloont. Platformen bestrijden dit met diversiteitsregels, kwaliteitsdrempels en veiligheidsbeleid, plus pacing-controls zodat hoog-opwindende content niet elke sessie domineert.
Contentlogistiek is de end-to-end pijplijn die content van de telefoon van een maker naar het scherm van de kijker brengt:
Als deze pijplijn traag of onbetrouwbaar is, lijden aanbevelingen omdat het systeem minder (en lagere kwaliteit) inventaris krijgt en zwakkere feedbackloops heeft.
Low-friction creatietools (templates, effecten, geluidsbibliotheek, snel bewerken) verhogen de postfrequentie en standaardiseren formats, wat content makkelijker maakt om te testen en te vergelijken. Remix-mechanieken (duets/stitches) fungeren ook als ingebouwde distributie omdat nieuwe posts gekoppeld worden aan bewezen clips, waardoor het systeem context en interesse sneller begrijpt.
A/B-testing verandert productbeslissingen in meetbare hypotheses. Teams rollen kleine wijzigingen uit (UI-aanpassingen, rangschikkingsgewichten, notificaties), meten uitkomsten en implementeren snel winnaars. Gebruik daarnaast metrics boven pure kijktijd (zoals tevredenheid, saves/delen, “niet geïnteresseerd”-percentage, klachten) zodat groei niet ten koste gaat van gebruikerswelzijn.