Bloquear scripts y contenido incrustado
Un banner solo tiene sentido si los rastreadores esperan a la respuesta. Esta página explica qué retiene Cookiemark por su cuenta, cómo marcas el resto y qué no puede impedir.
Bloqueo automático
Cookiemark conoce los scripts y el contenido incrustado de los servicios más comunes. Cuando uno de ellos aparece en tu página, el script lo retiene hasta que el visitante permite su categoría. No tienes que configurar nada. Funciona en cuanto el script es lo primero de tu head.
El script vigila la página de dos maneras, porque ninguna de las dos lo detecta todo por sí sola.
- Intercepta los scripts que crea otro código. Cuando uno de esos scripts recibe la dirección de un servicio conocido, Cookiemark cambia su tipo antes de que se añada, así que el navegador nunca lo ejecuta.
- Vigila todo lo que el navegador añade a la página mientras lee tu HTML. Un script conocido recibe un tipo que el navegador no ejecuta, y un iframe conocido pierde su dirección hasta que el visitante acepta.
Cuando el visitante permite la categoría, Cookiemark vuelve a ejecutar los scripts retenidos en su orden original. Un script externo termina de cargarse antes de que empiece el siguiente, así que el código que depende de él sigue funcionando.
Los servicios que reconoce Cookiemark
| Servicio | Espera a | Se reconoce por |
|---|---|---|
| Google Tag Manager | Estadísticas | googletagmanager.com/gtm.js, googletagmanager.com/ns.html |
| Google Analytics | Estadísticas | googletagmanager.com/gtag/js, google-analytics.com |
| Google Ads | Marketing | googleadservices.com, googlesyndication.com, doubleclick.net |
| Meta Pixel | Marketing | connect.facebook.net, facebook.com/tr |
| Hotjar | Estadísticas | static.hotjar.com, script.hotjar.com |
| Microsoft Clarity | Estadísticas | clarity.ms |
| LinkedIn Insight Tag | Marketing | snap.licdn.com, px.ads.linkedin.com, _linkedin_partner_id |
| TikTok Pixel | Marketing | analytics.tiktok.com |
| Pinterest Tag | Marketing | s.pinimg.com/ct, ct.pinterest.com |
| HubSpot | Marketing | js.hs-scripts.com, js.hs-analytics.net, js.hsforms.net |
| Quriobot | Marketing | botsrv2.com, quriobot.com |
| YouTube | Marketing | youtube.com/embed, youtube-nocookie.com/embed, youtube.com/iframe_api |
| Vimeo | Marketing | player.vimeo.com |
| Google Maps | Marketing | google.com/maps/embed, maps.google.com/maps, maps.googleapis.com/maps/api |
| X (Twitter) | Marketing | platform.twitter.com, platform.x.com |
| Marketing | instagram.com/embed | |
| Spotify | Marketing | open.spotify.com/embed |
| Matomo | Estadísticas | /matomo.js, /piwik.js, cdn.matomo.cloud |
| Piwik PRO | Estadísticas | .containers.piwik.pro, .piwik.pro/ppms.js |
| Adobe Analytics | Estadísticas | assets.adobedtm.com, /appmeasurement.js, .omtrdc.net, .2o7.net |
| Mixpanel | Estadísticas | cdn.mxpnl.com, cdn4.mxpnl.com, api-js.mixpanel.com |
| Amplitude | Estadísticas | cdn.amplitude.com |
| Heap | Estadísticas | cdn.heapanalytics.com, heapanalytics.com/js |
| Segment | Estadísticas | cdn.segment.com, cdn.segment.io |
| Mouseflow | Estadísticas | cdn.mouseflow.com |
| Crazy Egg | Estadísticas | script.crazyegg.com |
| Lucky Orange | Estadísticas | tools.luckyorange.com, tools.luckyorange.net |
| FullStory | Estadísticas | edge.fullstory.com, fullstory.com/s/fs.js |
| Smartlook | Estadísticas | web-sdk.smartlook.com, rec.smartlook.com |
| Contentsquare | Estadísticas | t.contentsquare.net |
| Datadog RUM | Estadísticas | datadoghq-browser-agent.com |
| Yandex Metrica | Estadísticas | mc.yandex.ru/metrika, mc.yandex.com/metrika |
| VWO | Estadísticas | dev.visualwebsiteoptimizer.com, visualwebsiteoptimizer.com/j.php |
| Optimizely | Estadísticas | cdn.optimizely.com |
| AB Tasty | Estadísticas | try.abtasty.com |
| Kameleoon | Estadísticas | .kameleoon.eu, .kameleoon.io |
| Usabilla | Estadísticas | w.usabilla.com |
| Mopinion | Estadísticas | deploy.mopinion.com |
| Qualtrics | Estadísticas | siteintercept.qualtrics.com |
| Survicate | Estadísticas | survey.survicate.com |
| WooCommerce order attribution | Estadísticas | /woocommerce/assets/js/frontend/order-attribution, /sourcebuster/sourcebuster |
| Microsoft Advertising | Marketing | bat.bing.com |
| X Ads | Marketing | static.ads-twitter.com, analytics.twitter.com |
| Snap Pixel | Marketing | sc-static.net/scevent, tr.snapchat.com |
| Reddit Pixel | Marketing | redditstatic.com/ads, alb.reddit.com |
| Quora Pixel | Marketing | a.quora.com/qevents.js, q.quora.com |
| Criteo | Marketing | static.criteo.net, dynamic.criteo.com, sslwidget.criteo.com |
| Taboola | Marketing | cdn.taboola.com, trc.taboola.com |
| Outbrain | Marketing | widgets.outbrain.com, amplify.outbrain.com |
| AdRoll | Marketing | s.adroll.com, d.adroll.com |
| The Trade Desk | Marketing | js.adsrvr.org, insight.adsrvr.org |
| Xandr | Marketing | acdn.adnxs.com, ib.adnxs.com, secure.adnxs.com |
| Adform | Marketing | track.adform.net, s2.adform.net, s1.adform.net |
| Amazon Ads | Marketing | amazon-adsystem.com |
| Awin | Marketing | dwin1.com, zenaps.com |
| TradeTracker | Marketing | tm.tradetracker.net, ts.tradetracker.net |
| Daisycon | Marketing | .daisycon.io |
| impact.com | Marketing | utt.impactcdn.com, impactradius-event.com |
| Leadinfo | Marketing | cdn.leadinfo.net, collector.leadinfo.net, leadinfo.net, api.leadinfo.com |
| Dealfront (Leadfeeder) | Marketing | sc.lfeeder.com, lftracker.leadfeeder.com |
| Albacross | Marketing | serve.albacross.com |
| Snitcher | Marketing | cdn.snitcher.com |
| Klaviyo | Marketing | static.klaviyo.com, static-tracking.klaviyo.com, a.klaviyo.com |
| Mailchimp | Marketing | chimpstatic.com/mcjs-connected |
| ActiveCampaign | Marketing | diffuser-cdn.app-us1.com, trackcmp.net |
| Brevo | Marketing | sibautomation.com, cdn.brevo.com/js/sdk-loader |
| Salesforce Account Engagement (Pardot) | Marketing | pi.pardot.com, cdn.pardot.com |
| Marketo | Marketing | munchkin.marketo.net |
| ShareThis | Marketing | platform-api.sharethis.com, buttons-config.sharethis.com |
| AddToAny | Marketing | static.addtoany.com |
| OptinMonster | Marketing | a.omappapi.com |
| Facebook embeds | Marketing | facebook.com/plugins, web.facebook.com/plugins |
| TikTok embeds | Marketing | tiktok.com/embed |
| Wistia | Marketing | fast.wistia.com, fast.wistia.net |
| Vidyard | Marketing | play.vidyard.com |
| Loom | Marketing | loom.com/embed |
| Dailymotion | Marketing | dailymotion.com/embed, geo.dailymotion.com |
| JW Player | Estadísticas | cdn.jwplayer.com, content.jwplatform.com |
| SoundCloud | Marketing | w.soundcloud.com/player |
| Disqus | Marketing | .disqus.com/embed.js, disquscdn.com |
| Intercom | Preferencias | widget.intercom.io, js.intercomcdn.com |
| Zendesk | Preferencias | static.zdassets.com, ekr.zdassets.com, v2.zopim.com |
| Drift | Preferencias | js.driftt.com |
| Crisp | Preferencias | client.crisp.chat |
| tawk.to | Preferencias | embed.tawk.to |
| LiveChat | Preferencias | cdn.livechatinc.com |
| Olark | Preferencias | static.olark.com |
| Zoho SalesIQ | Preferencias | salesiq.zoho.eu, salesiq.zoho.com, salesiq.zohopublic |
| Smartsupp | Preferencias | smartsuppchat.com, smartsupp-widget |
| Tidio | Preferencias | code.tidio.co |
| Trengo | Preferencias | static.widget.trengo.eu |
| Freshchat | Preferencias | wchat.freshchat.com, snippets.freshchat.com |
| Userlike | Preferencias | userlike-cdn-widgets |
| Calendly | Preferencias | assets.calendly.com, calendly.com/ |
| Typeform | Preferencias | embed.typeform.com, form.typeform.com |
| Jotform | Preferencias | form.jotform.com, cdn.jotfor.ms |
Con Google Consent Mode en avanzado, los tres servicios de Google de arriba no se retienen. Se cargan enseguida y siguen ellos mismos el estado del consentimiento. Google Consent Mode v2 explica la diferencia.
Desactivar un servicio
Abre el sitio, luego Cookies, y mira en Servicios. Cada servicio tiene un interruptor. Si desactivas uno, sus scripts y iframes se cargan sin preguntar. Hazlo solo con un servicio que no instale cookies ni recoja datos, o con uno que ya retengas de otra forma.
Tus propias reglas
Para un servicio que no conocemos, añade una regla en Cookies, Tus propias reglas. Una regla es un fragmento de texto y una categoría. Cualquier script o iframe cuya dirección contenga ese texto espera a la categoría. Usa una parte exclusiva del servicio, como widget.example-chat.com, para no bloquear otros scripts por error.
Marcar un script tú mismo
Puedes marcar cualquier script de tu HTML para que espere al consentimiento. Cambia su tipo a text/plain y añade data-cookiemark con la categoría. El navegador no ejecuta un script con ese tipo, y Cookiemark lo ejecuta en cuanto se permite la categoría.
<script type="text/plain" data-cookiemark="statistics"
src="https://analytics.example.com/tracker.js"></script>Los scripts en línea funcionan igual. El bloqueo automático solo se fija en las direcciones, así que un fragmento en línea siempre necesita este marcado.
<script type="text/plain" data-cookiemark="marketing">
// This code runs once the visitor allows marketing.
startMyPixel('1234567');
</script>Para un script que tiene que ejecutarse como módulo, añade data-cmk-type="module". Cookiemark le da ese tipo al script cuando lo ejecuta.
<script type="text/plain" data-cookiemark="statistics"
data-cmk-type="module" src="/js/stats.js"></script>Combinar categorías
El atributo admite una categoría o una combinación de varias.
| Valor | El script se ejecuta cuando |
|---|---|
statistics | Se permiten las estadísticas. |
statistics,marketing | Se permiten las dos. |
statistics|marketing | Se permite al menos una de las dos. |
Las categorías son preferences, statistics y marketing. Un script marcado como necessary se ejecuta enseguida.
Marcado del plugin y de Cookiebot
Cookiemark también lee data-cookieconsent en lugar de data-cookiemark. Es el atributo del plugin CookieConsent y de Cookiebot. Los scripts y iframes que marcaste para cualquiera de los dos siguen funcionando cuando pasas a Cookiemark.
Iframes y otro contenido incrustado
Un vídeo, un mapa o una publicación incrustados de un servicio conocido reciben el mismo trato que un script. Cookiemark quita su dirección, oculta el iframe y muestra un marcador de posición en su lugar. El marcador de posición indica la categoría y tiene un botón que la permite.
Para retener un iframe que Cookiemark no conoce, escribe su dirección en data-src en lugar de src y añade la categoría.
<iframe data-src="https://www.youtube-nocookie.com/embed/VIDEO-ID"
data-cookiemark="marketing" data-cmk-label="YouTube"
width="560" height="315" title="Our product in two minutes"></iframe>El atributo opcional data-cmk-label pone el nombre del servicio en el marcador de posición. Si le das al iframe un width y un height, el marcador de posición toma la misma forma. Así la página no da un salto cuando se carga el vídeo. Las imágenes con data-src y el mismo atributo se liberan de la misma forma, sin marcador de posición.
El marcador de posición
El botón del marcador de posición permite la categoría de ese contenido incrustado y deja el resto de la elección del visitante como estaba. Es una elección real, así que se guarda y se registra como cualquier otra. Los iframes que nadie puede ver, como un píxel de seguimiento de un píxel por un píxel, no tienen marcador de posición. Siguen retenidos sin él.
Puedes cambiar los textos del marcador de posición en Textos. El texto lleva %s donde va el nombre de la categoría.
Cuando un visitante retira el consentimiento
Un script que ya se ha ejecutado no se puede detener. Por eso, cuando un visitante desactiva una categoría que antes permitió, Cookiemark recarga la página de forma predeterminada. Antes de recargarla, elimina las cookies de esa categoría que figuran en tu lista de cookies, en tu dominio y en sus dominios superiores. Puedes desactivar la recarga en Ajustes.
Las cookies que un tercero instala en su propio dominio quedan fuera del alcance de cualquier script de tu sitio. Caducan por sí solas.
Lo que el bloqueo en el navegador no puede impedir
Cookiemark se ejecuta en el navegador del visitante, así que solo puede actuar sobre lo que ocurre después de arrancar. Ten en cuenta estos límites.
- Un script colocado por encima de la línea de Cookiemark se ejecuta antes de que exista Cookiemark. Mantén esa línea al principio del head.
- Un script en línea sin
srcnunca se reconoce automáticamente. Márcalo tú mismo. - Una petición que un script ya ha enviado no se puede deshacer. Por eso una retirada recarga la página.
- Una etiqueta que se ejecuta dentro de Tag Manager no es un script de tu página. Tag Manager decide cuándo se ejecuta, así que dale un activador de consentimiento.
Un análisis muestra lo que todavía se cuela. Enumera todas las cookies que instalan tus páginas antes de que el visitante elija, y quién instala cada una.