Data terstruktur bisnis lokal (LocalBusiness)

Saat pengguna menelusuri bisnis di Google Penelusuran atau Maps, hasil Penelusuran dapat menampilkan panel info Google yang terlihat jelas, dengan detail tentang bisnis yang cocok dengan kueri yang dibuat. Saat pengguna menelusuri jenis bisnis tertentu (misalnya "restoran terbaik di Jakarta"), mereka dapat melihat carousel bisnis yang terkait dengan kueri tersebut. Dengan data terstruktur Bisnis Lokal, Anda dapat memberi tahu Google tentang jam buka, berbagai departemen dalam suatu bisnis, ulasan (jika situs Anda menampilkan ulasan tentang bisnis lain), dan banyak lagi. Jika ingin membantu pengguna membuat reservasi atau memesan langsung di hasil Penelusuran, Anda dapat menggunakan Maps Booking API untuk mengaktifkan pemesanan, pembayaran, dan tindakan lainnya.

Cara menambahkan data terstruktur

Data terstruktur adalah format terstandarisasi untuk memberikan informasi tentang suatu halaman dan mengelompokkan konten halaman tersebut. Jika Anda baru mengenal data terstruktur, Anda dapat mempelajari lebih lanjut cara kerja data terstruktur.

Berikut adalah ringkasan tentang cara membuat, menguji, dan merilis data terstruktur.

  1. Tambahkan properti wajib. Berdasarkan format yang Anda gunakan, pelajari tempat menyisipkan data terstruktur di halaman.
  2. Ikuti pedoman.
  3. Validasi kode Anda menggunakan Pengujian Hasil Kaya dan perbaiki setiap error kritis. Pertimbangkan juga untuk memperbaiki masalah non-kritis yang mungkin ditandai di alat tersebut, karena tindakan ini dapat membantu meningkatkan kualitas data terstruktur Anda (tetapi hal ini tidak diperlukan agar memenuhi syarat untuk hasil kaya).
  4. Deploy beberapa halaman yang menyertakan data terstruktur dan gunakan Alat Inspeksi URL untuk menguji cara Google melihat halaman tersebut. Pastikan halaman Anda dapat diakses oleh Google dan tidak diblokir oleh file robots.txt, tag noindex, atau persyaratan login. Jika halaman tidak bermasalah, Anda dapat meminta Google meng-crawl ulang URL tersebut.
  5. Agar Google tetap mengetahui setiap perubahan pada masa mendatang, sebaiknya kirimkan peta situs. Anda dapat mengotomatiskan proses ini dengan Search Console Sitemap API.

Contoh

Listingan bisnis lokal sederhana

Berikut contoh listingan bisnis lokal sederhana yang menggunakan JSON-LD.

Listingan bisnis lokal di Google Penelusuran


<html>
  <head>
    <title>Dave's Steak House</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "Restaurant",
      "image": [
        "https://example.com/photos/1x1/photo.jpg",
        "https://example.com/photos/4x3/photo.jpg",
        "https://example.com/photos/16x9/photo.jpg"
       ],
      "name": "Dave's Steak House",
      "address": {
        "@type": "PostalAddress",
        "streetAddress": "148 W 51st St",
        "addressLocality": "New York",
        "addressRegion": "NY",
        "postalCode": "10019",
        "addressCountry": "US"
      },
      "review": {
        "@type": "Review",
        "reviewRating": {
          "@type": "Rating",
          "ratingValue": "4",
          "bestRating": "5"
        },
        "author": {
          "@type": "Person",
          "name": "Lillian Ruiz"
        }
      },
      "geo": {
        "@type": "GeoCoordinates",
        "latitude": 40.761293,
        "longitude": -73.982294
      },
      "url": "https://www.example.com/restaurant-locations/manhattan",
      "telephone": "+12122459600",
      "servesCuisine": "American",
      "priceRange": "$$$",
      "openingHoursSpecification": [
        {
          "@type": "OpeningHoursSpecification",
          "dayOfWeek": [
            "Monday",
            "Tuesday"
          ],
          "opens": "11:30",
          "closes": "22:00"
        },
        {
          "@type": "OpeningHoursSpecification",
          "dayOfWeek": [
            "Wednesday",
            "Thursday",
            "Friday"
          ],
          "opens": "11:30",
          "closes": "23:00"
        },
        {
          "@type": "OpeningHoursSpecification",
          "dayOfWeek": "Saturday",
          "opens": "16:00",
          "closes": "23:00"
        },
        {
          "@type": "OpeningHoursSpecification",
          "dayOfWeek": "Sunday",
          "opens": "16:00",
          "closes": "22:00"
        }
      ],
      "menu": "https://www.example.com/menu"
    }
    </script>
  </head>
  <body>
  </body>
