セマンティックコア収集ツール

プロジェクトごとにキーワードプールを収集、クリーニング、クラスタリング、拡大します。Yandex Wordstatの需要、SERPクラスター、完全一致頻度、競合マイニングに対応し、有料の呼び出しの前にオフラインでプランを確認できます。

試してみる

SpiderHeadのセマンティックコア:無料と有料のステージが並ぶステージレールと、有料ステージのオフラインプラン。

13のステージ、積み上がる1つのコア

各ステージはステータスを変更して理由を記録するため、フレーズが削除されることはなく、すべての判断を説明できます。無料のステージを有料のステージの間に挟むので、次の回答を購入する前にプールを確認できます。

  • 無料無料、ローカルで動作
  • 有料有料のプロバイダー呼び出し
  • Web公開Webページ、プロバイダーのクォータは不要
  1. 無料

    インポート

    手元にあるデータを取り込みます。CSVまたはXLSXの1シートが対象です。query、frequency、group、subgroup、URL、commentを対応付け、add、update、replaceのいずれかで反映します。プレビューでは、書き込む前に新規、既存、重複の行を確認できます。

    phrases
  2. 有料

    収集 · Yandex Wordstat

    地域ごとにシードを展開し、頻度の高いフレーズを指定した深さまで再展開します。キューは重複排除され、--resumeで中断した実行を、同じフレーズを再度取得せずに続けられます。

    phrases, expansions, provenance
  3. 無料

    クリーニング

    プロジェクトのフィルター(意図、ストップワード、情報系パターン)を適用し、頻度の外れ値にフラグを付け、フレーズをレンマ単位でグループ化します。インプレッションや順位が観測されているフレーズは、頻度のルールで除外されません。

    status, route, lemma group
  4. 無料

    グラフ

    プールの単語グラフを作成します。同音異義語の候補はレビューに回り、候補クラスターはanomalies.mdに出力されます。追加の支払いより前の段階です。

    anomalies.md
  5. 無料

    サイト照合

    フレーズは、サイトが扱っている場合にのみコアに入ります。catalog.txtの語を1つも含まないフレーズは、カタログ外としてレビューに回ります。

    review list
  6. 有料

    クラスタリング · Yandex Search API

    フレーズごとに上位10件を1回取得してキャッシュするため、再実行では新しいフレーズ分だけ課金されます。ページを共有するフレーズが1つのクラスターになります。--method louvainはキャッシュ済みの結果を再グループ化し、長い連鎖を断ち切ります。

    SERP cache, clusters, landing candidates
  7. 無料

    関連性

    フレーズの上位10件に、vendors.txtにある同種のサイトが1つも出ない場合、そのトピックは対象外の可能性が高いです。フレーズはレビューに回り、削除はされません。

    review list
  8. 無料

    マイニング

    キャッシュ済みの結果を読み取り、どのドメインがクラスターを占めているか、タイトルでどんな語を使っているかを調べます。候補はsynonyms.txtに入ります。

    competitors.md, synonyms.txt
  9. Web

    マイニング

    収集した結果から最も頻出する競合ページを開き、title、description、H1、最初のH2見出しを読み取ります。トピックに合う2語・3語のフレーズはsynonyms.txtに入ります。

    competitor_mining.md, synonyms.txt
  10. 有料

    類義語 · Yandex Wordstat

    synonyms.txtの候補を確認します。需要のあるフレーズだけがコアに加わり、その後collect --resumeでそこからプールを拡大します。

    checked phrases
  11. 有料

    完全一致頻度 · Arsenkin

    完全一致の!W頻度を、プールが変化しなくなった最後の段階で、レンマグループごとに1回購入します。プロジェクトの予算ゲートを超える場合は--yesが必要です。

    exact frequency, task receipts
  12. 無料

    レポートとExcel

    読み取り用にreport.mdとclusters.csv、クライアント向けにXLSXブック(Summary、Core、Info、Clusters、Rejected)、他のツール向けにpool.csvとpool.jsonを出力します。

    report.md, XLSX, CSV, JSON
  13. 無料

    ランディングとインサイト

    公開後、計測済みの候補から各クラスターのランディングページを選びます。ローカルのSearch Console、Webmaster、Metrikaのデータから週次のクラスターシグナルを読み取り、選んだものをチェックリストのタスクにします。

    landing, weekly signals, tasks

コアを育てるループ

