consentement cookies pour Bolt

Le consentement cookies pour Bolt,
en un prompt

Bolt écrit les scripts d’analyse et les pixels que vous décrivez et n’interroge jamais le visiteur d’abord. Un prompt place la balise CookieCrumbs devant eux et verrouille le reste.

Tout le changement : le runtime en premier, et chaque traceur transformé en script qui attend sa catégorie.

la règle

Ce que Bolt ne livre pas

Un projet Bolt par défaut charge GA4 ou un pixel au premier rendu. Un composant bannière demandé ensuite affiche un choix, mais ne peut pas reprendre un script déjà exécuté.

La règle est la même partout dans l’UE et au Royaume-Uni : rien au-delà du strictement nécessaire ne peut être stocké sur l’appareil d’un visiteur ni lu depuis celui-ci avant son accord. C’est l’article 5(3) de la directive ePrivacy, et cet accord doit répondre à la définition du consentement du RGPD : libre, spécifique, éclairé et univoque, avec un refus aussi simple que l’acceptation. Le Royaume-Uni conserve la même règle dans PECR, avec d’étroites exemptions pour les statistiques à faible risque depuis le 5 février 2026. La Californie et les autres lois des États américains fonctionnent à l’inverse : pas d’opt-in, mais un lien d’opt-out et la prise en charge du signal Global Privacy Control.

Trois choses en découlent pour un site. Les scripts d’analyse, de publicité et de réseaux sociaux doivent attendre un choix. Ce choix doit être enregistré de façon à pouvoir être montré plus tard, car l’article 7(1) met la charge de la preuve sur vous. Et retirer son consentement doit être aussi simple que le donner, ce qui suppose un contrôle qui rouvre la bannière sur chaque page. Une bannière qui affiche deux boutons et charge quand même Google Analytics échoue au premier test, et c’est précisément ce manquement que les autorités sanctionnent, des décisions de la CNIL contre Google et SHEIN aux contrôles des autorités néerlandaise et belge.

comment ça marche

Comment fonctionne le consentement dans une app Bolt

Bolt.new fait tourner un environnement Node complet dans le navigateur et peut générer une app Vite, une app Next.js, un site Astro ou du HTML brut, puis déployer sur Netlify en un clic. L’emplacement du runtime de consentement dépend de votre choix : index.html pour Vite et le HTML brut, app/layout.tsx avec next/script pour Next.js, l’intégration pour Astro. Le prompt de cette page couvre le cas Vite et HTML, celui de la plupart des projets Bolt ; les guides Next.js et Astro couvrent les autres.

Bolt est bon pour suivre une instruction exacte et mauvais pour deviner ce que « conforme » signifie. Dites-lui où va la balise et quoi faire de chaque traceur, et il le fait exactement. Demandez-lui une bannière conforme et il en invente une qui stocke un drapeau et ne bloque rien. Le prompt est écrit pour ne laisser aucune place au hasard : premier élément du head, puis type="text/plain" avec une catégorie sur chaque script d’analyse, de publicité et social.

Une fois l’app déployée, le scanner la lit comme un visiteur, liste ce qui se déclenche encore avant le consentement, et le tableau de bord classe chaque fournisseur une fois. Une session Bolt ultérieure qui ajoute un nouveau traceur apparaît au prochain scan planifié comme une alerte, bloqué par défaut jusqu’à ce que vous le classiez.

mise en place

Mise en place depuis Bolt

Dix minutes, un prompt, pas de npm.

  1. Créez le site, récupérez la clé

    Inscrivez-vous, ajoutez le domaine sur lequel votre app est publiée et copiez la clé de production depuis Installation. L’offre gratuite couvre deux domaines.

  2. Collez ce prompt dans Bolt

    Il place la balise en premier et transforme chaque traceur en script soumis au consentement. Lisez le diff qu’il produit ; rien d’autre ne devrait changer.

    Add this script tag as the very first element inside <head> of index.html:
    <script src="https://app.cookiecrumbs.eu/runtime/cc.js"
            data-cc-site="pk_live_…"
            data-cc-env="production"></script>
    Then change every analytics, advertising and social script (Google Analytics, gtag, Meta Pixel, TikTok, Hotjar, HubSpot) to type="text/plain" and add data-cc-category="analytics" or data-cc-category="marketing" to each one. Do not change anything else.
  3. Publiez, puis scannez

    Publiez l’app. Dans le tableau de bord, lancez le premier scan : il charge l’app en ligne dans un vrai navigateur et liste ce qui se déclenche encore avant le consentement, s’il y a quelque chose.

  4. Classez une fois, renseignez les liens légaux, publiez la bannière

    Classez chaque fournisseur dans une catégorie, renseignez vos liens mentions légales et confidentialité, publiez. La bannière est en ligne et le journal de consentement enregistre.

  5. Lancez la vérification d’installation

    Elle charge votre page comme un visiteur et confirme que la bannière s’est exécutée avant tout traceur. Cette coche est la preuve.

attention

Les erreurs que nous voyons avec Bolt