</html>

Berikut contoh restoran yang memenuhi persyaratan halaman detail (dengan asumsi bahwa terdapat juga halaman ringkasan yang memiliki markup Carousel). Carousel restoran saat ini hanya tersedia untuk sejumlah kecil penyedia restoran. Jika Anda ingin berpartisipasi, nyatakan minat Anda dengan mengisi formulir yang kami sediakan.

<html>
  <head>
    <title>Trattoria Luigi</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Restaurant",
      "name": "Trattoria Luigi",
      "image": [
        "https://example.com/photos/1x1/photo.jpg",
        "https://example.com/photos/4x3/photo.jpg",
        "https://example.com/photos/16x9/photo.jpg"
       ],
       "priceRange": "$$$",
       "servesCuisine": "Italian",
       "address": {
         "@type": "PostalAddress",
         "streetAddress": "148 W 51st St",
         "addressLocality": "New York",
         "addressRegion": "NY",
         "postalCode": "10019",
         "addressCountry": "US"
       }
    }
    </script>
  </head>
  <body>
  </body>
</html>

Jam buka

Contoh berikut menunjukkan cara me-markup berbagai jenis jam buka.

Jam buka standar

Ketiadaan properti validFrom dan validThrough menunjukkan bahwa jam buka berlaku sepanjang tahun. Contoh berikut menunjukkan bisnis yang buka setiap hari kerja dari pukul 09.00 sampai 21.00, dan selama akhir pekan dari pukul 10.00 sampai 23.00.

"openingHoursSpecification": [
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": [
      "Monday",
      "Tuesday",
      "Wednesday",
      "Thursday",
      "Friday"
    ],
    "opens": "09:00",
    "closes": "21:00"
  },
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": [
      "Saturday",
      "Sunday"
    ],
    "opens": "10:00",
    "closes": "23:00"
  }
]
Jam buka larut malam

Untuk jam buka lewat tengah malam, tentukan jam buka dan tutup menggunakan sebuah properti OpeningHoursSpecification. Contoh berikut menunjukkan jam buka dari hari Sabtu pukul 18.00 sampai Minggu pukul 03.00 dini hari.

"openingHoursSpecification": {
  "@type": "OpeningHoursSpecification",
  "dayOfWeek": "Saturday",
  "opens": "18:00",
  "closes": "03:00"
}
Jam buka sepanjang hari

Untuk menampilkan bisnis yang buka 24 jam sehari, tetapkan properti open ke "00:00" dan properti closes ke "23:59". Untuk menampilkan bisnis yang tutup sepanjang hari, tetapkan properti opens dan closes ke "00:00". Contoh berikut menampilkan bisnis yang buka sepanjang hari pada hari Sabtu dan tutup sepanjang hari pada hari Minggu.

"openingHoursSpecification": [
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": "Saturday",
    "opens": "00:00",
    "closes": "23:59"
  },
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": "Sunday",
    "opens": "00:00",
    "closes": "00:00"
  }
]
Jam buka musiman

Gunakan properti validFrom dan validThrough untuk menetapkan jam buka musiman. Contoh berikut menunjukkan bisnis yang tutup selama liburan musim dingin.

"openingHoursSpecification": {
  "@type": "OpeningHoursSpecification",
  "opens": "00:00",
  "closes": "00:00",
  "validFrom": "2015-12-23",
  "validThrough": "2016-01-05"
}

Multi-departemen

Untuk bisnis yang mencakup beberapa departemen, yang masing-masing memiliki properti berbeda seperti jam buka atau nomor telepon, Anda dapat menggunakan markup properti department dengan sebuah elemen untuk setiap departemen. Di setiap elemen departemen yang terkait, tentukan properti yang berbeda dengan toko utama satu per satu.

