「うちの店、口コミが少ない…」「悪い評価がついたけど何をすればいいかわからない」——そんな悩みを抱える地方の飲食店・旅館・美容室オーナーは多いのではないでしょうか。
Googleマップの口コミは、今や集客に直結する重要な要素です。しかし1件1件を読んで分析するのは時間がかかりますし、どこを改善すればいいかも直感では判断しにくい。そこで今回、Google Places APIとAIを組み合わせた口コミ自動分析ツールを作りました。店舗名を入力するだけで、星評価の分布・頻出キーワード・AIによる改善提案を一括で表示します。
Googleマップの口コミが集客を左右する理由
「近くのラーメン屋」「島根 温泉 旅館」——地方に旅行・外食に来る人のほとんどが、こうしたキーワードでGoogleマップを検索して店を決めます。そのとき真っ先に目に入るのが星評価と口コミの数です。
| 評価の状態 | ユーザーの印象 | 集客への影響 |
|---|---|---|
| ★4.5以上・口コミ50件以上 | 安心感・信頼性が高い | 検索上位に表示されやすい |
| ★3.5〜4.4・口コミ10〜49件 | 「まあいいかも」程度 | 競合に差をつけられやすい |
| ★3.5未満・口コミ少数 | 不安・スルー | 来店の決め手にならない |
ポイントは「悪い口コミを0にする」ことではなく、何が評価されていて何が課題なのかを把握し、優先して改善することです。それを自動でやってくれるのが今回作ったツールです。
実際に動かしてみる(デモ)
以下は実際に操作できるUIデモです。業種を切り替えてボタンを押すと、星評価の分布・感情分析・キーワード・AIコメントが表示されます。実際のGoogleマップデータではなく、サンプルデータを使用しています。
ツールの仕組み(技術構成)
今回のツールは大きく3つのパーツで構成されています。エンジニア向けに簡単に説明します。
STEP 1:Google Places APIで口コミを取得する
店舗名またはPlace IDをGoogle Places APIに渡すことで、評価スコア・口コミテキスト・投稿日時などのデータを取得します。無料枠(月$200クレジット)の範囲内であれば費用はほぼ0円です。取得できる口コミは最大5件という制限があるため、傾向把握に特化した設計が必要です。
STEP 2:ChatGPT APIで感情分析・キーワード抽出を行う
取得した口コミテキストをChatGPT APIに渡し、①ポジティブ/ネガティブ/中立の感情分類、②頻出キーワードの抽出、③改善提案の生成を一括で実行します。プロンプト設計次第で精度が大きく変わるため、「地方の中小店舗向け」という文脈を明示するのがポイントです。
STEP 3:Flaskで結果をWeb UIに表示する
PythonのFlaskフレームワークでAPIのリクエスト・レスポンスを処理し、フロントエンドに結果を返します。UIはシンプルなHTML/CSSで構築。サーバーはVPSやCloud Runで動かせます。
| パーツ | 使用技術 | 役割 |
|---|---|---|
| データ取得 | Google Places API | 口コミ・評価スコアの収集 |
| AI分析 | ChatGPT API(gpt-4o) | 感情分析・キーワード抽出・改善提案 |
| バックエンド | Python / Flask | APIの統合・レスポンス処理 |
| フロントエンド | HTML / CSS / JavaScript | 結果の可視化・操作UI |
| ホスティング | VPS / Google Cloud Run | Web公開・サーバー運用 |
コアロジック(Pythonコード例)
from openai import OpenAI
import requests
PLACES_API_KEY = "YOUR_GOOGLE_PLACES_API_KEY"
def get_reviews(place_id: str) -> dict:
"""Google Places APIから口コミを取得"""
url = f"https://maps.googleapis.com/maps/api/place/details/json"
params = {
"place_id": place_id,
"fields": "name,rating,user_ratings_total,reviews",
"language": "ja",
"key": PLACES_API_KEY,
}
res = requests.get(url, params=params).json()
return res.get("result", {})
def analyze_reviews(reviews: list[dict]) -> str:
"""ChatGPT APIで口コミを分析"""
client = OpenAI()
review_text = "\n".join(
[f"★{r['rating']} {r['text']}" for r in reviews]
)
response = client.chat.completions.create(
model="gpt-4o",
max_tokens=1024,
messages=[
{
"role": "user",
"content": f"""以下は地方の飲食店・宿泊施設のGoogleマップ口コミです。
口コミ一覧:
{review_text}
以下を分析してJSON形式で返してください:
1. sentiment_summary: ポジティブ・ネガティブ・中立の割合(%)
2. good_keywords: 好評ワードのリスト(最大5個)
3. bad_keywords: 改善ワードのリスト(最大5個)
4. advice: 具体的な改善提案(200字程度、経営者向けの平易な言葉で)"""
}
],
)
return response.choices[0].message.content
API費用・開発コストの目安
| 項目 | 内容 | 費用目安 |
|---|---|---|
| Google Places API | 口コミ取得(月$200の無料枠あり) | 小規模利用ならほぼ0円 |
| ChatGPT API | 分析リクエスト1回あたり約0.5〜2円 | 月100回で約200円〜 |
| サーバー費用 | VPS / Cloud Run | 月1,000円〜3,000円 |
| ツール開発(基本) | 取得・分析・表示のMVP | 5万〜10万円 |
| カスタマイズ | 複数店舗管理・定期自動レポート機能など | +3万〜8万円 |
よくある質問
口コミは全件取得できますか?
Google Places APIの仕様上、取得できる口コミは最大5件です。より多くの口コミを分析したい場合は、定期的にデータを蓄積して分析する仕組みや、サードパーティのデータサービスを組み合わせる方法があります。5件でも傾向や頻出キーワードの把握には十分なケースが多いです。
Googleの利用規約に違反しませんか?
Google Places APIを通じた取得は公式に認められた方法です。スクレイピング(ページを直接読み取る方法)はGoogleの利用規約で禁止されているため、本ツールではAPIのみを使用しています。
飲食店以外にも使えますか?
使えます。Googleマップに登録されているあらゆる店舗・施設(旅館、美容室、歯科医院、農産物直売所など)に対応しています。業種に応じてAIの分析プロンプトを調整することで、より的確な改善提案が得られます。
技術知識がなくても使えますか?
このページのデモはどなたでも操作できます。実際のシステム構築・導入については、ヒアリングから運用まで一貫して対応しますので、技術知識は不要です。
まとめ
Googleマップの口コミは、地方の中小店舗にとって「広告費をかけずに集客できる最大の資産」です。1件1件を手で読んで分析する時間がなくても、今回紹介したツールを使えば数秒で強みと課題を把握できます。
Google Places API+ChatGPT APIの組み合わせは導入コストが低く、小規模事業者でも現実的に使える構成です。「まずは自店舗の口コミをこのデモで試してみたい」「実際にシステムを導入したい」という方は、お気軽にお問い合わせください。要件定義から開発・運用まで一貫して対応します。
