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.
How to add structured data
Structured data is a standardized format for providing information about a page and classifying the page content. If you're new to structured data, you can learn more about how structured data works.
Here's an overview of how to build, test, and release structured data.
- Add the required properties. Based on the format you're using, learn where to insert structured data on the page.
- Follow the guidelines.
- Validate your code using the Rich Results Test and fix any critical errors. Consider also fixing any non-critical issues that may be flagged in the tool, as they can help improve the quality of your structured data (however, this isn't necessary to be eligible for rich results).
- Deploy a few pages that include your structured data and use the URL Inspection tool to test how Google sees the page. Be sure that your page is
accessible to Google and not blocked by a robots.txt file, the
noindex
tag, or login requirements. If the page looks okay, you can ask Google to recrawl your URLs. - To keep Google informed of future changes, we recommend that you submit a sitemap. You can automate this with the Search Console Sitemap API.
Contoh
Listingan bisnis lokal sederhana
Berikut contoh listingan bisnis lokal sederhana yang menggunakan JSON-LD.
<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>
Carousel restoran (akses terbatas)
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", "telephone": "+12125557234", "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.
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" } ]
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" }
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" } ]
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.
- Dasar-Dasar Penelusuran
- Pedoman data terstruktur umum
- Pedoman carousel (jika berlaku). Carousel Restoran saat ini baru tersedia bagi sejumlah kecil penyedia restoran. Jika Anda ingin berpartisipasi, nyatakan minat Anda dengan mengisi formulir yang kami sediakan.
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 multimedia. 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 |
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 |
Nama bisnis. |
Properti yang direkomendasikan | |
---|---|
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 |
Item bertingkat untuk satu departemen. Anda dapat menentukan properti apa pun dalam tabel ini untuk sebuah departemen. Panduan tambahan:
|
geo |
Koordinat geografis dari bisnis tersebut. |
geo.latitude |
Garis lintang lokasi bisnis. Presisinya harus minimal 5 angka di belakang koma. |
geo.longitude |
Garis bujur lokasi bisnis. Presisinya harus minimal 5 angka di belakang koma. |
menu |
Untuk tempat usaha makanan, URL yang sepenuhnya memenuhi syarat untuk menu. |
openingHoursSpecification |
Array atau objek tunggal (keduanya didukung) Jam buka lokasi bisnis. |
openingHoursSpecification.closes |
Waktu saat lokasi bisnis tutup, dalam format hh:mm:ss |
openingHoursSpecification.dayOfWeek |
Satu atau beberapa nilai berikut:
|
openingHoursSpecification.opens |
Waktu saat lokasi bisnis buka, dalam format hh:mm:ss. |
openingHoursSpecification.validFrom |
Tanggal mulai penutupan bisnis musiman, dalam format YYYY-MM-DD. |
openingHoursSpecification.validThrough |
Tanggal akhir penutupan bisnis musiman, dalam format YYYY-MM-DD. |
priceRange |
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 berisi 100 karakter atau lebih, Google tidak akan menampilkan rentang harga untuk bisnis tersebut. |
review |
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 |
Jenis masakan yang disajikan restoran. |
telephone |
Nomor telepon bisnis yang dimaksudkan sebagai metode kontak utama bagi pelanggan. Pastikan untuk menyertakan kode negara dan kode area dalam nomor telepon. |
url |
URL yang sepenuhnya memenuhi syarat untuk lokasi bisnis tertentu. URL harus berupa link yang berfungsi. |
Carousel restoran (akses terbatas)
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 |
Satu atau beberapa gambar restoran. Panduan gambar tambahan:
Contoh: "image": [ "https://example.com/photos/1x1/photo.jpg", "https://example.com/photos/4x3/photo.jpg", "https://example.com/photos/16x9/photo.jpg" ] |
name |
Nama restoran. |
Properti yang direkomendasikan | |
---|---|
address |
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 |
Jenis masakan yang disajikan restoran. |
Troubleshooting
If you're having trouble implementing or debugging structured data, here are some resources that may help you.
- If you're using a content management system (CMS) or someone else is taking care of your site, ask them to help you. Make sure to forward any Search Console message that details the issue to them.
- Google does not guarantee that features that consume structured data will show up in search results. For a list of common reasons why Google may not show your content in a rich result, see the General Structured Data Guidelines.
- You might have an error in your structured data. Check the list of structured data errors and the Unparsable structured data report.
- If you received a structured data manual action against your page, the structured data on the page will be ignored (although the page can still appear in Google Search results). To fix structured data issues, use the Manual Actions report.
- Review the guidelines again to identify if your content isn't compliant with the guidelines. The problem can be caused by either spammy content or spammy markup usage. However, the issue may not be a syntax issue, and so the Rich Results Test won't be able to identify these issues.
- Troubleshoot missing rich results / drop in total rich results.
- Allow time for re-crawling and re-indexing. Remember that it may take several days after publishing a page for Google to find and crawl it. For general questions about crawling and indexing, check the Google Search crawling and indexing FAQ.
- Post a question in the Google Search Central forum.