<html>
  <head>
    <title>Dave's Department Store</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "Store",
      "image": [
        "https://example.com/photos/1x1/photo.jpg",
        "https://example.com/photos/4x3/photo.jpg",
        "https://example.com/photos/16x9/photo.jpg"
       ],
      "name": "Dave's Department Store",
      "address": {
        "@type": "PostalAddress",
        "streetAddress": "1600 Saratoga Ave",
        "addressLocality": "San Jose",
        "addressRegion": "CA",
        "postalCode": "95129",
        "addressCountry": "US"
      },
      "geo": {
        "@type": "GeoCoordinates",
        "latitude": 37.293058,
        "longitude": -121.988331
      },
      "url": "https://www.example.com/store-locator/sl/San-Jose-Westgate-Store/1427",
      "priceRange": "$$$",
      "telephone": "+14088717984",
      "openingHoursSpecification": [
        {
          "@type": "OpeningHoursSpecification",
          "dayOfWeek": [
            "Monday",
            "Tuesday",
            "Wednesday",
            "Thursday",
            "Friday",
            "Saturday"
          ],
          "opens": "08:00",
          "closes": "23:59"
        },
        {
          "@type": "OpeningHoursSpecification",
          "dayOfWeek": "Sunday",
          "opens": "08:00",
          "closes": "23:00"
        }
      ],
      "department": [
        {
          "@type": "Pharmacy",
          "image": [
        "https://example.com/photos/1x1/photo.jpg",
        "https://example.com/photos/4x3/photo.jpg",
        "https://example.com/photos/16x9/photo.jpg"
       ],
          "name": "Dave's Pharmacy",
          "address": {
            "@type": "PostalAddress",
            "streetAddress": "1600 Saratoga Ave",
            "addressLocality": "San Jose",
            "addressRegion": "CA",
            "postalCode": "95129",
            "addressCountry": "US"
          },
          "priceRange": "$",
          "telephone": "+14088719385",
          "openingHoursSpecification": [
            {
              "@type": "OpeningHoursSpecification",
              "dayOfWeek": [
                "Monday",
                "Tuesday",
                "Wednesday",
                "Thursday",
                "Friday"
              ],
              "opens": "09:00",
              "closes": "19:00"
            },
            {
              "@type": "OpeningHoursSpecification",
              "dayOfWeek": "Saturday",
              "opens": "09:00",
              "closes": "17:00"
            },
            {
              "@type": "OpeningHoursSpecification",
              "dayOfWeek": "Sunday",
              "opens": "11:00",
              "closes": "17:00"
            }
          ]
        }
      ]
    }
    </script>
  </head>
  <body>
  </body>
</html>

Panduan

Anda harus mengikuti panduan ini agar memenuhi syarat untuk ditampilkan dalam hasil kaya Bisnis Lokal.

Definisi jenis data terstruktur

Tabel berikut mencantumkan daftar properti dan penggunaannya untuk jenis bisnis lokal dan tindakan bisnis, berdasarkan definisi lengkap di schema.org/LocalBusiness.

Anda harus menyertakan properti wajib agar konten Anda memenuhi syarat untuk ditampilkan sebagai hasil kaya. Anda juga dapat menyertakan properti yang direkomendasikan untuk menambahkan informasi lain ke konten, yang akan meningkatkan kualitas pengalaman pengguna.

Anda dapat menambahkan data terstruktur LocalBusiness ke halaman mana pun di situs Anda, meskipun data terstruktur tersebut mungkin lebih cocok untuk ditempatkan di halaman yang berisi informasi tentang bisnis Anda.

LocalBusiness

Definisi lengkap LocalBusiness tersedia di schema.org/LocalBusiness. Tentukan setiap lokasi bisnis lokal sebagai jenis LocalBusiness. Gunakan subjenis LocalBusiness yang paling spesifik; misalnya, Restaurant, DaySpa, HealthClub, dan sebagainya.

Jika Anda memiliki beberapa jenis data terstruktur, tentukan sebagai array (additionalType tidak didukung). Misalnya, jika bisnis Anda menawarkan beberapa layanan:

{
  "@context": "https://schema.org",
  "@type": ["Electrician", "Plumber", "Locksmith"],
  ....
}

