Oplossingsgids

Hoe sluit u YouTube-video's GDPR-conform in WordPress in

8 februari 2026 Bijgewerkt op 19 apr 2026

Standaard YouTube-embeds laden scripts, plaatsen cookies en versturen bezoekersgegevens naar Google-servers nog voordat de gebruiker op afspelen klikt. Onder GDPR vormt dit gegevensverwerking zonder toestemming. Deze gids behandelt elke methode voor het GDPR-conform insluiten van YouTube-video's in WordPress, van snelle oplossingen tot robuuste langetermijnoplossingen.

Wat standaard YouTube-embeds achter de schermen doen

Wanneer u een YouTube-URL in de WordPress-blokeditor plakt, converteert WordPress deze automatisch naar een iframe-embed via oEmbed. Dit lijkt onschuldig, maar op het moment dat een bezoeker die pagina laadt, gebeuren er verschillende dingen zonder enige interactie van de gebruiker:

  • JavaScript laden: Het iframe laadt ongeveer 800 KB JavaScript van youtube.com, google.com en googlevideo.com. Dit omvat de YouTube-speler, analytische bibliotheken en advertentiescripts.
  • Cookies plaatsen: YouTube plaatst meerdere cookies, waaronder VISITOR_INFO1_LIVE (blijft 180 dagen), YSC (sessiecookie), PREF (blijft 240 maanden) en GPS (verloopt na 30 minuten). Deze cookies volgen de gebruiker over websites heen.
  • Gegevensoverdracht: Het IP-adres, de browser-user-agent, schermresolutie, taalinstellingen en de URL van uw pagina van de bezoeker worden naar Google-servers gestuurd. Als de bezoeker is ingelogd op een Google-account, worden deze gegevens aan zijn profiel gekoppeld.
  • Verbinding met advertentienetwerk: YouTube maakt verbindingen met doubleclick.net en googleadservices.com en trekt de bezoeker in het advertentie-ecosysteem van Google.
  • Aanvullende bronnen laden: Lettertypen van fonts.googleapis.com, afbeeldingen van i.ytimg.com en diverse tracking pixels worden ook geladen.

Dit alles gebeurt bij het laden van de pagina, voordat de bezoeker beslist om de video te bekijken. Vanuit GDPR-perspectief verwerkt u persoonlijke gegevens en staat u tracking door derden toe zonder enige rechtsgrondslag.

YouTube-cookies en hun GDPR-classificatie

Begrijpen welke cookies YouTube plaatst, helpt u uw toestemmingsbeheer correct te configureren. Hier zijn de belangrijkste cookies en hun doeleinden:

  • VISITOR_INFO1_LIVE: Schat de bandbreedte van de gebruiker in om de videokwaliteit te bepalen. Blijft 180 dagen. Classificatie: Functioneel/Marketing.
  • YSC: Volgt gebruikersinteracties met ingesloten video's. Sessiecookie. Classificatie: Statistieken/Marketing.
  • PREF: Slaat gebruikersvoorkeuren op zoals voorkeursvideokwaliteit en spelerinstellingen. Blijft tot 240 maanden. Classificatie: Functioneel.
  • GPS: Registreert een unieke ID op mobiele apparaten voor tracking. Verloopt na 30 minuten. Classificatie: Marketing.
  • IDE: Gebruikt door Google DoubleClick om gerichte advertenties te leveren. Blijft 13 maanden. Classificatie: Marketing.
  • CONSENT: Slaat de cookietoestemmingsstatus van de gebruiker op voor Google-diensten. Blijft 20 jaar. Classificatie: Essentieel (voor Google).

Aangezien de meeste van deze cookies marketing- en trackingdoeleinden dienen, kunt u onder GDPR geen YouTube-embeds laden zonder toestemming. De enige conforme optie is om de embed te blokkeren totdat de gebruiker zich aanmeldt.

Methode 1: YouTube-privacy-uitgebreide modus (youtube-nocookie.com)

