<!DOCTYPE html>
<html lang="en">
<head>

<link rel="preconnect" href="https://www.googletagmanager.com">
<script >(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
  new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
  'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
  })(window,document,'script','dataLayer','GTM-W8MVQXG');</script>

<meta charset="utf-8">
<meta name="description" content="Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="theme-color" content="#00add8">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Google+Sans:400,500,600|Work+Sans:400,500,600|Roboto:400,500,700|Open+Sans:Source+Code+Pro|Material+Icons">
<link rel="stylesheet" href="/css/styles.css">

  <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
  new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
  'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
  })(window,document,'script','dataLayer','GTM-W8MVQXG');</script>

<script src="/js/site.js"></script>
<title>Chrome Content Optimization Service Runs on Go - go.dev</title>
</head>
<body class="Site">

<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-W8MVQXG"
  height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>

<header class="Site-header js-siteHeader">
  <div class="Banner">
    <div class="Banner-inner">
      <div class="Banner-message">Black Lives Matter</div>
      <a class="Banner-action"
         href="https://support.eji.org/give/153413/#!/donation/checkout"
         target="_blank"
         rel="noopener">
         Support the Equal Justice Initiative
      </a>
    </div>
  </div>
  <div class="Header Header--dark">
    <nav class="Header-nav">
      <a href="https://go.dev/">
        <img
          class="js-headerLogo Header-logo"
          src="/images/go-logo-white.svg"
          alt="Go">
      </a>
      <div class="Header-rightContent">

<form
  class="js-searchForm SearchForm" action="https://pkg.go.dev/search" role="search">
  <button
    class="js-searchFormSubmit SearchForm-submit"
    aria-label="Search for a package">
    <svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
      <path fill-rule="evenodd" clip-rule="evenodd" d="M11.76 10.27L17.49 16L16 17.49L10.27 11.76C9.2 12.53 7.91 13 6.5 13C2.91 13 0 10.09 0 6.5C0 2.91 2.91 0 6.5 0C10.09 0 13 2.91 13 6.5C13 7.91 12.53 9.2 11.76 10.27ZM6.5 2C4.01 2 2 4.01 2 6.5C2 8.99 4.01 11 6.5 11C8.99 11 11 8.99 11 6.5C11 4.01 8.99 2 6.5 2Z">
      </svg>
  </button>
  <input class="SearchForm-input" aria-label="Search for a package" type="text" name="q" size="1"
         placeholder="Search for a package" autocapitalize="off" autocomplete="off" autocorrect="off"
         spellcheck="false" title="Search for a package">
        </input>
</form>

        <ul class="Header-menu">
          <li class="Header-menuItem ">
            <a href="/solutions/">Why Go</a>
          </li>
          <li class="Header-menuItem ">
            <a href="/learn/">Getting Started</a>
          </li>
          <li class="Header-menuItem ">
            <a href="https://pkg.go.dev">Discover Packages</a>
          </li>
          <li class="Header-menuItem ">
            <a href="/about">About</a>
          </li>
        </ul>
        <button class="Header-navOpen js-headerMenuButton Header-navOpen--white" aria-label="Open navigation.">
        </button>
      </div>
    </nav>

  </div>
</header>
<aside class="NavigationDrawer js-header">
  <nav class="NavigationDrawer-nav">
    <div class="NavigationDrawer-header">
      <a href="https://go.dev/">
        <img class="NavigationDrawer-logo" src="/images/go-logo-blue.svg" alt="Go.">
      </a>
    </div>
    <ul class="NavigationDrawer-list">
        <li class="NavigationDrawer-listItem  NavigationDrawer-listItem--active">
          <a href="/solutions/">Why Go</a>
        </li>
        <li class="NavigationDrawer-listItem ">
          <a href="/learn/">Getting Started</a>
        </li>
        <li class="NavigationDrawer-listItem ">
          <a href="https://pkg.go.dev">Discover Packages</a>
        </li>
        <li class="NavigationDrawer-listItem ">
          <a href="/about">About</a>
        </li>
    </ul>
  </nav>
