CINXE.COM

Security & Privacy hub  |  Security and Privacy hub  |  Google for Developers

<!doctype html> <html lang="en" dir="ltr"> <head> <meta name="google-signin-client-id" content="721724668570-nbkv1cfusk7kk4eni4pjvepaus73b13t.apps.googleusercontent.com"> <meta name="google-signin-scope" content="profile email https://www.googleapis.com/auth/developerprofiles https://www.googleapis.com/auth/developerprofiles.award"> <meta property="og:site_name" content="Google for Developers"> <meta property="og:type" content="website"><meta name="theme-color" content="#1a73e8"><meta charset="utf-8"> <meta content="IE=Edge" http-equiv="X-UA-Compatible"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="manifest" href="/_pwa/developers/manifest.json" crossorigin="use-credentials"> <link rel="preconnect" href="//www.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.googleapis.com" crossorigin> <link rel="preconnect" href="//apis.google.com" crossorigin> <link rel="preconnect" href="//www.google-analytics.com" crossorigin><link rel="stylesheet" href="//fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"> <link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Material+Icons&family=Material+Symbols+Outlined&display=block"><link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/css/app.css"> <link rel="shortcut icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/favicon-new.png"> <link rel="apple-touch-icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/touchicon-180-new.png"><link rel="canonical" href="https://developers.google.com/tag-platform/security"><link rel="search" type="application/opensearchdescription+xml" title="Google for Developers" href="https://developers.google.com/s/opensearch.xml"> <link rel="alternate" hreflang="en" href="https://developers.google.com/tag-platform/security" /><link rel="alternate" hreflang="x-default" href="https://developers.google.com/tag-platform/security" /><link rel="alternate" hreflang="ar" href="https://developers.google.com/tag-platform/security?hl=ar" /><link rel="alternate" hreflang="bn" href="https://developers.google.com/tag-platform/security?hl=bn" /><link rel="alternate" hreflang="zh-Hans" href="https://developers.google.com/tag-platform/security?hl=zh-cn" /><link rel="alternate" hreflang="zh-Hant" href="https://developers.google.com/tag-platform/security?hl=zh-tw" /><link rel="alternate" hreflang="fa" href="https://developers.google.com/tag-platform/security?hl=fa" /><link rel="alternate" hreflang="fr" href="https://developers.google.com/tag-platform/security?hl=fr" /><link rel="alternate" hreflang="de" href="https://developers.google.com/tag-platform/security?hl=de" /><link rel="alternate" hreflang="he" href="https://developers.google.com/tag-platform/security?hl=he" /><link rel="alternate" hreflang="hi" href="https://developers.google.com/tag-platform/security?hl=hi" /><link rel="alternate" hreflang="id" href="https://developers.google.com/tag-platform/security?hl=id" /><link rel="alternate" hreflang="it" href="https://developers.google.com/tag-platform/security?hl=it" /><link rel="alternate" hreflang="ja" href="https://developers.google.com/tag-platform/security?hl=ja" /><link rel="alternate" hreflang="ko" href="https://developers.google.com/tag-platform/security?hl=ko" /><link rel="alternate" hreflang="pl" href="https://developers.google.com/tag-platform/security?hl=pl" /><link rel="alternate" hreflang="pt-BR" href="https://developers.google.com/tag-platform/security?hl=pt-br" /><link rel="alternate" hreflang="ru" href="https://developers.google.com/tag-platform/security?hl=ru" /><link rel="alternate" hreflang="es" href="https://developers.google.com/tag-platform/security?hl=es" /><link rel="alternate" hreflang="es-419" href="https://developers.google.com/tag-platform/security?hl=es-419" /><link rel="alternate" hreflang="th" href="https://developers.google.com/tag-platform/security?hl=th" /><link rel="alternate" hreflang="tr" href="https://developers.google.com/tag-platform/security?hl=tr" /><link rel="alternate" hreflang="vi" href="https://developers.google.com/tag-platform/security?hl=vi" /><title>Security & Privacy hub &nbsp;|&nbsp; Security and Privacy hub &nbsp;|&nbsp; Google for Developers</title> <meta property="og:title" content="Security & Privacy hub &nbsp;|&nbsp; Security and Privacy hub &nbsp;|&nbsp; Google for Developers"><meta name="description" content="Learn how to run a safe tagging environment that protects user data. "> <meta property="og:description" content="Learn how to run a safe tagging environment that protects user data. "><meta property="og:url" content="https://developers.google.com/tag-platform/security"><meta property="og:image" content="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/opengraph/google-blue.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="675"><meta property="og:locale" content="en"><meta name="twitter:card" content="summary_large_image"><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "name": "Tags", "item": "https://developers.google.com/tag-platform" },{ "@type": "ListItem", "position": 2, "name": "Security &amp; Privacy", "item": "https://developers.google.com/tag-platform/security" }] } </script> <link rel="stylesheet" href="/extras.css"></head> <body class="" template="landing" theme="google-blue" type="product" layout="full" concierge='hide' pending> <devsite-progress type="indeterminate" id="app-progress"></devsite-progress> <section class="devsite-wrapper"> <devsite-cookie-notification-bar></devsite-cookie-notification-bar><devsite-header role="banner"> <div class="devsite-header--inner nocontent"> <div class="devsite-top-logo-row-wrapper-wrapper"> <div class="devsite-top-logo-row-wrapper"> <div class="devsite-top-logo-row"> <button type="button" id="devsite-hamburger-menu" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Navigation menu button" visually-hidden aria-label="Open menu"> </button> <div class="devsite-product-name-wrapper"> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> <a href="https://developers.google.com/tag-platform" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Upper Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Tags" > <h1 class="devsite-product-name">Tags</h1> </a> </li> </ul> </span> </div> <div class="devsite-top-logo-row-middle"> <div class="devsite-header-upper-tabs"> <devsite-tabs class="upper-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Upper tabs"> <tab > <a href="https://developers.google.com/tag-platform/devguides" track-metadata-eventdetail="https://developers.google.com/tag-platform/devguides" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - the google tag" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: The Google tag" track-name="the google tag" > The Google tag </a> </tab> <tab > <a href="https://developers.google.com/tag-platform/gtagjs" track-metadata-eventdetail="https://developers.google.com/tag-platform/gtagjs" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - gtag.js" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: gtag.js" track-name="gtag.js" > gtag.js </a> </tab> <tab > <a href="https://developers.google.com/tag-platform/tag-manager" track-metadata-eventdetail="https://developers.google.com/tag-platform/tag-manager" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - tag manager" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Tag Manager" track-name="tag manager" > Tag Manager </a> </tab> <tab class="devsite-active"> <a href="https://developers.google.com/tag-platform/security" track-metadata-eventdetail="https://developers.google.com/tag-platform/security" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - security &amp; privacy" track-metadata-module="primary nav" aria-label="Security &amp; Privacy, selected" data-category="Site-Wide Custom Events" data-label="Tab: Security &amp; Privacy" track-name="security &amp; privacy" > Security &amp; Privacy </a> </tab> <tab > <a href="https://developers.google.com/tag-platform/learn" track-metadata-eventdetail="https://developers.google.com/tag-platform/learn" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - learn" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Learn" track-name="learn" > Learn </a> </tab> </nav> </devsite-tabs> </div> <devsite-search enable-signin enable-search enable-suggestions enable-query-completion project-name="Security and Privacy hub" tenant-name="Google for Developers" project-scope="/tag-platform/security" url-scoped="https://developers.google.com/s/results/tag-platform/security" > <form class="devsite-search-form" action="https://developers.google.com/s/results" method="GET"> <div class="devsite-search-container"> <button type="button" search-open class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Open search"></button> <div class="devsite-searchbox"> <input aria-activedescendant="" aria-autocomplete="list" aria-label="Search" aria-expanded="false" aria-haspopup="listbox" autocomplete="off" class="devsite-search-field devsite-search-query" name="q" placeholder="Search" role="combobox" type="text" value="" > <div class="devsite-search-image material-icons" aria-hidden="true"> </div> <div class="devsite-search-shortcut-icon-container" aria-hidden="true"> <kbd class="devsite-search-shortcut-icon">/</kbd> </div> </div> </div> </form> <button type="button" search-close class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Close search"></button> </devsite-search> </div> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es" >Español</a> </li> <li role="presentation"> <a role="menuitem" lang="es_419" >Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="it" >Italiano</a> </li> <li role="presentation"> <a role="menuitem" lang="pl" >Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="vi" >Tiếng Việt</a> </li> <li role="presentation"> <a role="menuitem" lang="tr" >Türkçe</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="he" >עברית</a> </li> <li role="presentation"> <a role="menuitem" lang="ar" >العربيّة</a> </li> <li role="presentation"> <a role="menuitem" lang="fa" >فارسی</a> </li> <li role="presentation"> <a role="menuitem" lang="hi" >हिंदी</a> </li> <li role="presentation"> <a role="menuitem" lang="bn" >বাংলা</a> </li> <li role="presentation"> <a role="menuitem" lang="th" >ภาษาไทย</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw" >中文 – 繁體</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> <devsite-user enable-profiles fp-auth id="devsite-user"> <span class="button devsite-top-button" aria-hidden="true" visually-hidden>Sign in</span> </devsite-user> </div> </div> </div> <div class="devsite-collapsible-section "> <div class="devsite-header-background"> <div class="devsite-product-id-row" > <div class="devsite-product-description-row"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> <a href="https://developers.google.com/tag-platform/security" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Lower Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Security and Privacy hub" > Security &amp; Privacy </a> </li> </ul> <div class="devsite-product-description"> Learn how to run a safe tagging environment that protects user data. </div> </div> <div class="devsite-product-button-row"> <a href="https://tagmanager.google.com/" class="button " >Open Google Tag Manager</a> </div> </div> <div class="devsite-doc-set-nav-row"> <devsite-tabs class="lower-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Lower tabs"> <tab > <a href="https://developers.google.com/tag-platform/security/concepts/privacy" track-metadata-eventdetail="https://developers.google.com/tag-platform/security/concepts/privacy" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - concepts and best practices" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Concepts and best practices" track-name="concepts and best practices" > Concepts and best practices </a> </tab> <tab > <a href="https://developers.google.com/tag-platform/security/guides/consent" track-metadata-eventdetail="https://developers.google.com/tag-platform/security/guides/consent" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - guides" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Guides" track-name="guides" > Guides </a> </tab> <tab class="devsite-dropdown "> <span class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - privacy policies" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Privacy Policies" track-name="privacy policies" > Privacy Policies </span> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Privacy Policies" track-type="nav" track-metadata-eventdetail="" track-metadata-position="nav - privacy policies" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Privacy Policies" track-name="privacy policies" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://support.google.com/tagmanager/answer/9323295" track-type="nav" track-metadata-eventdetail="https://support.google.com/tagmanager/answer/9323295" track-metadata-position="nav - privacy policies" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Data privacy and security <span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true" translate="no"></span> </div> </a> </li> <li class="devsite-nav-item"> <a href="https://support.google.com/tagmanager/answer/9502761" track-type="nav" track-metadata-eventdetail="https://support.google.com/tagmanager/answer/9502761" track-metadata-position="nav - privacy policies" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Community template policy <span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true" translate="no"></span> </div> </a> </li> <li class="devsite-nav-item"> <a href="https://support.google.com/tagmanager/answer/7207086" track-type="nav" track-metadata-eventdetail="https://support.google.com/tagmanager/answer/7207086" track-metadata-position="nav - privacy policies" track-metadata-module="tertiary nav" tooltip > <div class="devsite-nav-item-title"> Data processing amendment <span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true" translate="no"></span> </div> </a> </li> </ul> </div> </div> </div> </tab> </nav> </devsite-tabs> </div> </div> </div> </div> </devsite-header> <devsite-book-nav scrollbars hidden> <div class="devsite-book-nav-filter" hidden> <span class="filter-list-icon material-icons" aria-hidden="true"></span> <input type="text" placeholder="Filter" aria-label="Type to filter" role="searchbox"> <span class="filter-clear-button hidden" data-title="Clear filter" aria-label="Clear filter" role="button" tabindex="0"></span> </div> <nav class="devsite-book-nav devsite-nav nocontent" aria-label="Side menu"> <div class="devsite-mobile-header"> <button type="button" id="devsite-close-nav" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Close navigation" aria-label="Close navigation"> </button> <div class="devsite-product-name-wrapper"> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> <a href="https://developers.google.com/tag-platform" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Upper Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Tags" > Tags </a> </li> </ul> </span> </div> </div> <div class="devsite-book-nav-wrapper"> <div class="devsite-mobile-nav-top"> <ul class="devsite-nav-list"> <li class="devsite-nav-item"> <a href="/tag-platform/devguides" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: The Google tag" track-name="the google tag" data-category="Site-Wide Custom Events" data-label="Responsive Tab: The Google tag" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > The Google tag </span> </a> </li> <li class="devsite-nav-item"> <a href="/tag-platform/gtagjs" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: gtag.js" track-name="gtag.js" data-category="Site-Wide Custom Events" data-label="Responsive Tab: gtag.js" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > gtag.js </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/tag-platform/tag-manager" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Tag Manager" track-name="tag manager" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Tag Manager" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Tag Manager </span> </a> </li> <li class="devsite-nav-item"> <a href="/tag-platform/security" class="devsite-nav-title gc-analytics-event devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Security &amp; Privacy" track-name="security &amp; privacy" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Security &amp; Privacy" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Security &amp; Privacy </span> </a> <ul class="devsite-nav-responsive-tabs"> <li class="devsite-nav-item"> <a href="/tag-platform/security/concepts/privacy" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Concepts and best practices" track-name="concepts and best practices" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Concepts and best practices" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Concepts and best practices </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/tag-platform/security/guides/consent" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Guides" track-name="guides" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Guides" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Guides </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Privacy Policies" track-name="privacy policies" > <span class="devsite-nav-text" tooltip > Privacy Policies </span> </span> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu devsite-lower-tab-item"> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Privacy Policies" track-name="privacy policies" > <span class="devsite-nav-text" tooltip menu="Privacy Policies"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Privacy Policies"> </span> </span> </li> </ul> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/tag-platform/learn" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Learn" track-name="learn" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Learn" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Learn </span> </a> </li> </ul> </div> <div class="devsite-mobile-nav-bottom"> <ul class="devsite-nav-list" menu="Privacy Policies" aria-label="Side menu" hidden> <li class="devsite-nav-item"> <a href="https://support.google.com/tagmanager/answer/9323295" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Data privacy and security &lt;span class=&#34;devsite-nav-icon material-icons&#34; data-icon=&#34;external&#34; data-title=&#34;External&#34; aria-hidden=&#34;true&#34; translate=&#34;no&#34;&gt;&lt;/span&gt;" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Data privacy and security &lt;span class=&#34;devsite-nav-icon material-icons&#34; data-icon=&#34;external&#34; data-title=&#34;External&#34; aria-hidden=&#34;true&#34; translate=&#34;no&#34;&gt;&lt;/span&gt; </span> </a> </li> <li class="devsite-nav-item"> <a href="https://support.google.com/tagmanager/answer/9502761" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Community template policy &lt;span class=&#34;devsite-nav-icon material-icons&#34; data-icon=&#34;external&#34; data-title=&#34;External&#34; aria-hidden=&#34;true&#34; translate=&#34;no&#34;&gt;&lt;/span&gt;" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Community template policy &lt;span class=&#34;devsite-nav-icon material-icons&#34; data-icon=&#34;external&#34; data-title=&#34;External&#34; aria-hidden=&#34;true&#34; translate=&#34;no&#34;&gt;&lt;/span&gt; </span> </a> </li> <li class="devsite-nav-item"> <a href="https://support.google.com/tagmanager/answer/7207086" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Data processing amendment &lt;span class=&#34;devsite-nav-icon material-icons&#34; data-icon=&#34;external&#34; data-title=&#34;External&#34; aria-hidden=&#34;true&#34; translate=&#34;no&#34;&gt;&lt;/span&gt;" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Data processing amendment &lt;span class=&#34;devsite-nav-icon material-icons&#34; data-icon=&#34;external&#34; data-title=&#34;External&#34; aria-hidden=&#34;true&#34; translate=&#34;no&#34;&gt;&lt;/span&gt; </span> </a> </li> </ul> </div> </div> </nav> </devsite-book-nav> <section id="gc-wrapper"> <main role="main" class="devsite-main-content" > <devsite-content> <article class="devsite-article"> <div class="devsite-article-meta nocontent" role="navigation"> <ul class="devsite-breadcrumb-list" aria-label="Breadcrumb"> <li class="devsite-breadcrumb-item "> <a href="https://developers.google.com/" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="" > Home </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/products" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="2" track-type="globalNav" track-name="breadcrumb" track-metadata-position="2" track-metadata-eventdetail="" > Products </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/tag-platform" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="3" track-type="globalNav" track-name="breadcrumb" track-metadata-position="3" track-metadata-eventdetail="Tags" > Tags </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/tag-platform/security" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="4" track-type="globalNav" track-name="breadcrumb" track-metadata-position="4" track-metadata-eventdetail="Security and Privacy hub" > Security &amp; Privacy </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/tag-platform/security/concepts/privacy" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="5" track-type="globalNav" track-name="breadcrumb" track-metadata-position="5" track-metadata-eventdetail="" > Concepts and best practices </a> </li> </ul> </div> <devsite-feedback position="header" project-name="Security and Privacy hub" product-id="102259" bucket="tag-platform" context="" version="t-devsite-webserver-20241114-r00-rc02.464922260396498922" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="header" class="nocontent" project-icon="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/touchicon-180-new.png" project-support-url="https://developers.google.com/tag-platform/support" > <button> Send feedback </button> </devsite-feedback> <devsite-feature-tooltip ack-key="AckCollectionsBookmarkTooltipDismiss" analytics-category="Site-Wide Custom Events" analytics-action-show="Callout Profile displayed" analytics-action-close="Callout Profile dismissed" analytics-label="Create Collection Callout" class="devsite-page-bookmark-tooltip nocontent" dismiss-button="true" id="devsite-collections-dropdown" dismiss-button-text="Dismiss" close-button-text="Got it"> <devsite-bookmark></devsite-bookmark> <span slot="popout-heading"> Stay organized with collections </span> <span slot="popout-contents"> Save and categorize content based on your preferences. </span> </devsite-feature-tooltip> <devsite-toc class="devsite-nav" depth="2" devsite-toc-embedded disabled> </devsite-toc> <div class="devsite-article-body clearfix "> <section class="devsite-landing-row devsite-landing-row-2-up devsite-landing-row-large-headings devsite-landing-row-no-image-background" header-position="top" > <div class="devsite-landing-row-inner"> <div class="devsite-landing-row-group"> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom" > <div class="devsite-landing-row-item-description" > <div class="devsite-landing-row-item-body"> <h3 id="security-privacy-hub" data-text="Security & Privacy hub" class="hide-from-toc no-link" tabindex="0"> Security & Privacy hub </h3> <div class="devsite-landing-row-item-description-content"> The security and privacy hub is the central place for all security and privacy features supported by Google Tag Manager. This hub offers guidance on the following topics: <ul> <li>Protecting user choices with consent mode</li> <li>Getting ready for first-party data with server-side tagging</li> <li>Managing Tag Manager accounts and user permissions</li> <li>Improving Tag Manager container security</li> </ul> </div> </div> </div> </div> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom" > <div class="devsite-landing-row-item-description" > <div class="devsite-landing-row-item-body"> <div class="devsite-landing-row-item-description-content"> <img src="/static/tag-platform/security/images/safety.png" alt width="220px"> </div> </div> </div> </div> </div> </div> </section> <section class="devsite-landing-row devsite-landing-row-3-up devsite-landing-row-cards" background="grey" header-position="top" > <div class="devsite-landing-row-inner"> <header class="devsite-landing-row-header" > <div class="devsite-landing-row-header-text"> <h2 id="respect-user-privacy-with-consent-mode" data-text="Respect user privacy with consent mode" tabindex="0"> Respect user privacy with consent mode </h2> <div class="devsite-landing-row-description"> Google's consent mode API lets you capture users' privacy choices, while still retaining the best measurement possible. </div> </div> </header> <div class="devsite-landing-row-group"> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom" > <div class="devsite-landing-row-item-description" > <div class="devsite-landing-row-item-body"> <h3 id="websites" data-text="Websites" class="hide-from-toc no-link" tabindex="0"> <a href="https://developers.google.com/tag-platform/security/guides/consent"> Websites </a> </h3> <div class="devsite-landing-row-item-description-content"> To capture users' consent choices, you need a cookie banner on your website. You can implement a banner by using a <a href="https://tagmanager.google.com/gallery/#/?filter=consent">CMP tag from the Template Gallery</a> or manually implement a cookie banner and consent mode. </div> <div class="devsite-landing-row-item-buttons"> <a href="https://developers.google.com/tag-platform/security/guides/consent" class="button " >Get started</a> </div> </div> </div> </div> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom" > <div class="devsite-landing-row-item-description" > <div class="devsite-landing-row-item-body"> <h3 id="apps" data-text="Apps" class="hide-from-toc no-link" tabindex="0"> <a href="https://developers.google.com/tag-platform/security/guides/app-consent"> Apps </a> </h3> <div class="devsite-landing-row-item-description-content"> Consent mode is available through Firebase analytics both on iOS and Android. </div> <div class="devsite-landing-row-item-buttons"> <a href="https://developers.google.com/tag-platform/security/guides/app-consent" class="button " >Get started</a> </div> </div> </div> </div> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom" > <div class="devsite-landing-row-item-description" > <div class="devsite-landing-row-item-body"> <h3 id="consent-management-platforms-cmp" data-text="Consent Management Platforms (CMP)" class="hide-from-toc no-link" tabindex="0"> <a href="https://developers.google.com/tag-platform/tag-manager/templates/consent-apis"> Consent Management Platforms (CMP) </a> </h3> <div class="devsite-landing-row-item-description-content"> If you are maintaining a cookie banner and want to integrate Google's consent mode, create a tag template and upload it to the Template Gallery. </div> <div class="devsite-landing-row-item-buttons"> <a href="https://developers.google.com/tag-platform/tag-manager/templates/consent-apis" class="button " >Get started</a> </div> </div> </div> </div> </div> </div> </section> <section class="devsite-landing-row devsite-landing-row-2-up devsite-landing-row-no-image-background" header-position="top" > <div class="devsite-landing-row-inner"> <header class="devsite-landing-row-header" > <div class="devsite-landing-row-header-text"> <h2 id="server-side-tagging" data-text="Server-side tagging" tabindex="0"> Server-side tagging </h2> </div> </header> <div class="devsite-landing-row-group"> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom" > <div class="devsite-landing-row-item-description" > <div class="devsite-landing-row-item-body"> <div class="devsite-landing-row-item-description-content"> <img src="/static/tag-platform/security/images/server-side-tagging.png" width="80%"> </div> </div> </div> </div> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom" > <div class="devsite-landing-row-item-description" > <div class="devsite-landing-row-item-body"> <div class="devsite-landing-row-item-description-content"> <h3 id="server-side-tagging-is-made-for-the-privacy-first-future" data-text="Server-side tagging is made for the privacy-first future" tabindex="-1">Server-side tagging is made for the privacy-first future</h3> When you implement a server container in Tag Manager, you unlock: <ul> <li><strong>Data transparency</strong>: A single data stream from your website to your own secure server provides insight into collected and transmitted data.</li> <li><strong>Control</strong>: You have the option to redact or augment data before it ever reaches Google or third parties.</li> <li><strong>Durable measurement</strong>: The server container supports enhanced conversions and consent mode. When cookies are set server-side, you build a strong foundation for conversion modeling.</li> <li><strong>Flexibility</strong>: Server containers come with native integrations for Google's Ads ecosystem, Google Cloud Platform, and third-party measurement solutions.</li> </ul> </div> <div class="devsite-landing-row-item-buttons"> <a href="https://developers.google.com/tag-platform/learn/sst-fundamentals" class="button " target="_blank" >Explore server-side tagging</a> </div> </div> </div> </div> </div> </div> </section> <section class="devsite-landing-row devsite-landing-row-2-up devsite-landing-row-cards" background="grey" header-position="top" > <div class="devsite-landing-row-inner"> <header class="devsite-landing-row-header" > <div class="devsite-landing-row-header-text"> <h2 id="tag-manager-container-security" data-text="Tag Manager container security" tabindex="0"> Tag Manager container security </h2> <div class="devsite-landing-row-description"> Tag Manager supports measures to run your containers with a content security policy. Additionally, you can restrict which tag types are allowed to run in your container. </div> </div> </header> <div class="devsite-landing-row-group"> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom" > <div class="devsite-landing-row-item-description" > <div class="devsite-landing-row-item-body"> <h3 id="content-security-policies" data-text="Content security policies" class="hide-from-toc no-link" tabindex="0"> <a href="https://developers.google.com/tag-platform/security/guides/csp"> Content security policies </a> </h3> <div class="devsite-landing-row-item-description-content"> If you run a content security policy on your website, you need to allow Tag Manager and Preview mode to be executed. </div> <div class="devsite-landing-row-item-buttons"> <a href="https://developers.google.com/tag-platform/security/guides/csp" class="button " >Get started</a> </div> </div> </div> </div> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom" > <div class="devsite-landing-row-item-description" > <div class="devsite-landing-row-item-body"> <h3 id="restricted-tag-deployment" data-text="Restricted tag deployment" class="hide-from-toc no-link" tabindex="0"> <a href="https://developers.google.com/tag-platform/tag-manager/restrict"> Restricted tag deployment </a> </h3> <div class="devsite-landing-row-item-description-content"> Set up rules to allow or block the use of certain tag types. </div> <div class="devsite-landing-row-item-buttons"> <a href="https://developers.google.com/tag-platform/tag-manager/restrict" class="button " >Get started</a> </div> </div> </div> </div> </div> </div> </section> <section class="devsite-landing-row devsite-landing-row-2-up devsite-landing-row-cards" header-position="top" > <div class="devsite-landing-row-inner"> <header class="devsite-landing-row-header" > <div class="devsite-landing-row-header-text"> <h2 id="account-management" data-text="Account management" tabindex="0"> Account management </h2> </div> </header> <div class="devsite-landing-row-group"> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom" > <div class="devsite-landing-row-item-description" > <div class="devsite-landing-row-item-body"> <h3 id="users-permissions" data-text="Users & permissions" class="hide-from-toc no-link" tabindex="0"> <a href="https://support.google.com/tagmanager/answer/6107011"> Users & permissions </a> </h3> <div class="devsite-landing-row-item-description-content"> Tag Manager allows you to delegate access to other users at the account and container level. Account-level permissions can be set to either Admin or User. Container-level permissions allow for more granular access. </div> <div class="devsite-landing-row-item-buttons"> <a href="https://support.google.com/tagmanager/answer/6107011" class="button " >Get started</a> </div> </div> </div> </div> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom" > <div class="devsite-landing-row-item-description" > <div class="devsite-landing-row-item-body"> <h3 id="2-step-verification" data-text="2-step verification" class="hide-from-toc no-link" tabindex="0"> <a href="https://support.google.com/tagmanager/answer/4525539"> 2-step verification </a> </h3> <div class="devsite-landing-row-item-description-content"> Administrators can enable 2-step verification to ask for verification before modifying the following: <ul> <li>Custom JavaScript variables</li> <li>Custom HTML tags</li> <li>User settings</li> </ul> </div> <div class="devsite-landing-row-item-buttons"> <a href="https://support.google.com/tagmanager/answer/4525539" class="button " >Get started</a> </div> </div> </div> </div> </div> </div> </section> <section class="devsite-landing-row devsite-landing-row-1-up devsite-landing-row-100" background="grey" header-position="top" > <div class="devsite-landing-row-inner"> <div class="devsite-landing-row-group"> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom" > <div class="devsite-landing-row-item-description" > <div class="devsite-landing-row-item-body"> <div class="devsite-landing-row-item-description-content"> <h2 id="support-options" data-text="Support options" tabindex="-1">Support options</h2> <p>If you need more support with implementing your measurement tags, you can reach out to Google-certified partners or ask the community.</p> <ul> <li>See specialists in the <u><a href="https://enterprisemarketingportal.google/find-a-partner?certificationsFilters=Tag%20Manager" target="_blank">Partner Gallery</a></u> <span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true" translate="no"></span></li> <li><u><a href="https://support.google.com/tagmanager/community" target="_blank">Tag Manager Help Community</a></u> <span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true" translate="no"></span></li> <li><u><a href="https://stackoverflow.com/questions/tagged/google-tag-manager" target="_blank">Stack Overflow Tag Manager community</a></u> <span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true" translate="no"></span> (Not maintained by Google)</li> <li><u><a href="https://stackoverflow.com/questions/tagged/gtag.js" target="_blank">Stack Overflow gtag.js community</a></u> <span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true" translate="no"></span> (Not maintained by Google)</li> </ul> </div> </div> </div> </div> </div> </div> </section> <section class="devsite-landing-row devsite-landing-row-1-up devsite-landing-row-header-centered" header-position="top" > <div class="devsite-landing-row-inner"> <header class="devsite-landing-row-header" > <div class="devsite-landing-row-header-text"> <div class="devsite-landing-row-description"> <devsite-thumb-rating position="main"></devsite-thumb-rating> <button class="button button-blue google-feedback" data-p="102259" data-b="tag-platform-learn" data-context="security-landing-page"> Submit feedback </button> </div> </div> </header> </div> </section> </div> <div class="devsite-floating-action-buttons"> </div> </article> <devsite-notification > </devsite-notification> <div class="devsite-content-data"> <template class="devsite-thumb-rating-feedback"> <devsite-feedback position="thumb-rating" project-name="Security and Privacy hub" product-id="102259" bucket="tag-platform" context="" version="t-devsite-webserver-20241114-r00-rc02.464922260396498922" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="thumb-rating" class="nocontent" project-icon="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/touchicon-180-new.png" project-support-url="https://developers.google.com/tag-platform/support" > <button> Need to tell us more? </button> </devsite-feedback> </template> <template class="devsite-content-data-template"> [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],[],[],[]] </template> </div> </devsite-content> </main> <devsite-footer-promos class="devsite-footer"> </devsite-footer-promos> <devsite-footer-linkboxes class="devsite-footer"> <nav class="devsite-footer-linkboxes nocontent" aria-label="Footer links"> <ul class="devsite-footer-linkboxes-list"> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Connect</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//googledevelopers.blogspot.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Blog </a> </li> <li class="devsite-footer-linkbox-item"> <a href="https://www.instagram.com/googlefordevs/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Instagram </a> </li> <li class="devsite-footer-linkbox-item"> <a href="https://www.linkedin.com/showcase/googledevelopers/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > LinkedIn </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//twitter.com/googledevs" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > X (Twitter) </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//www.youtube.com/user/GoogleDevelopers" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > YouTube </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Programs</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//www.womentechmakers.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Women Techmakers </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/community/gdg" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Google Developer Groups </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/community/experts" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > Google Developer Experts </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/community/accelerators" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Accelerators </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/community/gdsc" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > Google Developer Student Clubs </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Developer consoles</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//console.developers.google.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Google API Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//console.cloud.google.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Google Cloud Platform Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//play.google.com/apps/publish" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > Google Play Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//console.firebase.google.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Firebase Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//console.actions.google.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > Actions on Google Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//cast.google.com/publish" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 6)" > Cast SDK Developer Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//chrome.google.com/webstore/developer/dashboard" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 7)" > Chrome Web Store Dashboard </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//console.home.google.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 8)" > Google Home Developer Console </a> </li> </ul> </li> </ul> </nav> </devsite-footer-linkboxes> <devsite-footer-utility class="devsite-footer"> <div class="devsite-footer-utility nocontent"> <nav class="devsite-footer-sites" aria-label="Other Google Developers websites"> <a href="https://developers.google.com/" class="devsite-footer-sites-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Developers Link"> <picture> <img class="devsite-footer-sites-logo" src="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/lockup-google-for-developers.svg" loading="lazy" alt="Google Developers"> </picture> </a> <ul class="devsite-footer-sites-list"> <li class="devsite-footer-sites-item"> <a href="//developer.android.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Android Link" > Android </a> </li> <li class="devsite-footer-sites-item"> <a href="//developer.chrome.com/home" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Chrome Link" > Chrome </a> </li> <li class="devsite-footer-sites-item"> <a href="//firebase.google.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Firebase Link" > Firebase </a> </li> <li class="devsite-footer-sites-item"> <a href="//cloud.google.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Cloud Platform Link" > Google Cloud Platform </a> </li> <li class="devsite-footer-sites-item"> <a href="//ai.google.dev/" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google AI Link" > Google AI </a> </li> <li class="devsite-footer-sites-item"> <a href="/products" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer All products Link" > All products </a> </li> </ul> </nav> <nav class="devsite-footer-utility-links" aria-label="Utility links"> <ul class="devsite-footer-utility-list"> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="/terms/site-terms" data-category="Site-Wide Custom Events" data-label="Footer Terms link" > Terms </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="//policies.google.com/privacy" data-category="Site-Wide Custom Events" data-label="Footer Privacy link" > Privacy </a> </li> <li class="devsite-footer-utility-item glue-cookie-notification-bar-control"> <a class="devsite-footer-utility-link gc-analytics-event" href="#" data-category="Site-Wide Custom Events" data-label="Footer Manage cookies link" aria-hidden="true" > Manage cookies </a> </li> <li class="devsite-footer-utility-item devsite-footer-utility-button"> <span class="devsite-footer-utility-description">Sign up for the Google for Developers newsletter</span> <a class="devsite-footer-utility-link gc-analytics-event" href="/newsletter/subscribe" data-category="Site-Wide Custom Events" data-label="Footer Subscribe link" > Subscribe </a> </li> </ul> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es" >Español</a> </li> <li role="presentation"> <a role="menuitem" lang="es_419" >Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="it" >Italiano</a> </li> <li role="presentation"> <a role="menuitem" lang="pl" >Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="vi" >Tiếng Việt</a> </li> <li role="presentation"> <a role="menuitem" lang="tr" >Türkçe</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="he" >עברית</a> </li> <li role="presentation"> <a role="menuitem" lang="ar" >العربيّة</a> </li> <li role="presentation"> <a role="menuitem" lang="fa" >فارسی</a> </li> <li role="presentation"> <a role="menuitem" lang="hi" >हिंदी</a> </li> <li role="presentation"> <a role="menuitem" lang="bn" >বাংলা</a> </li> <li role="presentation"> <a role="menuitem" lang="th" >ภาษาไทย</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw" >中文 – 繁體</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> </nav> </div> </devsite-footer-utility> <devsite-panel></devsite-panel> <devsite-concierge data-info-panel data-ai-panel data-api-explorer-panel > </devsite-concierge> </section></section> <devsite-sitemask></devsite-sitemask> <devsite-snackbar></devsite-snackbar> <devsite-tooltip ></devsite-tooltip> <devsite-heading-link></devsite-heading-link> <devsite-analytics> <script type="application/json" analytics>[{&#34;dimensions&#34;: {&#34;dimension6&#34;: &#34;en&#34;, &#34;dimension1&#34;: &#34;Signed out&#34;, &#34;dimension3&#34;: false, &#34;dimension11&#34;: false, &#34;dimension4&#34;: &#34;Security and Privacy hub&#34;, &#34;dimension5&#34;: &#34;en&#34;}, &#34;gaid&#34;: &#34;UA-24532603-1&#34;, &#34;metrics&#34;: {&#34;ratings_count&#34;: &#34;metric2&#34;, &#34;ratings_value&#34;: &#34;metric1&#34;}, &#34;purpose&#34;: 1}]</script> <script type="application/json" tag-management>{&#34;at&#34;: &#34;True&#34;, &#34;ga4&#34;: [{&#34;id&#34;: &#34;G-272J68FCRF&#34;, &#34;purpose&#34;: 1}, {&#34;id&#34;: &#34;G-7GV7GNWXNZ&#34;, &#34;purpose&#34;: 0}], &#34;ga4p&#34;: [{&#34;id&#34;: &#34;G-272J68FCRF&#34;, &#34;purpose&#34;: 1}], &#34;gtm&#34;: [], &#34;parameters&#34;: {&#34;internalUser&#34;: &#34;False&#34;, &#34;language&#34;: {&#34;machineTranslated&#34;: &#34;False&#34;, &#34;requested&#34;: &#34;en&#34;, &#34;served&#34;: &#34;en&#34;}, &#34;pageType&#34;: &#34;product&#34;, &#34;projectName&#34;: &#34;Security and Privacy hub&#34;, &#34;signedIn&#34;: &#34;False&#34;, &#34;tenant&#34;: &#34;developers&#34;, &#34;recommendations&#34;: {&#34;sourcePage&#34;: &#34;&#34;, &#34;sourceType&#34;: 0, &#34;sourceRank&#34;: 0, &#34;sourceIdenticalDescriptions&#34;: 0, &#34;sourceTitleWords&#34;: 0, &#34;sourceDescriptionWords&#34;: 0, &#34;experiment&#34;: &#34;&#34;}, &#34;experiment&#34;: {&#34;ids&#34;: &#34;&#34;}}}</script> </devsite-analytics> <devsite-badger></devsite-badger> <script nonce="4zHCkN4dFcwrfyxzuzfwoak9E44hne"> (function(d,e,v,s,i,t,E){d['GoogleDevelopersObject']=i; t=e.createElement(v);t.async=1;t.src=s;E=e.getElementsByTagName(v)[0]; E.parentNode.insertBefore(t,E);})(window, document, 'script', 'https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/js/app_loader.js', '[1,"en",null,"/js/devsite_app_module.js","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers","https://developers-dot-devsite-v2-prod.appspot.com",1,null,["/_pwa/developers/manifest.json","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/images/video-placeholder.svg","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/favicon-new.png","https://fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"],1,null,[1,6,8,12,14,17,21,25,50,52,63,70,75,76,80,87,91,92,93,97,98,100,101,102,103,104,105,107,108,109,110,112,113,116,117,118,120,122,124,125,126,127,129,130,131,132,133,134,135,136,138,140,141,147,148,149,151,152,156,157,158,159,161,163,164,168,169,170,179,180,182,183,186,191,193,196],"AIzaSyAP-jjEJBzmIyKR4F-3XITp8yM9T1gEEI8","AIzaSyB6xiKGDR5O3Ak2okS4rLkauxGUG7XP0hg","developers.google.com","AIzaSyAQk0fBONSGUqCNznf6Krs82Ap1-NV6J4o","AIzaSyCCxcqdrZ_7QMeLCRY20bh_SXdAYqy70KY",null,null,null,["Profiles__enable_profile_collections","Cloud__enable_legacy_calculator_redirect","MiscFeatureFlags__enable_firebase_utm","BookNav__enable_tenant_cache_key","MiscFeatureFlags__enable_project_variables","Profiles__enable_dashboard_curated_recommendations","MiscFeatureFlags__enable_view_transitions","TpcFeatures__enable_mirror_tenant_redirects","Cloud__enable_cloudx_ping","MiscFeatureFlags__enable_explain_this_code","Profiles__enable_awarding_url","MiscFeatureFlags__enable_variable_operator","Search__enable_page_map","Experiments__reqs_query_experiments","DevPro__enable_developer_subscriptions","Search__enable_suggestions_from_borg","Cloud__enable_cloud_facet_chat","Concierge__enable_concierge_restricted","MiscFeatureFlags__developers_footer_dark_image","Profiles__enable_release_notes_notifications","Concierge__enable_pushui","Cloud__enable_free_trial_server_call","Search__enable_dynamic_content_confidential_banner","DevPro__enable_cloud_innovators_plus","Cloud__enable_cloud_shell","TpcFeatures__enable_required_headers","Search__enable_ai_search_summaries_restricted","MiscFeatureFlags__developers_footer_image","Profiles__enable_page_saving","Concierge__enable_concierge","Cloud__enable_llm_concierge_chat","MiscFeatureFlags__emergency_css","Cloud__enable_cloud_shell_fte_user_flow","Profiles__enable_developer_profiles_callout","Cloud__enable_cloudx_experiment_ids","Analytics__enable_clearcut_logging","EngEduTelemetry__enable_engedu_telemetry","Profiles__enable_public_developer_profiles","Profiles__require_profile_eligibility_for_signin","Profiles__enable_completecodelab_endpoint","Cloud__enable_cloud_dlp_service","Significatio__enable_by_tenant","Search__enable_ai_search_summaries","Search__enable_ai_eligibility_checks","Profiles__enable_complete_playlist_endpoint","CloudShell__cloud_code_overflow_menu","CloudShell__cloud_shell_button","Profiles__enable_recognition_badges"],null,null,"AIzaSyBLEMok-5suZ67qRPzx0qUtbnLmyT_kCVE","https://developerscontentserving-pa.clients6.google.com","AIzaSyCM4QpTRSqP5qI4Dvjt4OAScIN8sOUlO-k","https://developerscontentsearch-pa.clients6.google.com",1,4,null,"https://developerprofiles-pa.clients6.google.com",[1,"developers","Google for Developers","developers.google.com",null,"developers-dot-devsite-v2-prod.appspot.com",null,null,[1,1,[1],null,null,null,null,null,null,null,null,[1],null,null,null,null,null,null,[1],[1,null,null,[1,20],"/recommendations/information"],null,null,null,[1,1,1],[1,1,null,1,1]],null,[null,null,null,null,null,null,"/images/lockup-new.svg","/images/touchicon-180-new.png",null,null,null,null,1,null,null,null,null,null,null,null,null,1,null,null,null,"/images/lockup-dark-theme-new.svg",[]],[],null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[6,1,14,15,20,22,23,29,32,36],null,[[null,null,null,[3,7,10,2,39,17,4,32,24,11,12,13,34,15,25],null,null,[1,[["docType","Choose a content type",[["Tutorial",null,null,null,null,null,null,null,null,"Tutorial"],["Guide",null,null,null,null,null,null,null,null,"Guide"],["Sample",null,null,null,null,null,null,null,null,"Sample"]]],["product","Choose a product",[["Android",null,null,null,null,null,null,null,null,"Android"],["ARCore",null,null,null,null,null,null,null,null,"ARCore"],["ChromeOS",null,null,null,null,null,null,null,null,"ChromeOS"],["Firebase",null,null,null,null,null,null,null,null,"Firebase"],["Flutter",null,null,null,null,null,null,null,null,"Flutter"],["Assistant",null,null,null,null,null,null,null,null,"Google Assistant"],["GoogleCloud",null,null,null,null,null,null,null,null,"Google Cloud"],["GoogleMapsPlatform",null,null,null,null,null,null,null,null,"Google Maps Platform"],["GooglePay",null,null,null,null,null,null,null,null,"Google Pay & Google Wallet"],["GooglePlay",null,null,null,null,null,null,null,null,"Google Play"],["Tensorflow",null,null,null,null,null,null,null,null,"TensorFlow"]]],["category","Choose a topic",[["AiAndMachineLearning",null,null,null,null,null,null,null,null,"AI and Machine Learning"],["Data",null,null,null,null,null,null,null,null,"Data"],["Enterprise",null,null,null,null,null,null,null,null,"Enterprise"],["Gaming",null,null,null,null,null,null,null,null,"Gaming"],["Mobile",null,null,null,null,null,null,null,null,"Mobile"],["Web",null,null,null,null,null,null,null,null,"Web"]]]]]],[1,1],null,1],[[["UA-24532603-1"],["UA-22084204-5"],null,null,["UA-24532603-5"],null,null,[["G-272J68FCRF"],null,null,[["G-272J68FCRF",2]]],[["UA-24532603-1",2]],null,[["UA-24532603-5",2]],null,1],[[6,5],[1,1],[14,11],[16,13],[13,10],[3,2],[12,9],[15,12],[5,4],[4,3],[11,8]],[[2,2],[1,1]]],null,4,null,null,null,null,null,null,null,null,null,null,null,null,null,"developers.devsite.google"],null,"pk_live_5170syrHvgGVmSx9sBrnWtA5luvk9BwnVcvIi7HizpwauFG96WedXsuXh790rtij9AmGllqPtMLfhe2RSwD6Pn38V00uBCydV4m"]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10