コアは一度で集め終わるものではありません。競合とマイニングが新しい候補を供給し、類義語で確認し、収集を再開して、クラスタリングをもう一度実行します。完全一致頻度は最後に購入します。

  1. collect
  2. clean · graph · site match
  3. cluster
  4. competitors · mine
  5. synonyms
  6. collect --resume
  7. exact, once
  8. report

データの取得元

収集パイプラインはYandexのデータで動作します。Googleの需要、順位追跡、検索アナリティクスは、コアと並行して使う別のツールキットコマンドです。

パイプライン内

有料

Yandex Wordstat

collect · synonyms

Yandex Cloud APIによる基本頻度、絞り込み、関連クエリ。APIキーとフォルダーIDが必要で、1時間あたりのクォータがあります。

有料

Yandex Search API

cluster

フレーズと地域ごとに上位10件を、取得時刻と地域つきでキャッシュします。非同期エンドポイントのみ対応です。

有料

Arsenkin

exact

Wordstat APIでは得られない完全一致の!W頻度。課金はタスク作成時で、task_idを保持するため、タイムアウトした結果は再購入ではなく再取得になります。

コアと並行

有料

DataForSEO

google-keywords

Googleの検索ボリューム、競合性、シードの展開。デフォルトはサンドボックスです。

有料

Wordstatの単発取得

keywords-expand · keywords-seasonality · regions-tree

1つのフレーズの展開、月ごとの需要の確認、地域ツリーの閲覧(地域ツリーは無料)。

無料

Topvisor

topvisor-read

既存のアカウントから、プロジェクト、キーワード、記録済みの順位履歴を読み取ります。有料のチェックはツールキットから起動できません。

無料

Search Console・Webmaster・Metrika

semantics insights

ツールキットがローカルに同期済みのデータから、クラスターごとの週次シグナルを作成します。インサイトの処理自体はプロバイダーを呼び出しません。

支払いは一度だけ、先にプランを確認

有料のステージにはすべてオフラインのプランがあり、地域、エンジン、クエリの取得元、リクエストまたはタスク数の上限を示します。プランがプロバイダークライアントを作成することはありません。

有料の呼び出しの前に必ずプラン

--dry-run --jsonでプランを出力します。実行本体には、見積もりがゼロでも--confirm-paidが必要です。

再試行ではなく受領記録

Wordstatの試行、SERPの取得、Arsenkinのタスクは、呼び出しの前に予約されます。結果が不明なリクエストが自動で再送されることはありません。

残り続けるキャッシュ

キャッシュ済みのSERPと有料の受領記録は、プールを置換しても残るため、再クラスタリングでは新しいフレーズ分だけの支払いで済みます。

1つの支出ジャーナル

すべての課金は、対応するセマンティックプロジェクトとステージとともにspend-reportに記録されます。

プロバイダーの料金をオフラインで確定できない場合、プランは数字を推測せず、その旨を示します。

インポートとエクスポート

入力

  • CSVまたはXLSX(選択した1シート)。曖昧でなければ見出しは自動で対応付けられます
  • フィールド:query、frequency、group、subgroup、URL、comment、さらにbase、quoted、exact、インプレッション、Yandex/Googleの順位
  • Category / Clusterのパスはgroupとsubgroupに分割されます
  • addは既存のフレーズを残し、updateは指定したフィールドを反映し、replaceはプールを入れ替えます(空の場合は拒否されます)
  • 入力の上限:1ファイルあたり32MiB、100,000行、128列

出力

  • XLSXブック:Summary、Core、Info、競合つきのClusters、Rejected
  • report.mdのダイジェストとclusters.csvのマトリクス
  • 他のツール向けのpool.csvとpool.json
  • 範囲:コア全体、1つのクラスター(--cluster)、ランディング未設定のクラスター(--scope no-landing)
  • ドライランで、先に正確なファイル名と行数を確認できます

CLIの実際の出力

ツールキットに同梱されている合成のサンプルプロジェクトから取得しました。フレーズはYandexの需要に合わせてロシア語で、頻度は架空の値です。有料の呼び出しは行っていません。

