個人開発のMotoHubにGSC分析→SEO改善を実施した話
はじめに
バイク中古・新車一括検索プラットフォーム「MotoHub」を個人開発しています。
サービスをリリースして数ヶ月、アクセスが伸び悩んでいました。広告費をかけずに新規ユーザーを獲得したい。そこで Google Search Console(GSC)のデータを分析してSEO改善を実施しました。
この記事では、分析の流れ・発見した課題・実施した改善内容をリアルに書きます。
GSCデータのエクスポート
まずGSCから以下の2つのCSVをエクスポートしました。
- クエリ(どんなキーワードで表示されているか)
- ページ(どのURLが表示されているか)
現状分析
エクスポートしたCSVを分析した結果:
総クエリ数: 1,000件
総クリック数: 267回
総表示回数: 31,026回
平均CTR: 0.86%
表示回数31,000回に対してクリックが267回。CTR 0.86%は低すぎる。
3つの大きな発見
発見① 旨みゾーンに330クエリが眠っている
ポジション別にクエリを分類すると:
| ポジション | クエリ数 | 表示回数 |
|---|---|---|
| 1-5位 | 4件 | 19回 |
| 6-10位 | 63件 | 1,367回 |
| 11-30位(旨みゾーン) | 330件 | 9,002回 |
| 30位以下 | 588件 | - |
11〜30位に330クエリが集中していました。あと少しで1ページ目に入れるキーワードが大量にある状態です。
発見② ショップ系キーワードが強い(ニッチ戦略が機能している)
レッドバロン久留米 在庫(CTR 12.96%)など、チェーン店舗名+在庫系キーワードのCTRが高いことが判明。
これはGeminiが提案していた「ニッチキーワード戦略」が実際に機能しているエリアでした。
| キーワード | 順位 | 表示回数 | CTR |
|---|---|---|---|
| レッドバロン在庫一覧 | 10.6位 | 189回 | 1.06% |
| レッドバロン久留米 在庫 | 9.6位 | 54回 | 12.96% |
| レッドバロン 在庫 | 13.3位 | 50回 | 2.0% |
発見③ モデルページがほぼ未開拓
URLタイプ別にページのパフォーマンスを確認:
| ページタイプ | 件数 | クリック | 表示回数 |
|---|---|---|---|
| 個別車両(/bikes/) | 530件 | 600回 | 4,442回 |
| ショップ(/shops/) | 309件 | 450回 | 3,946回 |
| エリア(/area/) | 119件 | 125回 | 740回 |
| モデル(/models/) | 9件 | 9回 | 79回 |
モデルページがほぼインデックスされていないことが判明。ここが一番の伸びしろでした。
実施した改善内容
改善① title・meta descriptionの最適化
GSCで「表示されているのにCTR 0%」のキーワードを確認すると、タイトルに問題があることがわかりました。
before / after:
【before】車種一覧から探す - MotoHub
【after】バイク車種一覧・中古相場カタログ | 総車種数{N}種 | MotoHub
【before】地域から探す - MotoHub
【after】都道府県から中古バイクを探す | MotoHub
修正したファイル:
-
bikes/index.blade.php(meta description追加) -
bikes/models.blade.php(titleとmeta description改善) -
bikes/prefectures.blade.php(titleとmeta description改善) -
bikes/show.blade.php(meta description改善)
改善② チェーン別ショップまとめページの新規作成
レッドバロン系キーワードが強いことがわかったので、チェーン別のまとめページを新規作成しました。
URL: /shops/chain/red-baron → 「レッドバロンの中古バイク在庫一覧」
// config/bike.php
'chains' => [
'red-baron' => ['name' => 'レッドバロン', 'pattern' => 'レッドバロン'],
'bikeo' => ['name' => 'バイク王', 'pattern' => 'バイク王'],
'bikekan' => ['name' => 'バイク館', 'pattern' => 'バイク館'],
'naps' => ['name' => 'ナップス', 'pattern' => 'ナップス'],
// ...
],
改善③ モデルページのSEO強化
最も伸びしろが大きかったモデルページを強化しました。
- title改善:
{車種}の中古バイク一覧・相場 | {件数}台掲載 | MotoHub - JSON-LD構造化データ(BreadcrumbList・ItemList)追加
- 同メーカー他車種への内部リンク追加
- 都道府県別リンクセクション追加
- FAQセクション(FAQ構造化データ付き)追加
改善④ 駐車場ページのSEO強化
サイトマップに38,476URLある駐車場ページを強化。
- 都道府県別ページ(
/parking/area/{都道府県})を新規作成 - BreadcrumbList JSON-LD追加
- 「東京のバイク駐車場一覧」などのランディングページとして機能させる
サイトマップの再生成
改善後、新規ページをGoogleに素早く認識させるためサイトマップを再生成しました。
php artisan sitemap:generate
実行結果:
メインサイトマップ: 5,068 URL
SEOランディング: 34,162 URL
カタログ: 1,247 URL
ショップ: 10,792 URL
駐車場: 38,476 URL
モデルカタログ: 4,742 URL
車両詳細: 124,852 URL
---
合計: 約21万 URL
GSCの「サイトマップ」から送信して完了。
改善後の所感
改善直後はGoogleへの反映に2〜4週間かかるため、まだ結果は出ていません。
ただ今回の分析で、「表示されているのに選ばれていない」というCTRの問題と、「モデルページがほぼ未開拓」という伸びしろが明確になりました。
広告費ゼロで新規ユーザーを獲得するには、まずデータを見ることが大事だと実感しました。
まとめ
個人開発でSEO改善するなら、まずGSCのデータを見ることをおすすめします。
今回やったことを整理すると:
- GSCデータのエクスポート・分析(クエリ・ページの2ファイル)
- CTR 0%のキーワードを特定 → title・meta description改善
- 強いキーワードを発見 → チェーン別ページを新規作成
- 未開拓ページを発見 → モデルページ・駐車場ページのSEO強化
- サイトマップ再生成 → Googleへの早期認識
結果は数週間後のGSCで確認します。
前回の記事:Cloudflare + Docker + LaravelでHTTP/3が原因でモバイルだけ通信エラーになった話
🏍 MotoHub: https://motohub.jp
X: https://x.com/motohub_jp
GitHub: https://github.com/ausssxi/MotoHub