YouTube biedt een privacy-uitgebreide insluitmodus die het domein youtube-nocookie.com gebruikt in plaats van youtube.com. Dit is de snelste oplossing, hoewel niet een complete oplossing op zichzelf.

Vervang om deze te gebruiken het domein in uw embedcode:

<!-- Standard embed (NOT GDPR-compliant) -->
<iframe src="https://www.youtube.com/embed/VIDEO_ID"
        width="560" height="315"
        frameborder="0"
        allowfullscreen></iframe>

<!-- Privacy-enhanced mode -->
<iframe src="https://www.youtube-nocookie.com/embed/VIDEO_ID"
        width="560" height="315"
        frameborder="0"
        allowfullscreen></iframe>

Wat dit daadwerkelijk verandert: Het no-cookie-domein voorkomt dat YouTube trackingcookies op uw domein plaatst voordat de gebruiker op afspelen klikt. Echter, zodra de gebruiker de video start, worden cookies geplaatst net zoals bij een gewone embed. Het iframe laadt ook nog steeds JavaScript en verstuurt het IP-adres van de bezoeker naar Google bij het laden van de pagina. Om deze redenen is privacy-uitgebreide modus alleen waarschijnlijk niet voldoende voor volledige GDPR-naleving. Het is een goede verbetering, maar u moet dit combineren met een van de andere onderstaande methoden.

Als u de WordPress-blokeditor gebruikt, kunt u overschakelen naar het no-cookie-domein met een filter in de functions.php van uw thema:

add_filter('embed_oembed_html', function($html) {
    return str_replace('youtube.com/embed/', 'youtube-nocookie.com/embed/', $html);
});

Methode 2: Twee-klik-oplossing met een WordPress-plug-in

De twee-klik-oplossing is de meest gebruikelijke GDPR-conforme aanpak in de EU. In plaats van het YouTube-iframe onmiddellijk te laden, toont u een statische placeholder-afbeelding. Pas wanneer de gebruiker actief klikt, laadt de werkelijke embed. Dit zorgt ervoor dat er geen gegevens naar Google worden verzonden totdat de gebruiker een bewuste keuze maakt.

Verschillende WordPress-plug-ins implementeren dit patroon:

  • Embed Privacy: Een gratis plug-in die embeds van YouTube, Vimeo, Google Maps en vele andere providers in een toestemmingsoverlay verpakt. Het vervangt het iframe door een melding en een knop. Wanneer de gebruiker klikt, laadt de echte embed. Het ondersteunt toestemming per provider en per embed. Dit is een solide keuze als u een lichtgewicht, gerichte oplossing wilt.
  • WP YouTube Lyte: Vervangt YouTube-embeds door een responsieve, lichtgewicht placeholder. Het gebruikt de YouTube-thumbnail als preview-afbeelding en laadt alleen de volledige speler bij een klik. Het ondersteunt standaard ook het no-cookie-domein.
  • Flavor: Een nieuwere plug-in die toestemmingsbewuste video-embeds biedt met een schoon ontwerp. Het werkt met YouTube, Vimeo en andere providers.
  • Borlabs Cookie: Een premium toestemmingsbeheer-plug-in met een ingebouwde content blocker. Het detecteert automatisch YouTube-iframes en vervangt ze door een toestemmings-placeholder. Nadat de gebruiker externe-mediacookies heeft geaccepteerd, laden alle YouTube-embeds op de pagina tegelijk.
  • Real Cookie Banner: Net als Borlabs Cookie bevat het een content-blockerfunctie. Het heeft vooraf geconfigureerde sjablonen voor YouTube, Vimeo, Google Maps en vele andere diensten. Zeer populair in de Duitstalige WordPress-gemeenschap.
  • Complianz: Een andere toestemmingsbeheer-plug-in met content-blockermogelijkheden. Het kan YouTube-iframes vervangen door een placeholder die de videothumbnail en een toestemmingsmelding toont.