Properti yang didukung Google adalah sebagai berikut:

Properti wajib
address

PostalAddress

Lokasi fisik bisnis. Sertakan sebanyak mungkin properti. Semakin banyak properti yang Anda berikan, semakin tinggi kualitas hasil bagi pengguna. Contoh:

"address": {
  "@type": "PostalAddress",
  "streetAddress": "148 W 51st St Suit 42 Unit 7",
  "addressLocality": "New York",
  "addressRegion": "NY",
  "postalCode": "10019",
  "addressCountry": "US"
}
name

Text

Nama bisnis.

Properti yang direkomendasikan
aggregateRating

AggregateRating

Properti ini direkomendasikan khusus untuk situs yang menampilkan ulasan tentang bisnis lokal lainnya: Rating rata-rata bisnis lokal berdasarkan beberapa rating atau ulasan. Ikuti Panduan cuplikan ulasan dan daftar properti rating gabungan yang wajib dan direkomendasikan.

department

LocalBusiness

Item bertingkat untuk satu departemen. Anda dapat menentukan properti apa pun dalam tabel ini untuk sebuah departemen.

Panduan tambahan:

  • Sertakan nama toko dengan nama departemen dalam format berikut: {store name} {department name}. Misalnya, gMart dan gMart Pharmacy.
  • Jika nama departemen merujuk ke merek tertentu secara eksplisit, tentukan nama departemen saja. Misalnya: Best Buy dan Geek Squad.
geo

GeoCoordinates

Koordinat geografis dari bisnis tersebut.

geo.latitude

Number

Garis lintang lokasi bisnis. Presisinya harus minimal 5 angka di belakang koma.

geo.longitude

Number

Garis bujur lokasi bisnis. Presisinya harus minimal 5 angka di belakang koma.

menu

URL

Untuk tempat usaha makanan, URL yang sepenuhnya memenuhi syarat untuk menu.

openingHoursSpecification

Array atau objek tunggal (keduanya didukung) OpeningHoursSpecification

Jam buka lokasi bisnis.

openingHoursSpecification.closes

Time

Waktu saat lokasi bisnis tutup, dalam format hh:mm:ss

openingHoursSpecification.dayOfWeek

DayOfWeek

Satu atau beberapa nilai berikut:

  • https://schema.org/Monday: Hari Senin.
  • https://schema.org/Tuesday: Hari Selasa.
  • https://schema.org/Wednesday: Hari Rabu.
  • https://schema.org/Thursday: Hari Kamis.
  • https://schema.org/Friday: Hari Jumat.
  • https://schema.org/Saturday: Hari Sabtu.
  • https://schema.org/Sunday: Hari Minggu.
openingHoursSpecification.opens

Time

Waktu saat lokasi bisnis buka, dalam format hh:mm:ss.

openingHoursSpecification.validFrom

Date

Tanggal mulai penutupan bisnis musiman, dalam format YYYY-MM-DD.

openingHoursSpecification.validThrough

Date

Tanggal akhir penutupan bisnis musiman, dalam format YYYY-MM-DD.

priceRange

Text

Rentang harga relatif bisnis, biasanya ditentukan oleh rentang numerik (misalnya "$10-15") atau sejumlah simbol mata uang yang dinormalisasi (misalnya "$$$").

Kolom ini harus kurang dari 100 karakter. Jika lebih dari 100 karakter, Google tidak akan menampilkan rentang harga untuk bisnis tersebut.

review

Ulasan

Properti ini direkomendasikan khusus untuk situs yang menampilkan ulasan tentang bisnis lokal lainnya: Ulasan bisnis lokal. Ikuti Panduan cuplikan ulasan dan daftar properti ulasan yang wajib dan direkomendasikan.

servesCuisine

servesCuisine

Jenis masakan yang disajikan restoran.

telephone

Text

Nomor telepon bisnis yang dimaksudkan sebagai metode kontak utama bagi pelanggan. Pastikan untuk menyertakan kode negara dan kode area dalam nomor telepon.

url

URL

URL yang sepenuhnya memenuhi syarat untuk lokasi bisnis tertentu. URL harus berupa link yang berfungsi.