</aside>
<div class="NavigationDrawer-scrim js-scrim" role="presentation"></div>
<main class="SiteContent SiteContent--default">
<div>
  <div class="WhoUsesSubPage-hero--caseStudy">
    <div class="WhoUsesSubPage-heroInner--caseStudy">
      <div class="WhoUsesSubPage-heroContent--caseStudy">
        <div class="WhoUsesSubPage-heroText--caseStudy">

  <div class="BreadcrumbNav">
    <ol class="BreadcrumbNav-inner">














      <li class="BreadcrumbNav-li ">
        <a class="BreadcrumbNav-link" href="/solutions/">

            Why Go

        </a>
      </li>





      <li class="BreadcrumbNav-li ">
        <a class="BreadcrumbNav-link" href="/solutions/google/">

            Google

        </a>
      </li>





      <li class="BreadcrumbNav-li active">
        <a class="BreadcrumbNav-link" href="/solutions/google/chrome">

            Chrome

        </a>
      </li>


    </ol>

  </div>
          <h1>Chrome Content Optimization Service Runs on Go</h1>


        </div>

            <div class="WhoUsesSubPage-heroImg">
              <img src="/images/go_chrome_case_study.png" alt="Chrome">
            </div>

        </div>
      </div>

  </div>
  <article class="Article Article--solutions">

      <div class="CaseStudy-content">
        <div class="CaseStudy-contentBody">
          <p>When the product Chrome comes to mind, you probably think solely of the
user-installed browser. But behind the scenes, Chrome has an extensive fleet of
backends. Among these is the Chrome Optimization Guide service. This service
forms an important basis for Chrome&rsquo;s user experience strategy, operating in the
critical path for users, and is implemented in Go.</p>

<p>The Chrome Optimization Guide service is designed to bring the power of Google
to Chrome by providing hints to the installed browser about what optimizations
may be performed on a page load, as well as when they can be applied most
effectively. It comprises a conjunction of real-time servers and batch logs
analysis.</p>

<p>All Lite mode users of Chrome receive data via the service through the following
mechanisms: a data blob push that provides hints for well-known sites in their
geography, a check-in to Google servers to retrieve hints for hosts that the
specific user visits often, and on demand for page loads for which a hint is not
already on the device. Were the Chrome Optimization Guide service to suddenly
disappear, users might notice a dramatic change in the speed of their page loads
and the amount of data consumed while browsing the web.</p>

<div class="BackgroundQuote">
    <p class="BackgroundQuote-body">
      “Given that Go was a success for us, we plan to continue to use
it where appropriate”
    </p>
    <div class="BackgroundQuote-author">
      <span>&mdash; Sophie Chang</span>
      ,&nbsp;
      <span class="BackgroundQuote-title">Software Engineer</span>
      </div>
    </div>


<p>When the Chrome engineering team started building the service, only a few
members had comfort with Go. Most of the team was more familiar with C++, but
they found the complex boilerplate required to stand up a C++ server to be too
much. The team shared that “[they] were pretty motivated to learn Go due to its
simplicity, fast ramp-up, and ecosystem.” and that “[their] sense of adventure
was rewarded.” Millions of users rely on this service to make their Chrome
experience better, and choosing Go was no small decision. After their experience
so far, the team also shared that “given that Go was a success for us, we plan
to continue to use it where appropriate.”</p>

<p>In addition to the Chrome Optimization Guide team, engineering teams across
Google have adopted Go in their development process. Read about how the <a href="/solutions/google/coredata/">Core
Data Solutions</a> and <a href="/solutions/google/firebase/">Firebase
Hosting</a> teams use Go to build fast, reliable,
and efficient software at scale.</p>

<p><em>Editorial note: The Go team would like to thank Sophie Chang for her
contributions to this story.</em></p>

        </div>
        <div class="CaseStudy-contentAside">
          <div class="CaseStudy-aboutBlock">

            <img src="/images/logos/chrome.svg" class="CaseStudy-aboutBlockImg" alt="Chrome">
            <h3 class="CaseStudy-aboutBlockTitle">
              About Chrome
            </h3>

              <p class="CaseStudy-aboutBlockBody"><p>Google Chrome is a more simple, secure, and faster web browser than ever,
with Google&rsquo;s smarts built-in.</p>

