First you need to create your feeds, then Google evaluates them.

Create feeds

  1. Generate your feeds. You transmit most of your inventory data to Google by feeds. To get started, create two types of feeds:

      "merchant": [
          "merchant_id": "merch1",
          "name": "Sample Restaurant",
          "telephone": "+1-650-123-4567",
          "url": "https://www.restaurantpublicwebsite.com",
          "category": "restaurant",
          "geo": {
            "address": {
              "street_address": "803 11th Avenue",
              "locality": "Sunnyvale",
              "region": "CA",
              "country": "USA",
              "postal_code": "94089"
      "service": [
          "merchant_id": "merch1",
          "service_id": "merch1-dining",
          "localized_service_name": {
              "value" : "Merchant1",
              "localized_value": [
                 "locale": "en",
                 "value": "Merchant1"
          "action_link": [
              "url": "https://www.rwgpartnerwebsite.com/reserve_table/merch1"

    Since the primary function of the Services feed is to provide an action link to your website, the only fields that you need to specify in the Services feed are: service_id, merchant_id, localized_service_name, type, and action_link.

    Include feed metadata in each of your feeds that instructs Google on how to interpret the feed.

    The following is a feed metadata snippet:

      "metadata": {
        "generation_timestamp": "1467993600",
        "processing_instruction": "PROCESS_AS_COMPLETE",
        "total_shards": 1

    The messages used to describe these feeds align closely to schema.org's LocalBusiness and GeoCoordinates.

  2. Export your feeds. The feeds format is described with the use of protocol buffer 3 syntax. You export the feed files in one of two ways:

    • Binary serialization of the protocol buffer data in pb3 format.
    • Derived JSON format.

    For general information on how to use protocol buffers to generate a pb3 file, see Protocol Buffer Basics: Java.

  3. Upload the feeds to your SFTP Dropbox. To upload your feeds, use the SFTP dropbox information that Google provided to you and the private key that you created in Setup. The Google SFTP server is available at sftp://partnerupload.google.com on port 19321.

    Upload your files with unique names, such as a name that include a timestamp. Unique names help with troubleshooting and allow queries for the feed status.

    To determine the size of the feeds and frequency of delivery, use the following guidelines:

    • Size of feed files and shards:

      • Keep the feed file size below 200MB, and use multiple shards if needed.
      • At present we support a maximum of 1000 shards per feed.
      • Individual records are sent in one shard. They don't have to be sent in the same shard for future feeds.
      • For better performance, your data should be split evenly among the shards so that all sharded files are similar in size.
    • Frequency of complete updates:

      • A complete merchants feed is provided once a day.
      • A complete services feed is provided once a day.

Google evaluates feeds

Once you upload your feeds, Google processes and evaluates them for quality and completeness. We look at several factors:

  • Feeds meet the specifications.
  • Feeds include all required fields.
  • Each merchant has at least one service defined.
  • The majority of your merchant data matches with Google Maps locations.