Overweeg bij het kiezen van een plug-in of u een op zichzelf staande videoprivacy-oplossing nodig heeft (Embed Privacy, WP YouTube Lyte) of een volledig toestemmingsbeheerplatform dat ook YouTube-embeds afhandelt (Borlabs, Real Cookie Banner, Complianz). Als u al een CMP heeft geïnstalleerd, controleer dan of deze content-blocking ondersteunt voordat u nog een plug-in toevoegt.

Methode 3: Handmatig facade-patroon met lazy loading

Als u volledige controle wilt zonder afhankelijkheden van plug-ins, kunt u zelf een facade (ook wel "lite embed" genoemd) bouwen. Het idee is eenvoudig: toon de videothumbnail als een statische afbeelding, en maak het YouTube-iframe alleen dynamisch aan wanneer de gebruiker klikt.

Hier is een complete implementatie:

<style>
.yt-facade {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 aspect ratio */
  background: #000;
  cursor: pointer;
  overflow: hidden;
}
.yt-facade img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  transition: opacity 0.3s;
}
.yt-facade:hover img { opacity: 0.8; }
.yt-facade .play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.yt-facade .consent-text {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0,0,0,0.8);
  color: #fff;
  padding: 12px 16px;
  font-size: 13px;
  line-height: 1.4;
  z-index: 1;
}
.yt-facade .consent-text a { color: #aecbfa; }
</style>

<div class="yt-facade" data-video-id="VIDEO_ID">
  <img src="https://img.youtube.com/vi/VIDEO_ID/maxresdefault.jpg"
       alt="Video thumbnail" loading="lazy" />
  <div class="play-btn">
    <svg width="68" height="48" viewBox="0 0 68 48">
      <path d="M66.52 7.74c-.78-2.93-2.49-5.41-5.42-6.19C55.79.13 34 0 34 0S12.21.13 6.9 1.55C3.97 2.33 2.27 4.81 1.48 7.74.06 13.05 0 24 0 24s.06 10.95 1.48 16.26c.78 2.93 2.49 5.41 5.42 6.19C12.21 47.87 34 48 34 48s21.79-.13 27.1-1.55c2.93-.78 4.64-3.26 5.42-6.19C67.94 34.95 68 24 68 24s-.06-10.95-1.48-16.26z" fill="red"/>
      <path d="M45 24L27 14v20" fill="white"/>
    </svg>
  </div>
  <div class="consent-text">
    By clicking, you agree to load content from YouTube.
    <a href="/privacy-policy">Privacy Policy</a>
  </div>
</div>

<script>
document.querySelectorAll('.yt-facade').forEach(function(el) {
  el.addEventListener('click', function() {
    var videoId = this.dataset.videoId;
    var iframe = document.createElement('iframe');
    iframe.src = 'https://www.youtube-nocookie.com/embed/' + videoId + '?autoplay=1&rel=0';
    iframe.allow = 'accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture';
    iframe.allowFullscreen = true;
    iframe.style.cssText = 'position:absolute; top:0; left:0; width:100%; height:100%; border:0;';
    this.innerHTML = ';
    this.appendChild(iframe);
  });
});
</script>

Deze aanpak heeft verschillende voordelen. Er worden geen externe bronnen geladen totdat de gebruiker klikt, wat u volledige GDPR-naleving geeft zonder een cookietoestemmingsbanner voor de video zelf. Het verbetert ook de paginalaadsnelheid drastisch, omdat u alleen een kleine thumbnail-afbeelding laadt in plaats van 800 KB YouTube-JavaScript. De toestemmingstekst onderaan informeert de gebruiker over wat er gebeurt wanneer hij klikt.

Om dit herbruikbaar te maken in WordPress, kunt u het in een shortcode verpakken. Voeg dit toe aan de functions.php van uw child-thema:

function gdpr_youtube_shortcode($atts) {
    $atts = shortcode_atts(array('id' => '), $atts);
    if (empty($atts['id'])) return ';

    $vid = esc_attr($atts['id']);
    return '<div class="yt-facade" data-video-id="' . $vid . '">'
         . '<img src="https://img.youtube.com/vi/' . $vid . '/maxresdefault.jpg" '
         . 'alt="Video" loading="lazy" style="width:100%;height:100%;object-fit:cover;position:absolute;top:0;left:0;" />'
         . '<div style="position:absolute;inset:0;display:flex;align-items:center;justify-content:center;">'
         . '<svg width="68" height="48" viewBox="0 0 68 48"><path d="M66.52 7.74c-.78-2.93-2.49-5.41-5.42-6.19C55.79.13 34 0 34 0S12.21.13 6.9 1.55C3.97 2.33 2.27 4.81 1.48 7.74.06 13.05 0 24 0 24s.06 10.95 1.48 16.26c.78 2.93 2.49 5.41 5.42 6.19C12.21 47.87 34 48 34 48s21.79-.13 27.1-1.55c2.93-.78 4.64-3.26 5.42-6.19C67.94 34.95 68 24 68 24s-.06-10.95-1.48-16.26z" fill="red"/><path d="M45 24L27 14v20" fill="white"/></svg>'
         . '</div></div>';
}
add_shortcode('youtube_gdpr', 'gdpr_youtube_shortcode');

Gebruik het vervolgens in elk bericht of elke pagina: [youtube_gdpr id="dQw4w9WgXcQ"]

Methode 4: Integratie met een toestemmingsbeheer-plug-in

De meest robuuste oplossing voor sites met veel YouTube-embeds is om een toestemmingsbeheer-plug-in met een content-blockerfunctie te gebruiken. Deze aanpak handelt alles automatisch af, zelfs voor bestaande inhoud waar YouTube-URL's rechtstreeks in berichten zijn geplakt.

  1. Installeer een CMP met content-blocking: Real Cookie Banner, Borlabs Cookie en Complianz ondersteunen dit allemaal. Installeer de plug-in van uw keuze en doorloop de installatiewizard.
  2. Schakel de YouTube content blocker in: Navigeer in de CMP-instellingen naar het content-blockergedeelte. De meeste CMP's worden geleverd met vooraf geconfigureerde sjablonen voor YouTube. Schakel de YouTube-sjabloon in. De plug-in detecteert nu automatisch YouTube-iframes op uw pagina's.
  3. Configureer de placeholder: Pas de placeholder aan die het YouTube-iframe vervangt. De meeste CMP's laten u een achtergrondafbeelding instellen (automatisch opgehaald uit de thumbnail-API van YouTube), een aangepast bericht dat uitlegt waarom de video is geblokkeerd en een knop om de video te laden.
  4. Stel de cookiecategorie in: Wijs YouTube toe aan de cookiecategorie "Externe Media" of "Marketing". De video wordt pas geladen nadat de gebruiker zich heeft aangemeld voor deze categorie via de toestemmingsbanner.
  5. Overweeg "Mijn keuze onthouden"-functionaliteit: De meeste CMP's bieden een optie voor de gebruiker om zijn keuze voor een specifieke provider te onthouden. Zodra hij eenmaal op "YouTube-content laden" klikt, laden alle YouTube-embeds op alle pagina's automatisch tijdens die sessie of voor een configureerbare periode.
  6. Test grondig: Bezoek een pagina met een YouTube-embed in een incognitovenster. Verifieer dat de video wordt vervangen door een placeholder. Weiger alle cookies en bevestig dat de video geblokkeerd blijft. Accepteer vervolgens de relevante cookiecategorie en verifieer dat de video correct laadt.

Gutenberg-blokeditor: overschakelen naar privacy-uitgebreide embeds

De WordPress-blokeditor (Gutenberg) heeft een ingebouwd YouTube-embedblok. Standaard gebruikt het het standaarddomein youtube.com. Er is geen native instelling om over te schakelen naar het no-cookie-domein, maar u kunt het op verschillende manieren afhandelen:

  • PHP-filterbenadering: Gebruik het eerder getoonde embed_oembed_html-filter om automatisch alle oEmbed-URL's te vervangen door de no-cookie-variant.
  • Aangepaste HTML-blok: Gebruik in plaats van het YouTube-embedblok een Aangepast HTML-blok en plak de iframe-code handmatig met youtube-nocookie.com.
  • Content blocker-plug-in: Als u een CMP met een content blocker gebruikt, onderschept deze automatisch het standaard YouTube-embedblok. U hoeft niets in uw inhoud te wijzigen; de plug-in handelt de blokkering tijdens het renderen af.

Voor nieuwe sites is de eenvoudigste workflow: gebruik welke embedmethode dan ook die het handigst is (URL plakken, embedblok of shortcode), en laat uw CMP de GDPR-naleving afhandelen via content-blocking.

Prestatievoordelen van GDPR-conforme YouTube-embeds

Privacy-conforme insluitmethoden lossen niet alleen juridische problemen op; ze verbeteren ook de prestaties van uw site aanzienlijk:

  • Standaard YouTube-embed: Laadt ongeveer 800 KB JavaScript, 200 KB CSS en meerdere afbeeldingsassets per embed. Elke embed activeert 20+ HTTP-verzoeken. Als u drie video's op een pagina heeft, is dat meer dan 2,4 MB JavaScript alleen.
  • Facade-patroon (alleen thumbnail): Laadt een enkele JPEG-thumbnail van ongeveer 15-40 KB. Eén HTTP-verzoek per video. De volledige YouTube-speler laadt alleen voor de video die de gebruiker daadwerkelijk wil bekijken.
  • Impact op Core Web Vitals: De verminderde JavaScript verbetert direct de Total Blocking Time (TBT) en First Input Delay (FID). De kleinere initiële payload verbetert de Largest Contentful Paint (LCP). Aangezien Core Web Vitals een Google-rangordefactor zijn, kunnen GDPR-conforme embeds uw SEO daadwerkelijk verbeteren.

Op pagina's met meerdere video-embeds is de prestatieverbetering dramatisch. Een pagina met vijf standaard YouTube-embeds kan 40 scoren op Google PageSpeed. Dezelfde pagina met facade-patronen kan gemakkelijk boven de 90 scoren.

YouTube-embeds afhandelen op WooCommerce-productpagina's

Als u YouTube-video's insluit op WooCommerce-productpagina's (voor productdemo's, tutorials of recensies), is bijzondere aandacht nodig. Productpagina's zijn cruciaal voor conversies, dus zowel prestaties als naleving zijn belangrijk. Hier zijn de beste praktijken:

  • Gebruik facade-patronen op productpagina's: De prestatiewinst is hier bijzonder waardevol, omdat elke 100 ms extra laadtijd de conversiesnelheid vermindert.
  • Plaats video's onder de fold: Zet productvideo's in een apart tabblad (bijv. "Productvideo") of onder de productbeschrijving. Op deze manier beïnvloedt de video-placeholder de initiële paginalay-out niet.
  • Vermijd automatisch afspelen van productvideo's: Naast een GDPR-probleem irriteren automatisch afgespeelde video's op productpagina's klanten en verhogen ze het bouncepercentage.

Hoe InspectWP YouTube-insluitproblemen detecteert

InspectWP scant uw WordPress-site en controleert specifiek YouTube-insluitpraktijken. Het GDPR-rapportgedeelte signaleert of uw site YouTube-embeds laadt en rapporteert welk domein ze gebruiken: het standaarddomein youtube.com of het privacy-uitgebreide domein youtube-nocookie.com. Als InspectWP standaard YouTube-embeds detecteert zonder een zichtbaar toestemmingsmechanisme, markeert het dit als een potentieel GDPR-probleem. Voer een InspectWP-scan uit na het implementeren van een van de bovenstaande methoden om te verifiëren dat uw wijzigingen correct werken op alle pagina's van uw site.

Controleer nu uw WordPress-site

InspectWP analyseert uw WordPress-site op beveiligingsproblemen, SEO-problemen, GDPR-naleving en prestaties — gratis.

Analyseer uw site gratis