Chacune apparaît dans le premier scan comme un traceur déclenché avant le consentement.

  • Laisser Bolt « rendre ça conforme au RGPD »Il écrit une bannière et un drapeau. Donnez-lui plutôt la position exacte de la balise et les modifications exactes des scripts.
  • Un projet Next.js avec la balise dans index.htmlNext.js n’a pas d’index.html. Utilisez app/layout.tsx avec strategy="beforeInteractive" ; le guide v0 a le snippet.
  • Déploiement Netlify avec la mauvaise cléClé preview sur les aperçus de déploiement, clé de production sur le site de production. Le tableau de bord montre les deux.
  • Un pixel ajouté par un paquet npmLes paquets qui injectent des scripts à l’exécution sont attrapés par la carte de blocage après le premier scan ; lancez-le avant la mise en ligne.
  • Pas de liens mentions légales et confidentialitéLa publication de la bannière est refusée tant que les deux manquent.

avant de publier

La checklist de conformité

Huit lignes. Le tableau de bord coche les deux dernières à partir de données réelles.

  • La balise est le premier script du headTout ce qui se trouve au-dessus peut déposer un cookie que le runtime ne peut pas reprendre.
  • Chaque script d’analyse, de publicité ou social attend sa catégorieSoit type="text/plain" avec une catégorie, soit l’hôte figure dans la carte de blocage issue du scan.
  • « Tout refuser » est sur le premier niveauMême taille, même poids que « Tout accepter ». Pas de « X » qui vaut consentement, pas de cases pré-cochées.
  • Les valeurs par défaut de Consent Mode sont sur « denied » avant le chargement de GoogleVérifiez les sept signaux dans Tag Assistant, consentement refusé.
  • Les liens vers les mentions légales et la politique de confidentialité sont renseignésLa publication est refusée tant qu’ils manquent ; le pied de la bannière y renvoie.
  • Un contrôle de retrait est accessible sur chaque pageLe contrôle permanent ou un lien « Gérer les cookies » dans votre pied de page.
  • Le premier scan complet a tourné et chaque fournisseur est classéLe verdict sur l’accueil indique, daté, ce qui s’est déclenché avant le consentement.
  • La vérification d’installation est passéeElle charge votre page comme un visiteur et confirme que la bannière s’est exécutée avant tout traceur.

ce que vous obtenez

Ce que comprend l’offre gratuite

Deux domaines, 100 sous-pages scannées par mois et par domaine, toutes les réglementations, la CLI, les SDK et le serveur MCP.

Un scanner qui lit la page rendue

Chaque page, dans chaque état de consentement, dans un vrai navigateur. Cookies, pixels, iframes et clés de stockage, avec la page et le script qui les ont posés. Rescanné selon un planning.

La déclaration cookies s’écrit d’elle-même à partir du résultat.

Une bannière qui bloque d’abord

Les balises restent inertes tant que leur catégorie n’est pas accordée. « Tout refuser » est aussi visible que « Tout accepter ». Sept mises en page, 25 langues, Consent Mode v2 et la bonne règle par région.

21 ko, un seul fichier, aucune requête tierce de son propre chef.

Une preuve que vous pouvez remettre

Chaque choix est stocké avec un horodatage, la version de la bannière et un hachage des textes affichés, chaîné à l’enregistrement précédent. Les exports sont signés. Hébergé à Francfort.

Article 7(1), dans l’offre gratuite.

vérification gratuite

Voyez ce que votre app Bolt charge en ce moment

Le HTML de la page d’accueil, confronté à la base de traceurs. Pas de compte, rien n’est stocké. Le scan complet du tableau de bord fait de même pour chaque page, dans un vrai navigateur.

questions

Des réponses claires

Bolt ajoute-t-il une bannière cookies RGPD par défaut ?
Non. Bolt génère les scripts d’analyse et les pixels que vous demandez, et rien qui interroge d’abord le visiteur. Lui demander une bannière produit en général une boîte cosmétique qui affiche un choix et ne bloque rien.
Quels types de projets Bolt sont couverts ?
Vite et HTML brut avec le prompt de cette page. Pour un projet Next.js, utilisez le guide v0, pour Astro le guide Astro ; la balise est la même, seul le fichier change.
Une bannière cookies est-elle obligatoire pour une petite app ?
Si l’app sert des visiteurs dans l’UE ou au Royaume-Uni et dépose un cookie non essentiel, statistiques comprises, alors oui. L’obligation pèse sur l’exploitant du site, pas sur l’outil qui l’a généré. Un projet de loisir sans statistiques ni embeds n’a besoin de rien.
La bannière va-t-elle ralentir l’app ?
Le runtime pèse 21 ko gzippé, un seul fichier, chargé en asynchrone, sans requête tierce de son propre chef. Les mises en page barre et ruban réservent leur espace avant le rendu, donc aucun décalage.
Puis-je continuer à utiliser le builder ensuite ?
Oui. La balise et les scripts verrouillés sont du HTML ordinaire que Bolt conserve entre les modifications. Relancez le scan après de gros changements ; le tableau de bord vous alerte quand un nouveau traceur apparaît.
Où vont les données de consentement ?
À Francfort, en Allemagne. Les enregistrements ne quittent jamais l’UE, aucune adresse IP ni user agent n’est stocké à côté d’un enregistrement, et chaque enregistrement s’exporte en CSV ou JSON signé, y compris après résiliation.

étape suivante

Conforme avant de partager le lien

Offre gratuite, deux domaines, pas de carte. Scannez d’abord l’app en ligne si vous voulez voir ce qu’elle charge aujourd’hui.