1. Google reCAPTCHAサイトへのアクセス方法
- Googleが提供するreCAPTCHAを利用するには、まずGoogleアカウントが必要です(未所持の場合は作成してください)。
- 準備ができたら、ウェブブラウザでGoogle reCAPTCHAの管理コンソールにアクセスし、Googleアカウントでログインします。
- 管理コンソールのURL(https://www.google.com/recaptcha/admin)に直接アクセスするか、Google reCAPTCHA公式サイトの「Admin Console(管理コンソール)」ボタンをクリックするとログイン画面が表示されます。
- ログイン後、reCAPTCHAの管理画面に移動します。
reCAPTCHA管理コンソールは、初回利用時にGoogle Cloudプロジェクトへ統合される関係で利用規約への同意などが求められる場合があります。これはreCAPTCHAの無料枠提供がGoogle Cloud上で行われるためで、案内に従って進めれば問題ありません(2024年8月以降、無料版は「reCAPTCHA Essentials」として月1万回までの検証が無償提供されています)。ほとんどの小規模サイトでは十分な範囲ですが、非常に大量のリクエストがある場合は将来的にGoogle Cloudでの課金設定が必要になる可能性があります。
2. reCAPTCHA v2のサイト登録手順(ラベル、ドメインの登録など)
Google reCAPTCHA管理コンソールにログインできたら、新しいサイトの登録を行います。初めての場合は自動的に登録フォームが表示され、既に他のサイトを登録済みの場合は「+(新しいサイトを追加)」ボタン等から登録フォームを開けます。

画像引用元:support.qubo.jp
新しいサイトを登録する画面の例(各番号の項目に入力します)。
1: ラベル
2: reCAPTCHAタイプ選択
3: ドメイン
4: 利用条件への同意
5: 送信ボタン。
各項目を次のように入力・選択してください。
- ラベル: サイトを識別するための任意の名前です。後で管理しやすいように、自分にとってわかりやすい名前(例:「お問い合わせフォーム用」やサイト名など)を入力します。
- reCAPTCHAのタイプ: 「reCAPTCHA v2」を選択し、その下に現れる「私はロボットではありません」チェックボックス(Challenge (v2))を選択します。
※他にも「Invisible reCAPTCHA(v2の非表示版)」やv3がありますが、ここではチェックボックス式のv2を選びます。 - ドメイン: reCAPTCHAを設置するサイトのドメイン名を入力します。先頭の
https://
やhttp://
は含めず、ドメイン部分のみを記入します(例:example.com
)。必要に応じて複数のドメインを追加することも可能です(1行に1ドメインずつ)。
サブドメインについて: メインのドメイン(例:example.com
)を登録すれば、そのサブドメイン(sub.example.com
など)は個別に登録しなくても有効になります。ただし特定のサブドメインだけで利用したい場合は、そのサブドメインを直接登録することもできます。 - オーナー: オーナーとして表示されている自分のメールアドレス(Googleアカウント)を確認します。共同管理者を追加したい場合、そのメールアドレスを入力できますが、特に必要なければデフォルトのままで問題ありません。
- 利用条件への同意: 「reCAPTCHA利用条件に同意する」にチェックを入れます。また、必要に応じて「アラートをオーナーに送信する」(reCAPTCHAに関するセキュリティアラートをメール通知で受け取る設定)もチェックします。
- 送信: 上記を全て入力・選択したら、画面下部の「送信」ボタンをクリックします。これでサイトの登録情報がGoogleに送信され、キーの発行手続きが行われます。
3. サイトキーとシークレットキーの取得手順

画像引用元:support.qubo.jp
サイトキー(公開鍵)とシークレットキー(秘密鍵)が発行されました。サイトキーはユーザー側のHTMLコードに埋め込んでreCAPTCHAウィジェットを表示するために使用します。
一方、シークレットキーはサーバー側でユーザーの回答トークンを検証するために使用する秘密の鍵です。
シークレットキーは絶対に第三者に知られないようにし、自分のサーバーサイドコードなど安全な場所で管理してください(公開ディレクトリやクライアントサイドのコードに含めないよう注意が必要です)。
この画面ではコピー用のボタンも用意されていますので、それを利用してコピーし、メモ帳などに貼り付けて一時保存するとよいでしょう。
発行されたサイトキーとシークレットキーは、後からでも管理コンソールの「設定」ページ等で確認できます。万一キーを紛失しても再登録の必要はなく、管理コンソールにログインして該当サイトの設定画面を開けばいつでも確認可能です。また、必要に応じてキーの無効化や再発行(サイトを削除して再登録)も行えます。
4. reCAPTCHAコードの埋め込み方(JavaScriptタグとHTMLの構造)
次に、取得したサイトキーを使って実際にウェブページにreCAPTCHAのチェックボックスを表示させます。基本的な埋め込み手順は「スクリプトの読み込み」と「HTMLに所定のタグを追加」の2つです。
(1) スクリプトの読み込み: Google提供のreCAPTCHAウィジェットをロードするためのJavaScriptファイルを、HTMLページ内で読み込みます。これは次のような <script>
タグを追加するだけです(※必ずHTTPSでロードします)
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
このタグは、<head>
内や<body>
の終了直前など適切な場所に挿入してください。async defer
属性を付けることで、ページの他の部分をブロックせず非同期にスクリプトを読み込みます。
(2) HTMLフォームへのタグ追加: reCAPTCHAのチェックボックスを表示したい位置(例えばフォームの送信ボタン付近)に、<div>
タグを挿入します。div
タグにはクラス名g-recaptcha
と、先ほど取得したサイトキーを指定するdata-sitekey
属性を設定します。例えば、フォーム内に以下のようなコードを追加します。
<form action="/your_form_handler" method="POST">
<!-- 他のフォーム要素 ... -->
<div class="g-recaptcha" data-sitekey="サイトキーをここに入力"></div>
<input type="submit" value="送信">
</form>
上記のdata-sitekey
に、ご自身のサイトキー(サイトキーの文字列)をそのまま記入してください。これで、その位置に「私はロボットではありません」というチェックボックス型のウィジェットが表示されるようになります。スクリプトを読み込んだページでは、このクラス付きdiv
タグを自動的に探してreCAPTCHAウィジェットをレンダリングしてくれます。
複数のreCAPTCHAを一度に表示したい場合や、スクリプトを手動でレンダリングしたい場合には「explicit」レンダリングという方法もありますが、初心者であれば上記の自動レンダリング方法で十分でしょう。また、デザインに応じてテーマ(明るい or 暗い)、サイズ(コンパクト or 通常)などを変更するオプションもありますが、デフォルトでは標準的な外観で表示されます。詳しいカスタマイズ方法は公式ドキュメントをご参照ください。
5. 導入時の注意点(ドメイン名の入力、テスト方法、鍵の管理など)
最後に、reCAPTCHA v2導入におけるいくつかの注意ポイントをまとめます。正しく機能させ、トラブルを避けるために以下の点に気を付けてください。
- ドメイン名の設定: 管理コンソールで登録したドメイン名と実際にreCAPTCHAを設置するサイトのドメインが一致している必要があります。例えば、本番サイト用に
example.com
を登録した場合、その配下のwww.example.com
や他のサブドメインでもウィジェットは動作しますが、まったく別のドメイン(例:example.net
など)では動作しません。開発中にローカル環境でテストする場合は、localhost
や使用している開発用ドメインをあらかじめ登録ドメインに含めておきましょう。後から管理コンソールの設定でドメインを追加することも可能です(最大で250個まで登録可能です)。 - 実装後のテスト方法: reCAPTCHAを埋め込んだページを実際に開き、ウィジェットが表示されているか確認しましょう。ページを表示すると、「私はロボットではありません」というチェックボックスがフォーム中に現れるはずです。チェックボックスをクリックすると✅マークが付き、人間であることが認証されます(場合によっては追加の画像選択チャレンジが表示されることもあります)。正しくチェックが入った状態でフォームを送信し、通常通りデータが送信できるか確認してください。もしウィジェットが表示されない場合は、サイトキーの埋め込みミスやドメイン設定ミスがないか再度確認してください。
- シークレットキーの管理: シークレットキー(Secret Key)はサーバー側でユーザーの回答が正当かを検証するために使用します。この鍵は絶対に公開しないことが鉄則です。ウェブページのHTMLやJavaScriptコードに埋め込んだり、GitHubなどの公開リポジトリにそのままコミットしたりしないよう注意しましょう。シークレットキーはサーバーサイドの環境変数や設定ファイル(非公開領域)に保存し、フォーム送信後にサーバー上でGoogleの検証APIを呼び出してトークンの有効性チェックを行います。このサーバー側の実装により、送信された
g-recaptcha-response
トークンをGoogleに照合し、真に人間が操作したものかを確認できます。初心者向けの本マニュアルでは詳細なサーバー実装は割愛しますが、PHPやNode.jsなど各種言語向けにGoogle提供の検証手順がありますので、必要に応じて公式ドキュメントを参照してください。 - その他のポイント: reCAPTCHA利用時はGoogleの利用規約およびプライバシーポリシーに従う必要があります。サイト上にreCAPTCHAを設置した旨(Googleのプライバシーポリシーへのリンク等)を表示するのが望ましいとされています。また、reCAPTCHA v2のチェックボックスはユーザーの明示的な操作を伴うため、ユーザー体験を損ねない場所に配置することも大切です(一般的には送信ボタンの直前に配置します)。導入後、スパム送信が減少するか監視し、万一問題が発生した場合はキーの再発行やv3へのアップグレードも検討してください。
以上が、Google reCAPTCHA v2(「I’m not a robot」チェックボックス)導入手順です。手順に沿って設定すれば、あなたのウェブサイトのフォームにreCAPTCHA機能が追加され、ボットやスパムからの攻撃を軽減できるはずです。
参考資料: Google reCAPTCHA公式ドキュメントおよび関連ブログsupport.qubo.jpdevelopers.google.comzenn.devなど。上記手順や注意点は2025年現在の最新情報に基づいていますが、Googleのサービス仕様は更新される可能性があります。常に最新の公式情報も確認するようにしましょう。