Jika Anda memiliki beberapa restoran yang tercantum di situs, dan ingin restoran tersebut memenuhi syarat untuk carousel host, tambahkan objek Carousel. Selain properti Carousel standar, tentukan properti berikut di objek Carousel Anda. Meskipun properti carousel tidak diwajibkan, Anda harus menambahkan properti berikut jika ingin daftar restoran Anda memenuhi syarat untuk carousel host.

Properti yang didukung Google adalah sebagai berikut:

Properti wajib
image

URL atau ImageObject berulang

Satu atau beberapa gambar restoran.

Pedoman gambar tambahan:

  • Setiap halaman harus memuat setidaknya satu gambar (baik Anda menyertakan markup ataupun tidak). Google akan memilih gambar terbaik untuk ditampilkan dalam hasil Penelusuran berdasarkan rasio lebar tinggi dan resolusi.
  • URL gambar harus dapat di-crawl dan diindeks. Untuk memeriksa apakah Google dapat mengakses URL Anda, gunakan Alat Inspeksi URL.
  • Gambar harus mewakili konten yang di-markup.
  • Gambar harus dalam format file yang didukung oleh Google Gambar.
  • Untuk hasil terbaik, sebaiknya sediakan beberapa gambar beresolusi tinggi (minimal 50 ribu piksel saat mengalikan lebar dan tinggi) dengan rasio aspek berikut: 16x9, 4x3, dan 1x1.

Contoh:

"image": [
  "https://example.com/photos/1x1/photo.jpg",
  "https://example.com/photos/4x3/photo.jpg",
  "https://example.com/photos/16x9/photo.jpg"
]
name

Text

Nama restoran.

Properti yang direkomendasikan
address

PostalAddress

Lokasi fisik bisnis. Sertakan sebanyak mungkin properti. Semakin banyak properti yang Anda berikan, semakin tinggi kualitas hasil bagi pengguna. Contoh:

"address": {
  "@type": "PostalAddress",
  "streetAddress": "148 W 51st St",
  "addressLocality": "New York",
  "addressRegion": "NY",
  "postalCode": "10019",
  "addressCountry": "US"
}
servesCuisine

servesCuisine

Jenis masakan yang disajikan restoran.

Pemecahan masalah

Jika Anda mengalami masalah saat menerapkan atau mendebug data terstruktur, berikut beberapa referensi yang dapat membantu Anda.

  • Jika Anda menggunakan sistem pengelolaan konten (CMS) atau ada orang lain yang menangani situs Anda, minta mereka untuk membantu Anda. Pastikan untuk meneruskan pesan Search Console yang menjelaskan masalah tersebut kepada mereka.
  • Google tidak menjamin bahwa fitur yang menggunakan data terstruktur akan muncul dalam hasil penelusuran. Untuk mengetahui daftar alasan umum mengapa Google tidak dapat menampilkan konten Anda dalam hasil kaya, lihat Panduan Umum terkait Data Terstruktur.
  • Mungkin ada error dalam data terstruktur Anda. Periksa daftar error data terstruktur.
  • Jika halaman Anda dikenai tindakan manual data terstruktur, data terstruktur pada halaman itu akan diabaikan (meskipun halaman masih bisa muncul di hasil Google Penelusuran). Untuk memperbaiki masalah data terstruktur, gunakan laporan Tindakan Manual.
  • Tinjau panduan lagi untuk mengidentifikasi apakah konten Anda tidak mematuhi panduan. Masalah itu mungkin disebabkan oleh konten yang berisi spam atau penggunaan markup yang berisi spam. Namun, masalahnya mungkin bukan pada sintaksis, sehingga Pengujian Hasil Kaya tidak akan dapat mengidentifikasi masalah tersebut.
  • Pecahkan masalah hasil kaya tidak ada/penurunan jumlah hasil kaya.
  • Tunggu hingga crawling dan pengindeksan ulang selesai. Perlu diingat bahwa Google mungkin memerlukan waktu beberapa hari untuk mencari dan meng-crawl halaman setelah Anda memublikasikannya. Untuk pertanyaan umum terkait crawling dan pengindeksan, lihat FAQ crawling dan pengindeksan Google Penelusuran.
  • Posting pertanyaan di forum Pusat Google Penelusuran.