OpenSEO
Semrush・Ahrefs の代替。キーワード調査・順位追跡・被リンク・サイト監査を従量課金で使える SEO ツール
自分のサーバーで動かすなら:メモリ 1GB 以上の VPS で、月額 588円〜(目安) 導入方法と VPS の比較を見る ↓
- ARM対応
- Docker対応
- クラウド版あり
- セルフホスト可
- 商用利用可
OpenSEO は、キーワード調査・順位追跡・競合分析・被リンク調査・サイト監査・AI 検索での露出(AI Visibility)をまとめた SEO ツールです。月額の定額制ではなく、使った分だけ払う仕組みを掲げています。MCP サーバーと「Agent Skills」を備え、Claude Code・ChatGPT・Codex などの AI エージェントから SEO データを直接扱えます。Google Search Console との連携や、OpenRouter の API キーを使うアプリ内 AI エージェント(SAM)も任意で使えます。
注意点は、ソフト自体は無料でも、検索ボリューム・順位・被リンクなどの SEO データは外部サービス DataForSEO の API から取得することです。セルフホストでも DataForSEO のアカウントと API キーが必須で、利用料(従量課金)は DataForSEO に直接払います。DataForSEO は新規アカウントに1ドル分の無料クレジットがあり、チャージは最低50ドルから(残高に期限なし)です。OpenSEO の料金ページでは、キーワード検索1回あたり約0.05ドル、被リンクのドメイン概要(1年分の履歴つき)1回あたり約0.08ドルが目安とされています(公式クラウド版の料金で、セルフホストではやや安くなると README に記載)。
セルフホストは Docker(自分の PC での個人利用向け)と Cloudflare(Workers・D1・R2 を使い、チームでの利用向け)の2通りです。Docker 版はアプリ側のログイン機能がなく、公開する場合は認証つきのリバースプロキシやプライベートネットワークの内側に置くよう公式が求めています。Cloudflare 版は Cloudflare Access でログインを守ります。Docker イメージは amd64・arm64 向けです。セルフホスト版は匿名の利用統計(導入数・機能の利用回数など。URL やキーワードは含まない)を送信し、環境変数 OPENSEO_TELEMETRY_DISABLED=1 で止められます。必要メモリの数値は公表されていません。公式のクラウド版(openseo.so)は月10ドルで、10ドル分の利用量を含みます。画面と公式ドキュメントは英語で、日本語の翻訳ファイルはありません。2026年2月に公開された新しいプロジェクトで、バージョンは 0.1 系です。
日本語対応
リポジトリに日本語の翻訳ファイルはなく、画面・README・公式ドキュメントは英語です(2026-10-19 確認)。
※ 日本語の翻訳ファイルの有無はリポジトリを自動で確認しています(翻訳の割合は、ファイルの形式によって計測できないため表示していません)。最終確認:2026/10/22
向いている人・向いていない人
向いている
- Semrush や Ahrefs の月額が高く、調べる量が少ない月は費用を抑えたい
- キーワード調査・順位追跡・被リンク確認など、よく使う機能に絞って使いたい
- Claude Code や ChatGPT などの AI エージェントから SEO データを扱いたい
- データの取得費用を DataForSEO に直接払い、使った分だけにしたい
向いていない
- 完全無料で使いたい(SEO データの取得に DataForSEO の API 利用料が必ずかかり、チャージは最低50ドルから)
- 開発初期のツールを業務の中心に置きたくない(2026年2月公開・バージョン 0.1 系)
- 日本語の画面やサポートが必要(UI・ドキュメントとも英語)
- Docker 版をそのままチームで共有したい(Docker 版はログイン機能がなく、認証は自前で用意する必要がある)
最近の更新
-
リリースノート(原文)
IndexNow submissions, rank trackers per language, and steadier rank checks. ## What's new - Submit changed pages to Bing and other IndexNow engines, in Settings → Integrations or with the `submit_indexnow_urls` MCP tool - Requires uploading a key file to your site - Track the same site in more than one language - Title and meta description length issues show the flagged text ## Fixed - Keywords that have ranked before are no longer marked "Not found" after one bad Google results page. - Prompt Research no longer suggests questions about a different meaning of your keyword. - Website setup can read sites that block it, including Shopify stores, when `CONTEXT_API_KEY` is set. - The dashboard backlinks card hides likely spam links, like the Backlinks page does. Full Changelog: https://…
-
リリースノート(原文)
Mobile SERPs in MCP, rank tracking fixes, and clearer Search Console errors. ## What's new - Check mobile results and organic rank with the `get_serp_results` MCP tool - Shopify crawler signatures work past the homepage - Requires `CRAWLER_ACCESS_SECRET` (32+ characters), then save your signature again ## Fixed - Incomplete rank checks no longer look like lost rankings. - Claude no longer reports "no data" from MCP tools that returned results. - Self-hosted site audits show start times in your timezone instead of UTC. — thanks @zigojacko2 - Search Console shows what to fix instead of "Connection expired" when a permission is missing or its API isn't enabled. - The project switcher shows all your projects after you switch. Full Changelog: https://github.com/every-app/open-seo/compare…
-
リリースノート(原文)
Website monitoring dashboard, Claude and Perplexity tracking, and faster Run now checks. ## What's new - A dashboard for monitoring your saved website - Saving a website starts a site audit automatically - Track Claude and Perplexity in Prompt Tracking - Their answers cost more than the other engines - Run now in Prompt Tracking returns answers in minutes - See the prompts behind each citation on the Citations tab - Move tracked prompts between topics and rename topics ## Fixed - Claude answers in Prompt Explorer work again. - The site audit Pages tab no longer crashes on large audits. - Website setup no longer fails when search is briefly unavailable. - Exporting a large prompt tracker no longer gets stuck in progress. Full Changelog: https://github.com/every-app/open-seo/compare…
導入方法(セルフホスト)
every-app/open-seo/compose.yaml
services:
open-seo:
image: ${OPEN_SEO_IMAGE:-ghcr.io/every-app/open-seo:latest}
restart: unless-stopped
# Forward EVERY .env value into the container. The explicit `environment:`
# list below still wins for the values it names — without this, any .env
# value not listed there (e.g. OPENROUTER_API_KEY) silently never reached
# the app. Compose errors if .env is missing; the quickstart's
# `cp .env.example .env` creates it.
env_file:
- .env
# Anonymous usage heartbeat controls: docs/SELF_HOSTING_DOCKER.md#telemetry
environment:
# Required for local Docker self-hosting: exposes Compose env vars to cloudflare:workers bindings.
- CLOUDFLARE_INCLUDE_PROCESS_ENV=true
- PORT=${PORT:-3001}
- ALLOWED_HOST=${ALLOWED_HOST:-}
- AUTH_MODE=local_noauth
- OPENSEO_TELEMETRY_DISABLED=${OPENSEO_TELEMETRY_DISABLED:-}
- DO_NOT_TRACK=${DO_NOT_TRACK:-}
- DATAFORSEO_API_KEY=${DATAFORSEO_API_KEY}
# Optional: AI features (the SAM agent). Without this the setup
# gate in the app asks for the key, but nothing here would forward it.
- OPENROUTER_API_KEY=${OPENROUTER_API_KEY:-}
# Optional: Google Search Console. See
# docs/SELF_HOSTING_GOOGLE_SEARCH_CONSOLE.md
- GOOGLE_CLIENT_ID=${GOOGLE_CLIENT_ID:-}
- GOOGLE_CLIENT_SECRET=${GOOGLE_CLIENT_SECRET:-}
- BETTER_AUTH_SECRET=${BETTER_AUTH_SECRET:-}
# Optional: AI features (SAM, the in-app SEO agent)
- OPENROUTER_API_KEY=${OPENROUTER_API_KEY:-}
- OPENROUTER_MODEL=${OPENROUTER_MODEL:-}
- VITE_SHOW_DEVTOOLS=false
ports:
- "127.0.0.1:${PORT:-3001}:${PORT:-3001}"
volumes:
- open_seo_data:/app/.wrangler
volumes:
open_seo_data:
- VPSを契約する ― ConoHa VPS 1GBを選び、OSは Ubuntu を推奨
- Docker を入れる ― 多くのVPSはアプリテンプレートから1クリック。無ければ
curl -fsSL https://get.docker.com | sh - OpenSEO を起動 ― 上の compose ファイルを置いて
docker compose up -d - ドメインとHTTPS ― Caddy か Nginx Proxy Manager でリバースプロキシ(Let's Encrypt 自動)。独自ドメインが無ければ XServer ドメイン
で取得(PR)
このソフトが動く VPS プラン(必要メモリ 1GB 以上)
| サービス | プラン | 月額(目安) | |
|---|---|---|---|
| ConoHa VPS 最安 | 1GB | 588円〜 | 公式サイト ↗ |
| シンVPS | 1GB | 671円〜 | 公式サイト ↗ |
| XServer VPS クラウド | 4GB | 2,068円〜 | 公式サイト ↗ |
※ 月額は12か月契約の通常価格(税込・月額換算)の目安です。キャンペーン価格・初期費用は各社の公式サイトで確認してください。PR
Semrush と比べていくら安くなる?
| 契約 | Semrush(年額) | OpenSEO セルフホスト(年額) | 差額 |
|---|---|---|---|
| 1契約 | 250,200円 | 7,056円 | −243,144円 |
※ Semrush は 無料版あり(1日10レポート・デモプロジェクト1件)。有料は SEO プラン月額139ドル(約20,850円・年払いなら月117.33ドル)、Starter 月199ドル、Pro+ 月299ドル、Advanced は個別見積もり。追加ユーザーは月45ドルから。料金はドル建てで、消費税の扱いは料金ページに記載なし、セルフホストはConoHa VPS 1GB(月額588円)で試算。運用の手間・バックアップ・ドメイン代は含みません。
自分で入れるのが難しいときは
OpenSEO のセルフホストは、VPS の契約・Docker・ドメインと HTTPS・バックアップと、決めることが少なくありません。OSSMatch を運営する合同会社Edel Hearts では、サーバーの用意から初期設定・日本語化・バックアップと更新の仕組みづくりまでをまとめて代行しています。掲載している OSS は、実際に自社のサーバーで動かして確認しています。
OpenSEO の導入を相談する ↗相談は無料です。内容を伺ってから、費用と期間の目安をお伝えします。
アクセス解析の他のOSSと比較
| ソフト | ★ Stars | 最終更新 | 日本語UI | 必要RAM | 難易度 | ライセンス |
|---|---|---|---|---|---|---|
| OpenSEO(このページ) | 24,539 | 3日前 | 未検出 | ― | ふつう | MIT |
| PostHog | 40,386 | 10時間前 | 未検出 | 8GB | むずかしい | MIT |
| Umami | 39,538 | 2日前 | 97% | 512MB | かんたん | MIT |
| Plausible Analytics | 29,604 | 13時間前 | 未検出 | 2GB | ふつう | AGPL-3.0 |
よくある質問
OpenSEO は無料で使えますか?
ソフトは MIT ライセンスで無料ですが、SEO データの取得に DataForSEO の API が必須で、その利用料(従量課金)がかかります。DataForSEO は新規アカウントに1ドル分の無料クレジットがあり、チャージは最低50ドルからです。
1回の調査でどれくらいかかりますか?
OpenSEO の料金ページでは、キーワード検索1回あたり約0.05ドル、被リンクのドメイン概要(1年分の履歴つき)1回あたり約0.08ドルが目安です。これは公式クラウド版の料金で、クラウド版は DataForSEO への各リクエストに28%を上乗せしているため、セルフホストではやや安くなると README に書かれています。
公式のクラウド版はありますか?
openseo.so で提供されています。月10ドルで10ドル分の利用量を含み、無料トライアルでは0.50ドル分のクレジットが付きます。追加購入した利用量に期限はありません。
日本語で使えますか?
日本語の翻訳ファイルはなく、画面・ドキュメントは英語です。データは DataForSEO から取得するため、日本の検索データを使いたい場合は DataForSEO の対応国・言語を事前に確認してください。
Docker で立てればチームで使えますか?
Docker 版はアプリ側の認証がなく、公式は個人での利用や動作確認向けとしています。チームで使う場合は、公式が推奨する Cloudflare でのセルフホスト(Cloudflare Access でログインを保護)を検討してください。