# 本地化版本页面指南

> 来源：Google Search Central

---

** Snippets  **
  ** Images  **
  ** Videos  **
  ** Structured data  **
  ** Favicons  **

  * Site-specific guides
  ** Ecommerce  **
  ** International and multilingual sites  **

  * Data analysis
  ** Get started with Search Console  **
  ** Debug traffic drops  **
  ** Using Search Console and Google Analytics data for SEO  **
  ** Get started with Google Trends  **

[ Support ](https://developers.google.com/search/help) [ Blog ](https://developers.google.com/search/blog) [ What's new ](https://developers.google.com/search/news)

  ** All updates  **
  ** Documentation updates  **
  ** Ranking updates  **
  ** New YouTube videos  **
  ** Recent podcast episodes  **

[ Events ](https://developers.google.com/search/events) [ Case studies ](https://developers.google.com/search/case-studies) `/`

  * English
  * Deutsch
  * Español
  * Español – América Latina
  * Français
  * Indonesia
  * Italiano
  * Polski
  * Português – Brasil
  * Tiếng Việt
  * Türkçe
  * Русский
  * العربيّة
  * हिंदी
  * ภาษาไทย
  * 中文 – 简体
  * 中文 – 繁體
  * 日本語
  * 한국어

Sign in

  ** Documentation **

[Search Console](https://goo.gle/searchconsole) [ ](https://developers.google.com/search)

  ** Google Search Central **

  ** Documentation  **
    * More 
  ** Support  **
  ** Blog  **
  ** What's new  **
    * More 
  ** Events  **
  ** Case studies  **

  **Introduction**
  * Search Essentials
    **Overview**
    **Technical requirements**
    **Spam policies**
  * SEO fundamentals
    **SEO Starter Guide**
    **How Google Search works**
    **Creating helpful, reliable, people-first content**
    **Do you need an SEO?**
    **Maintaining your site's SEO**
    **Developer's guide to Search**
    **Get your website on Google**
    **Guidance on using generative AI**
  * Crawling and indexing
    **Overview**
    **File types Google can index**
    **URL structure**
    **Links**
    * Sitemaps
      **Learn about sitemaps**
      **Build and submit a sitemap**
      **Manage sitemaps with sitemap index file**
      * Sitemap extensions
        **Image sitemaps**
        **News sitemaps**
        **Video sitemaps and alternatives**
        **Combining sitemap extensions**
    * Crawler management
      **Ask Google to recrawl your URLs**
      **Troubleshoot crawl errors**
      * Google crawlers
        **List of Google crawlers**
        **Googlebot**
        **Reduce the Google crawl rate**
        **Verifying Googlebot and other Google crawlers**
    * robots.txt
      **Introduction to robots.txt**
      **How Google interprets the robots.txt specification**
    * Canonicalization
      **What is URL canonicalization**
      **How to specify a canonical URL with rel="canonical" and other methods**
      **Fix canonicalization issues**
    **Mobile site and mobile-first indexing**
    * AMP
      **AMP on Google Search guidelines**
      **Understand how AMP works in search results**
      **Enhance AMP content**
      **Validate AMP content**
      **Remove AMP content**
    * JavaScript
      **Understand the JavaScript SEO basics**
      **Fix search-related JavaScript problems**
      **Fix lazy-loaded content**
      **Dynamic rendering as a workaround**
    * Page and content metadata
      **Page metadata**
      * Meta tags
        **Meta tags and HTML attributes that Google supports**
        **Robots meta tag, data-nosnippet, and X-Robots-Tag**
        **noindex**
      **rel attributes**
    * Removals
      **Control what you share with Google**
      **Page removals**
      **Image removals**
      **Redacted information**
    * Site moves and changes
      **Redirects and Google Search**
      * Site moves
        **Changing your hosting**
        **Move a site with URL changes**
      **A/B testing**
      **Temporarily pause or disable a website**
  * Ranking and search appearance
    **Overview**
    **AI features**
    **Byline dates**
    **Favicons**
    **Featured snippets**
    **Flexible Sampling**
    **Google Discover**
    **Images**
    * Local features
      **Business details**
      **Top Places List**
      **Opting out of local search results**
    * Page experience
      **Understanding page experience**
      **Core Web Vitals**
      **Interstitials and dialogs**
      **Get started with signed exchanges on Google Search**
    **Preferred sources**
    * Ranking systems
      **A guide to Google Search ranking systems**
      **Reviews system**
    * Ranking updates
      **List of ranking updates**
      **Core updates**
      **Spam updates**
    **Site names**
    **Sitelinks**
    **Snippets**
    * Structured data
      **Understand how structured data works**
      **Structured data general guidelines**
      **Enriched search results**
      **Generate structured data with JavaScript**
      * Feature guides
        **All structured data features**
        **Article**
        **Book actions**
        **Breadcrumb**
        **Carousel**
        **Course list**
        **Dataset**
        **Discussion forum**
        **Education Q&A**
        **Employer aggregate rating**
        **Fact check**
        **Event**
        **FAQ**
        **Image metadata**
        **Job posting**
        **Local business**
        **Math solver**
        **Movie carousel**
        **Organization**
        * Shopping
          **Overview**
          **Product snippet**
          **Merchant listing**
          **Variants**
          **Loyalty program**
          **Merchant return policy**
          **Merchant shipping policy**
        **Profile page**
        **Q&A**
        **Recipe**
        **Review snippet**
        **Software app**
        **Speakable**
        **Subscription and paywalled content**
        **Vacation rental**
        **Video**
    **Title links**
    * Translated features
      **Translated results**
      **Ad networks and translation-related Google Search features**
    **Videos**
    **Visual Elements gallery**
    * Web Stories
      **Enable Web Stories on Google**
      **Best practices for creating Web Stories**
      **Web Story content policy**
    * Early Adopters Program
      **Package tracking**
      **Structured data carousels (beta)**
  * Monitoring and debugging
    **Debug drops in Search traffic**
    * Monitor with Search Console
      **Get started with Search Console**
      **Improve SEO with a bubble chart**
      **Using Search Console and Google Analytics data for SEO**
    * Debug with search operators
      **Overview**
      **site: search operator**
      **Google Images search operators**
    * Preventing and monitoring abuse
      **Overview**
      **Prevent user-generated spam**
      **Malware and unwanted software**
      **Prevent a malware infection**
      **Social engineering (phishing and deceptive sites)**
      **Google Safe Browsing Repeat Offenders Policy**
    **Get started with Google Trends**
  * Site-specific guides
    * Ecommerce
      **Overview**
      **Where content can appear**
      **Share product data**
      **Include structured data**
      **Launch a new website**
      **Write high quality reviews**
      **Design a URL structure**
      **Ecommerce site structure**
      **Pagination, incremental page loading, and Search**
    * International and multilingual
      **Overview**
      **Managing multi-regional and multilingual sites**
      **Tell Google about localized versions of your page**
      **How Google crawls locale-adaptive pages**
    * Explicit content
      **Guidelines for sites with explicit content**
      **What to do if your site is incorrectly flagged as explicit**

  * SEO fundamentals 
  ** Introduction  **
  ** Search Essentials  **
  ** SEO Starter Guide  **
  ** How Google Search Works  **
  ** Do you need an SEO?  **
  * Crawling and indexing 
  ** Sitemaps  **
  ** robots.txt  **
  ** Meta tags  **
  ** Crawler management  **
  ** Removals  **
  ** Canonicalization  **
  ** Redirects  **
  ** JavaScript SEO  **
  * Ranking and search appearance 
  ** Visual Elements gallery  **
  ** Title links  **
  ** Snippets  **
  ** Images  **
  ** Videos  **
  ** Structured data  **
  ** Favicons  **
  * Site-specific guides 
  ** Ecommerce  **
  ** International and multilingual sites  **
  * Data analysis 
  ** Get started with Search Console  **
  ** Debug traffic drops  **
  ** Using Search Console and Google Analytics data for SEO  **
  ** Get started with Google Trends  **

  ** All updates  **
  ** Documentation updates  **
  ** Ranking updates  **
  ** New YouTube videos  **
  ** Recent podcast episodes  **

  ** Home **
  ** Search Central **
  ** Documentation **

Send feedback  Tell Google about localized versions of your page If you have multiple versions of a page for different languages or regions, tell Google about these different variations. Doing so will help Google Search point users to the most appropriate version of your page by language or region. Note that even without taking action, Google might still find alternate language versions of your page, but it is usually best for you to explicitly indicate your language- or region-specific pages. Some example scenarios where indicating alternate pages is recommended:

  * If you keep the main content in a single language and translate only the template, such as the navigation and footer. Pages that feature user-generated content, like forums, typically do this.
  * If your content has small regional variations with similar content, in a single language. For example, you might have English-language content targeted to the US, GB, and Ireland.
  * If your site content is fully translated into multiple languages. For example, you have both German and English versions of each page.

Localized versions of a page are only considered [duplicates](/search/docs/crawling-indexing/consolidate-duplicate-urls) if the main content of the page remains untranslated. Methods for indicating your alternate pages There are three ways to indicate multiple language/locale versions of a page to Google:

  * HTML
  * HTTP Headers
  * Sitemap

The three methods are equivalent from Google's perspective and you can choose the method that's the most convenient for your site. While you can use all three methods at the same time, there's no benefit in Search (in fact, it maybe be much harder to manage three implementations instead of just picking one).  Use `hreflang` to tell Google about the variations of your content, so that we can understand that these pages are localized variations of the same content. Google doesn't use `hreflang` or the HTML `lang` attribute to detect the language of a page; instead, we use algorithms to determine the language.  Guidelines for all methods

  * Each language version must list itself as well as all other language versions.
  * Alternate URLs must be fully-qualified, including the transport method (http/https), so:  
`https://example.com/foo`, not `//example.com/foo` or `/foo`
  * Alternate URLs do not need to be in the same domain.
  * If you have several alternate URLs targeted at users with the same language but in different locales, it's a good idea to also provide a catchall URL for geographically unspecified users of that language. For example, if you have specific URLs for English speakers in Ireland (`en-ie`), Canada (`en-ca`), and Australia (`en-au`), provide a generic English (`en`) page for searchers in the US, UK, and all other English-speaking locations. It can be one of the specific pages, if you choose. 
  * If two pages don't both point to each other, the tags will be ignored. This is so that someone on another site can't arbitrarily create a tag naming itself as an alternative version of one of your pages.
  * If it becomes difficult to maintain a complete set of bidirectional links for every language, you can omit some languages on some pages; Google will still process the ones that point to each other. However, it is important to link newly expanded language pages bidirectionally to the originating/dominant language(s). For example, if your site was originally created in French with URLs on `.fr`, it's more important to bidirectionally link newer Mexican (`.mx`) and Spanish (`.es`) pages to your strong `.fr` presence, rather than to bidirectionally link your new Spanish language variant pages (`.mx` and `.es`) to each other.
  * Consider adding a fallback page for unmatched languages, especially on language/country selectors or auto-redirecting home pages. Use the the `x-default` value:  
`<link rel="alternate" href="https://example.com/" hreflang="x-default" />`

HTML tags Add `<link rel="alternate" hreflang="lang_code"... >` elements to your page header to tell Google all of the language and region variants of a page. This is useful if you don't have a sitemap or the ability to specify HTTP response headers for your site.  For each variation of the page, include a set of `<link>` elements in the `<head>` element, one link for each page variant including itself. The set of links is identical for every version of the page. See the additional guidelines. Here is the syntax of each `link` element:
    
    
    <link rel="alternate" hreflang="lang_code" href="url_of_page" />

Syntax  
---  
`lang_code` |  A supported language/region code targeted by this version of the page, or `x-default` to match any language not explicitly listed by an `hreflang` tag on the page.   
`url_of_page` |  The fully-qualified URL for the version of this page for the specified language/region.   
The `<link>` tags must be inside a [well-formed `<head>` section](/search/docs/crawling-indexing/valid-page-metadata) of the HTML. If in doubt, paste code from your rendered page into an [HTML validator](https://validator.w3.org/) to ensure that the links are inside the `<head>` element. Additionally, don't combine `link` tags for alternate representations of the document; for example don't combine `hreflang` annotations with other attributes such as `media` in a single `<link>` tag.  Example Example Widgets, Inc has a website that serves users in the USA, UK, and Germany. The following URLs contain substantially the same content, but with regional variations: URLs with regional variations  
---  
`https://en.example.com/page.html` | Generic English language home page that contains information about fees for shipping internationally from the USA.  
`https://en-gb.example.com/page.html` | UK home page that displays prices in pounds sterling.  
`https://en-us.example.com/page.html` | US home page that displays prices in US dollars.  
`https://de.example.com/page.html` | German language home page.  
`https://www.example.com/` | Default page that doesn't target any language or locale; it has selectors to let users pick their language and region.  
Note that the language-specific subdomains in these URLs (`en`, `en-gb`, `en-us`, `de`) are not used by Google to determine the target audience for the page; you must explicitly map the target audience. Here is the HTML that would be in the `<head>` section of all the pages listed in the URLs with regional variations table. It would direct US, UK, generic English speakers, and German speakers to localized pages, and all others to a generic home page. Google Search returns the appropriate result for the user, according to their browser settings.
    
    
    <head>
     <title>Widgets, Inc</title>
      <link rel="alternate" hreflang="en-gb"
           href="https://en-gb.example.com/page.html" />
      <link rel="alternate" hreflang="en-us"
           href="https://en-us.example.com/page.html" />
      <link rel="alternate" hreflang="en"
           href="https://en.example.com/page.html" />
      <link rel="alternate" hreflang="de"
           href="https://de.example.com/page.html" />
     <link rel="alternate" hreflang="x-default"
           href="https://www.example.com/" />
    </head>

HTTP Headers You can return an [HTTP header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers) with your page's GET response to tell Google about all of the language and region variants of a page. This is useful for non-HTML files (like PDFs). Here is the format of the header:
    
    
    Link: <url1>; rel="alternate"; hreflang="lang_code_1", <url2>; rel="alternate"; hreflang="lang_code_2", ...

Syntax  
---  
`<url_x>` | The fully-qualified URL of the alternate page corresponding to the locale string assigned to the associated `hreflang` attribute. The URL must include surrounding `<` and `>` marks. Example: `<https://www.google.com>`  
`lang_code_x` | A supported language/region code targeted by this version of the page, or `x-default` to matches any language not explicitly listed by an `hreflang` tag on the page.  
You must specify a set of `<url>`, `rel="alternate"`, and `hreflang` values for every version of the page including the requested version, separated by a comma as shown in the following example. The `Link:` header returned for every version of a page is identical. See the additional guidelines. Example Here is an example `Link:` header returned by a site that has three versions of a PDF file: one for English speakers, one for German speakers from Switzerland, and one for all other German speakers:
    
    
    Link: <https://example.com/file.pdf>; rel="alternate"; hreflang="en",
          <https://de-ch.example.com/file.pdf>; rel="alternate"; hreflang="de-ch",
          <https://de.example.com/file.pdf>; rel="alternate"; hreflang="de"

Sitemap You can use an [XML sitemap](/search/docs/crawling-indexing/sitemaps/overview) to tell Google all of the language and region variants for each URL. To do so, add a `<loc>` element specifying a single URL, with child `<xhtml:link>` entries listing every language/locale variant of the page including itself. Therefore if you have 3 versions of a page, your sitemap will have entries for the URLs of each version, and each entry will have 3 identical child entries.  Sitemap rules:

  * Specify the xhtml namespace as follows: 
    
        xmlns:xhtml="http://www.w3.org/1999/xhtml"

  * Create a separate `<url>` element for each URL as you would with any other sitemap. 
  * Each `<url>` element must include a `<loc>` child indicating the page URL. 
  * Each `<url>` element must have a child element `<xhtml:link rel="alternate" hreflang="supported_language-code">` that lists every alternate version of the page, including itself. The order of these child `<xhtml:link>` elements doesn't matter, though you might want to keep them in the same order to make them easier for you to check for mistakes. Child elements don't count towards the URL limit for sitemaps. 
  * Upload the sitemap to a directory on your site that the sitemap is applicable to. Keep in mind that a sitemap can only contain descendant URLs of the directory where the sitemap is hosted from. 
  * Our [documentation on sitemaps](/search/docs/crawling-indexing/sitemaps/build-sitemap) also applies to the sitemap extensions. Make sure to follow [general sitemap guidelines](/search/docs/crawling-indexing/sitemaps/build-sitemap#general-guidelines).
  * See the additional guidelines.

Example Here is an English language page targeted at English speakers worldwide, with equivalent versions of this page targeted at German speakers worldwide and German speakers located in Switzerland. Here are all the URLs present on your site:

  * `www.example.com/english/page.html` targeted at English speakers.
  * `www.example.de/deutsch/page.html` targeted at German speakers.
  * `www.example.de/schweiz-deutsch/page.html` targeted at German speakers in Switzerland.

Here is the sitemap for those three pages:
    
    
    <?xml version="1.0" encoding="UTF-8"?>
    <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
      xmlns:xhtml="http://www.w3.org/1999/xhtml">
      <url>
        <loc>https://www.example.com/english/page.html</loc>
        <xhtml:link
                   rel="alternate"
                   hreflang="de"
                   href="https://www.example.de/deutsch/page.html"/>
        <xhtml:link
                   rel="alternate"
                   hreflang="de-ch"
                   href="https://www.example.de/schweiz-deutsch/page.html"/>
        <xhtml:link
                   rel="alternate"
                   hreflang="en"
                   href="https://www.example.com/english/page.html"/>
      </url>
      <url>
        <loc>https://www.example.de/deutsch/page.html</loc>
        <xhtml:link
                   rel="alternate"
                   hreflang="de"
                   href="https://www.example.de/deutsch/page.html"/>
        <xhtml:link
                   rel="alternate"
                   hreflang="de-ch"
                   href="https://www.example.de/schweiz-deutsch/page.html"/>
        <xhtml:link
                   rel="alternate"
                   hreflang="en"
                   href="https://www.example.com/english/page.html"/>
      </url>
      <url>
        <loc>https://www.example.de/schweiz-deutsch/page.html</loc>
        <xhtml:link
                   rel="alternate"
                   hreflang="de"
                   href="https://www.example.de/deutsch/page.html"/>
        <xhtml:link
                   rel="alternate"
                   hreflang="de-ch"
                   href="https://www.example.de/schweiz-deutsch/page.html"/>
        <xhtml:link
                   rel="alternate"
                   hreflang="en"
                   href="https://www.example.com/english/page.html"/>
      </url>
    </urlset>

Supported language and region codes The `hreflang` attribute's value is comprised of one or optionally two values, separated by a dash. For example, `en-US`. The first code of the `hreflang` attribute is the language code (in [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format) followed by an optional second code that represents the region code (in [ISO 3166-1 Alpha 2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format) of an alternate URL. Only language codes listed in ISO 639-1 and region codes listed in ISO 3166-1 Alpha 2 are supported; other codes that aren't listed in those standards, such as es-419, aren't supported. Warning: You can't specify the country code by itself. The first code stands for the language and Google doesn't automatically derive the language from a country code.  To target different language speakers in Belgium, you might use the following language and region codes:

  * Good (German for users in Belgium): `de-be`
  * Good (Dutch for users in Belgium): `nl-be`
  * Good (French for users in Belgium): `fr-be`
  * Bad because the first code is for language (`be` is the Belarusian language code): `be`

To simplify your labeling, you can specify a language code by itself. For example:

  * `de`: German language content, independent of region
  * `en-GB`: English language content, for users in the UK
  * `de-ES`: German language content, for users in Spain

For language script variations, the proper script is derived from the country. For example, when using `zh-TW` for users in Taiwan, the language script is automatically derived (in this example: Chinese-Traditional). You can also specify the script itself explicitly using [ISO 15924](https://unicode.org/iso15924/iso15924-codes.html), like this:

  * `zh-Hant`: Chinese (Traditional)
  * `zh-Hans`: Chinese (Simplified)

Like with other language codes, you can also specify an optional region. For example, use `zh-Hans-US` to specify Chinese (Simplified) for users in the United States.  Use the `x-default` value for unmatched languages The reserved `x-default` value is used when no other language/region matches the user's browser setting. This value is recommended for specifying the fallback page for users whose language settings don't match any of your site's localized versions. While you can use the `x-default` value for any page, it was designed for language selector pages and so it will work best with those.  There's no need to specify a language code for the `x-default` value; the page is targeted to users whose language settings are unmatched on your site, thus the language of the page is irrelevant.  To implement the `hreflang="x-default"` annotation, add an additional `link` tag to the existing `hreflang` annotations, and set the `href` attribute to the URL where you want your users to land if your site doesn't support their language. For example, an HTML implementation may look like this: 
    
    
    <link rel="alternate" href="https://example.com/en-gb" hreflang="en-gb" />
    <link rel="alternate" href="https://example.com/en-us" hreflang="en-us" />
    <link rel="alternate" href="https://example.com/en-au" hreflang="en-au" />
    <link rel="alternate" href="https://example.com/country-selector" hreflang="x-default" />

Troubleshooting Common Mistakes Here are the most common mistakes with `hreflang` usage:

  * Missing return links: If page X links to page Y, page Y must link back to page X. If this is not the case for all pages that use `hreflang` annotations, those annotations may be ignored or not interpreted correctly. For example, considering this link on `https://de.example.com/index.html`: 
    
        <link rel="alternate" hreflang="en-gb" href="https://en-gb.example.com/index.html" />

You must also have a `hreflang` link on `https://en-gb.example.com/index.html` that points back to the `de` version of the content: 
    
        <link rel="alternate" hreflang="de" href="https://de.example.com/index.html" />

  * Incorrect language codes: Make sure that all language codes you use identify the language (in ISO 639-1 format) and optionally the region (in ISO 3166-1 Alpha 2 format) of an alternate URL. Specifying the region alone is not valid. 
  * Incorrect region codes: Make sure you're using officially assigned code elements for the regions you're trying to identify (in [ISO 3166-1 Alpha 2 format](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)). If you use codes that are listed as reserved for something else, Google Search ignores that part of the annotation (for example, using `EU`, `UN`, or `UK` in `hreflang` annotations doesn't have an effect on Google Search). 

Debugging `hreflang` errors There are many third-party tools available that you can use to debug `hreflang` annotations. Here are a few popular tools. These tools are not maintained or checked by Google. 

  **Aleyda Solis's `hreflang` tags generator tool** for generating or modifying `hreflang` tags. 
  **Merkle SEO `hreflang` tag testing tool** for validating `hreflang` tags on a single live page. 

Send feedback  Except as otherwise noted, the content of this page is licensed under the [Creative Commons Attribution 4.0 License](https://creativecommons.org/licenses/by/4.0/), and code samples are licensed under the [Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0). For details, see the [Google Developers Site Policies](https://developers.google.com/site-policies). Java is a registered trademark of Oracle and/or its affiliates. Last updated 2025-12-22 UTC. Need to tell us more?  [[["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"]],["Last updated 2025-12-22 UTC."],[],["To help Google direct users to the correct language/region version of your pages, use `hreflang` attributes. Implement these via HTML `\u003clink\u003e` tags, HTTP headers, or XML sitemaps, ensuring bidirectional linking among all variants. Use ISO codes for language (639-1) and region (3166-1 Alpha 2) and provide an `x-default` for unmatched languages. Verify all pages must link to all of the variants including themselves, and use valid, fully-qualified URLs. Use debugging tools to maintain `hreflang` tags.\n"]] 

  ** LinkedIn  ** Join us on LinkedIn
  ** YouTube  ** Watch our videos
  ** Blog  ** Subscribe to our RSS feed
  ** Podcast  ** Listen to Search Off the Record
  ** X (Twitter)  ** Join us on X (Twitter)

  * Get support
    ** Go to the help forum **
    ** Submit a question for office hours **
    ** Report spam, phishing, or malware **
    ** More support resources **
  * Resources
    ** Do you need an SEO? **
    ** SEO Starter Guide **
    ** Status of Search systems **
    ** Search Console documentation **
    ** Case Studies **
  * Tools
    ** Search Console **
    ** Rich Results Test **
    ** PageSpeed Insights **
    ** AMP Test **

[ ](https://developers.google.com/)

  ** Android **
  ** Chrome **
  ** Firebase **
  ** Google Cloud Platform **
  ** Google AI **
  ** All products **

  ** Terms **
  ** Privacy **
  * Manage cookies 

  * English
  * Deutsch
  * Español
  * Español – América Latina
  * Français
  * Indonesia
  * Italiano
  * Polski
  * Português – Brasil
  * Tiếng Việt
  * Türkçe
  * Русский
  * العربيّة
  * हिंदी
  * ภาษาไทย
  * 中文 – 简体
  * 中文 – 繁體
  * 日本語
  * 한국어