<p>In this case study, the Chrome Optimization Guide
team shared how they experimented with Go, ramped up quickly, and their plans to
use Go going forward.</p>
</p>

          </div>
        </div>
      </div>

  </article>
</div>
</main>
<footer class="Site-footer">
  <div class="Footer">
    <div class="Container">
      <div class="Footer-links">
          <div class="Footer-linkColumn">

<a href="/solutions/" class="Footer-link Footer-link--primary">
  Why Go
</a>


<a href="/solutions/#use-cases" class="Footer-link">
  Use Cases
</a>



<a href="/solutions/#case-studies" class="Footer-link">
  Case Studies
</a>


          </div>
          <div class="Footer-linkColumn">

<a href="/learn/" class="Footer-link Footer-link--primary">
  Getting Started
</a>


<a href="https://play.golang.org" class="Footer-link">
  Playground
</a>



<a href="https://tour.golang.org" class="Footer-link">
  Tour
</a>



<a href="https://stackoverflow.com/questions/tagged/go?tab=Newest" class="Footer-link">
  Stack Overflow
</a>


          </div>
          <div class="Footer-linkColumn">

<a href="https://pkg.go.dev" class="Footer-link Footer-link--primary">
  Discover Packages
</a>

          </div>
          <div class="Footer-linkColumn">

<a href="/about" class="Footer-link Footer-link--primary">
  About
</a>


<a href="https://golang.org/dl/" class="Footer-link">
  Download
</a>



<a href="https://blog.golang.org" class="Footer-link">
  Blog
</a>



<a href="https://github.com/golang/go/issues" class="Footer-link">
  Issue Tracker
</a>



<a href="https://golang.org/doc/devel/release.html" class="Footer-link">
  Release Notes
</a>



<a href="https://blog.golang.org/go-brand" class="Footer-link">
  Brand Guidelines
</a>



<a href="https://golang.org/conduct" class="Footer-link">
  Code of Conduct
</a>


          </div>
          <div class="Footer-linkColumn">

<a href="https://www.twitter.com/golang" class="Footer-link Footer-link--primary">
  Connect
</a>


<a href="https://www.twitter.com/golang" class="Footer-link">
  Twitter
</a>



<a href="https://github.com/golang" class="Footer-link">
  Github
</a>



<a href="https://invite.slack.golangbridge.org/" class="Footer-link">
  Slack
</a>



<a href="https://reddit.com/r/golang" class="Footer-link">
  r/golang
</a>



<a href="https://www.meetup.com/pro/go" class="Footer-link">
  Meetup
</a>



<a href="https://golangweekly.com/" class="Footer-link">
  Golang Weekly
</a>


          </div>
      </div>
    </div>
  </div>
  <div class="Footer">
    <div class="Container Container--fullBleed">
      <div class="Footer-bottom">
        <img class="Footer-gopher" src="/images/gophers/pilot-bust.svg" alt="The Go Gopher">
        <ul class="Footer-listRow">
          <li class="Footer-listItem">
            <a href="/copyright">Copyright</a>
          </li>
          <li class="Footer-listItem">
            <a href="/tos">Terms of Service</a>
          </li>
          <li class="Footer-listItem">
            <a href="http://www.google.com/intl/en/policies/privacy/"
              target="_blank"
              rel="noopener">
              Privacy Policy
            </a>
            </li>
          <li class="Footer-listItem">
            <a
              href="https://golang.org/s/discovery-feedback"
              target="_blank"
              rel="noopener"
              >
              Report an Issue
            </a>
          </li>
          <li class="Footer-listItem">
            <a
              href="https://golang.org"
              target="_blank"
              rel="noopener"
              >golang.org
            </a>
          </li>
        </ul>
        <a class="Footer-googleLogo" target="_blank" href="https://google.com" rel="noopener">
          <img class="Footer-googleLogoImg" src="/images/google-white.png" alt="Google logo">
        </a>
      </div>
    </div>
  </div>
  <script src="/js/carousels.js"></script>
  <script src="/js/searchBox.js"></script>
  <script src="/js/misc.js"></script>
  <script src="/js/hats.js"></script>
</footer>
</body>
</html>
