はじめに
「近くのカフェ」「渋谷 美容院」のように地名やエリアで検索すると、
検索結果の上部にGoogleマップと3件の店舗が表示されることありますよね?
この枠に入るための施策が MEO(Map Engine Optimization) といいます
特に実店舗を持つビジネスにとって、SEOと並んで取り組むべき重要な集客施策になっています
本記事では、MEOの概念から具体的な設定・施策・効果測定まで、実践的に解説します
MEOとは?
MEO(Map Engine Optimization)とは、
Googleマップ・ローカル検索の結果で上位表示されるための最適化手法 です
ローカル検索をすると、通常の検索結果の上に「ローカルパック(3パック)」と呼ばれる
マップ付きの枠が表示されます。この3枠に入ることがMEOの主なゴールです
SEOとの比較
| 観点 | SEO | MEO |
|---|---|---|
| 目的 | ウェブサイトを検索上位に表示する | Googleマップ・ローカル検索で上位表示 |
| 管理ツール | Google Search Console | Googleビジネスプロフィール |
| 対象ユーザー | 広範囲のウェブ検索者 | 近隣エリアで検索している潜在顧客 |
| 主な評価軸 | コンテンツ・バックリンク | クチコミ・NAP情報・更新頻度 |
| 効果が出やすい業種 | 全般 | 飲食店・美容院・クリニックなど実店舗 |
なぜ今MEOが重要か
スマートフォンの普及で「今いる場所の近く」を検索する行動が増えています
- Googleによると、「近く(near me)」系のモバイル検索は年々増加
- ローカルパックはページ最上部に表示されるため、広告より目立つことも
- クチコミ・写真・営業時間が一覧できるため、検索からそのまま来店につながりやすい
MEOの始め方:Googleビジネスプロフィールの設定
MEOの起点は Googleビジネスプロフィール(旧Googleマイビジネス) です
1. プロフィールの作成・オーナー確認
- Googleビジネスプロフィール にアクセス
- ビジネス名を入力し、既存の登録がなければ新規作成
- 電話・ハガキ・メールなどでオーナー確認を完了する
2. 基本情報を埋める(NAP情報)
MEOで特に重要な NAP情報 を正確に入力します。
| 項目 | ポイント |
|---|---|
| Name(店舗名) | 正式名称で統一。通称・略称は避ける |
| Address(住所) | ウェブサイト・SNSと完全一致させる |
| Phone(電話番号) | 市外局番から記載。SNS・サイトと統一 |
| 営業時間 | 祝日・臨時休業も随時更新する |
| カテゴリ | メインカテゴリを最も近いものに設定 |
| ウェブサイトURL | 公式サイトを必ず登録する |
具体的な施策
1. クチコミの獲得と返信
クチコミ(レビュー)はMEOランキングに最も影響する要素のひとつです
返信のポイント:
- ポジティブなクチコミにも必ず返信する(感謝+店舗名・サービス名を自然に入れる)
- ネガティブなクチコミは感情的にならず、対応策を誠実に記載する
返信例(ポジティブ):
〇〇様、このたびは[店舗名]にご来店いただきありがとうございます。
スタッフ一同、またのご来店をお待ちしております。
2. 写真・動画の充実
写真が多い店舗ほどクリック率が上がります
- 外観(昼・夜)・内観・メニュー・スタッフを定期的にアップロード
- 最低でも10枚以上を目安に
- ファイル名に「渋谷-カフェ-外観.jpg」のようにキーワードを含める
3. Googleポスト(投稿機能)の活用
ビジネスプロフィール上で投稿できるSNS的な機能です
- 週1回以上の更新が望ましい
- セール・イベント・新メニューなど旬の情報を投稿する
- 写真付きで投稿するとクリック率が上がる
4. Q&Aの管理
ユーザーが自由に質問・回答できる機能です
- オーナー自身がよくある質問を先に投稿&回答しておく
- 「駐車場はありますか?」「予約はできますか?」などを先回りして記載
5. 構造化データ(JSON-LD)の実装
Googleビジネスプロフィールに加え、ウェブサイト側にも構造化データを埋め込むと
Googleがビジネス情報をより正確に理解できます
Schema.org の LocalBusiness(または業種に応じた型)を JSON-LD 形式で <head> 内に記述します。
{
"@context": "https://schema.org",
"@type": ["LegalService", "ProfessionalService"],
"name": "〇〇事務所",
"url": "https://example.com",
"telephone": "03-xxxx-xxxx",
"address": {
"@type": "PostalAddress",
"streetAddress": "〇〇町1-2-3",
"addressLocality": "〇〇市",
"addressRegion": "東京都",
"postalCode": "000-0000",
"addressCountry": "JP"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 35.6895,
"longitude": 139.6917
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday","Tuesday","Wednesday","Thursday","Friday"],
"opens": "09:00",
"closes": "18:00"
}
],
"areaServed": {
"@type": "AdministrativeArea",
"name": "東京都〇〇市"
}
}
geo(緯度・経度)や areaServed(対応エリア)を含めると、ローカル検索での関連性評価が高まります
Astroでの実装例
Astro では is:inline + set:html を使うことで、JSONをエスケープされずにそのまま出力できます
---
const localBusinessSchema = {
"@context": "https://schema.org",
"@type": ["LegalService", "ProfessionalService"],
// ...
};
---
<script is:inline type="application/ld+json" set:html={JSON.stringify(localBusinessSchema)} />
set:html を使う理由は、通常の {} 式だと " が " にエスケープされてしまい、GoogleのパーサーがJSONを読めなくなるためです
実装後の確認方法
Google リッチリザルト テスト にURLを入力すると、構造化データが正しく認識されているか確認できます
Googleビジネスプロフィールのインサイト
管理画面の「インサイト」から以下を確認できます
| 指標 | 内容 |
|---|---|
| 検索数 | プロフィールが表示された回数 |
| 閲覧数 | マップ・検索でのプロフィール閲覧数 |
| ウェブサイトのクリック数 | サイトへの流入数 |
| 電話のクリック数 | 電話番号タップ数 |
| ルートのリクエスト数 | カーナビ経路検索数 |
月次でチェックするKPI例
- クチコミ数の増減と平均評価点
- 検索キーワード(どんなワードで表示されているか)
- ルートリクエスト数(来店意欲の高いユーザー数)
まとめ
MEOはGoogleビジネスプロフィールを整えることから始まる、比較的取り組みやすい施策です
| やること | 優先度 |
|---|---|
| Googleビジネスプロフィールを完全に埋める | ★★★ |
| NAP情報を全サービスで統一する | ★★★ |
| クチコミ獲得の仕組みを作る | ★★★ |
| クチコミ返信率を100%にする | ★★★ |
| プライマリ・セカンダリカテゴリを正確に設定する | ★★★ |
| 競合の上位3店舗を分析して差を把握する | ★★☆ |
| 写真を20枚以上アップロードする | ★★☆ |
| Googleポストを週1回更新する | ★★☆ |
| Q&Aに先回り回答を入れる | ★★☆ |
| 構造化データ(JSON-LD)をサイトに実装する | ★★☆ |
| 商工会・ポータルサイトにNAP情報を掲載する | ★☆☆ |
まずはGoogleビジネスプロフィールの未入力項目をゼロにして、
口コミが効果は高いですが、できるところから手をつけていくと良さそうです