無料のステージを順に実行
$ seohead semantics clean --project ./core
$ seohead semantics graph --project ./core
$ seohead semantics sitematch --project ./core
clean: kept=34 review=4 dropped=3 | lemma groups=41 (median base=720, outlier>36000)
graph: homonyms=0, to review=0, candidate clusters=7 -> anomalies.md
sitematch: catalog terms=11 | off-catalog->review=8 | kept and matching the site=26
有料ステージのオフラインプラン
$ seohead semantics cluster --project ./core --dry-run
"mode": "estimate", "stage": "cluster", "paid": true,
"provider": "yandex_search",
"request_estimate": {"unit": "requests", "count": 26, "kind": "upper_bound"},
"money_estimate": null,
"money_unavailable_reason": "provider pricing is not available from this offline preflight",
"paid_calls_made": 0
コアの現在の状態
$ seohead semantics status --project ./core
dropped=3 | kept=26 | review=12 | _total=41 | _exact=0 | _expanded=0 | _clusters=0
provider units: {'yandex_requests': 0, 'arsenkin': 0}
next: seohead semantics exact --project ./core
エクスポートのプラン(書き込みなし)
$ seohead semantics export --project ./core --scope no-landing --dry-run
"mode": "preview", "scope": "no-landing", "rows": 41,
"planned_files": ["core/semantics/pool.csv", "core/semantics/pool.json"]
bash
seohead semantics status --project ./my-core

先にインストールします: インストールガイド。どのコマンドも、AIエージェント向けのMCPツールとして実行できます。

必要なもの

  • 3〜10個のシードフレーズと、project.yamlのプロジェクトフィルター
  • サイトのセクションを記したcatalog.txtと、同種のサイトを並べたvendors.txt
  • WordstatとSearch API用のYandex Cloud APIキーとフォルダーID
  • 完全一致頻度用のArsenkinトークン(最後にのみ使用)
  • 任意:CSVまたはXLSXの既存キーワードリスト

制限事項

  • 収集とクラスタリングはYandexのデータで動作します。Googleの需要は別コマンドgoogle-keywordsです
  • プロバイダーの料金が不明な場合、費用はオフラインで見積もられず、プランにその旨が表示されます
  • ランディング候補には、SERPクラスタリングの実行とプロジェクト自身のドメインが必要です
  • インサイトは、ローカルのソースデータベースに同期済みのデータだけを読み取ります

コアをエージェントに任せる

10個のMCPツールが、同じステージと読み取りを提供します。有料の呼び出しはプランを返し、作業を送信するにはconfirm_paid=trueが必要です。

  • seo_semantics_statusカウンター、プロバイダー単位、次のステージ
  • seo_semantics_run無料のステージ
  • seo_semantics_mine競合ページ、プロバイダーのクォータは不要
  • seo_semantics_paid有料のステージ:まずプラン、次にconfirm_paid=true
  • seo_semantics_clustersページ分割されたクラスター一覧
  • seo_semantics_cluster_showランディングの根拠つきの1つのクラスター
  • seo_semantics_cluster_queriesクラスターのフレーズと、保持している上位10件
  • seo_semantics_set_landingランディングページの割り当てまたは解除
  • seo_semantics_insightsクラスターとソースごとの週次シグナル
  • seo_semantics_insights_tasks選んだシグナルをチェックリストへ

よくある質問

Googleのキーワードも収集できますか?
収集パイプラインでは対象外です。Yandex Wordstat、Yandex Search API、Arsenkinで動作します。Googleの検索ボリュームとシードの展開は、DataForSEO経由の別コマンドgoogle-keywordsで取得し、Googleの順位は列としてコアにインポートできます。
どのステージに費用がかかりますか?
collectとsynonyms(Yandex Wordstat)、上位10件がキャッシュされていないフレーズのcluster(Yandex Search API)、exact(Arsenkin)です。mineは競合の公開ページを読み取り、プロバイダーのクォータを使いません。それ以外は無料で、ローカルで動作します。
1回の実行で二重に課金されることはありますか?
ないように設計されています。有料のリクエストは呼び出しの前に予約され、中断したリクエストは自動で再送されません。Arsenkinの有料結果はtask_idで再取得され、プールを置換してもキャッシュは残ります。
フレーズは削除されますか?
いいえ。ステージはフレーズのステータス(kept、review、droppedなど)を変更し、理由とステージを記録します。フレーズがコアから外れた理由はいつでも確認でき、元に戻せます。
既存のキーワードリストから始められますか?
はい。自分の列をquery、frequency、group、subgroup、URL、commentに対応付けて、CSVまたはXLSXのシートをインポートします。インポートした順位とインプレッションは、頻度による除外からフレーズを守ります。
クラスターのランディングページはどう選びますか?
SERPクラスタリングの実行後、プロジェクト自身のドメインが分かっている場合に限り、各候補URLを、上位10件にそのURLが含まれていたクラスターのフレーズの割合で評価します。ランディングは自分で選び、その選択は監査記録とともに保存されます。