「Googleフォームで重複回答を防ぎたい」「特定の人にだけ回答してほしい」「期限を設けたい」——アンケート設計でよくある要件です。
Googleフォームには各種の回答制限機能がありますが、そのほとんどがGoogleログインを前提 にしているため、社外の一般ユーザーに送るときに 回答率を落とす副作用 があります。本記事では設定手順だけでなく、その代償の正体まで踏み込みます。
できる回答制限の全範囲
| 制限の種類 | 設定可否 | 必須条件 |
|---|---|---|
| 1人1回のみ | ○ | Googleログイン必須 |
| 特定ドメイン限定 | ○ | Workspace |
| 回答期限の設定 | ○ | Workspace(または手動でフォーム停止) |
| 回答数の上限設定 | × | 標準機能なし(GASで実装) |
| IPアドレス制限 | × | 不可 |
| パスワード保護 | × | 不可 |
「回答数の上限」「IP制限」「パスワード」がないことに驚く方が多いですが、Googleフォームの設計思想は 「Googleアカウントによる本人確認」を前提 としています。ここがツール選びの分岐点になります。
1人1回制限の設定手順
1. 設定タブを開く
フォーム上部の「設定」タブ → 「回答」セクション。
2. 「メールアドレスを収集する」をオン
「確認済み」を選択。これで 回答者のGoogleアカウントメールが自動で記録 されます。
3. 「回答は1回のみ」をオン
「Googleアカウントへのログインが必要」というメッセージが表示されることを確認。
これで設定完了。同一Googleアカウントから2回目を送信しようとすると、「すでに回答済みです」というメッセージで弾かれます。
ここで起きる問題 — Googleログイン強要の代償
「1人1回制限」は便利ですが、副作用があります。
副作用1:回答者全員がGoogleアカウントを持つ前提
日本でも企業ユーザー・若年層を中心にGoogleアカウントは普及していますが、シニア層・特定業界・海外向け では「Googleログイン?何それ?」となるケースは珍しくありません。
副作用2:「ログインしたくない」だけで離脱する層
実務的に最も大きい問題は、Googleログインを求められた瞬間にフォームを閉じる層 が一定数存在することです。理由:
- 個人のGoogleアカウントを業務で使いたくない
- 「会社にバレる」と感じる
- 単純にログインが面倒
- セキュリティ意識から拒絶
体感ベースで 回答率が10〜30%下がる ケースが報告されています。これは重複防止のメリットを上回る損失になることがあります。
副作用3:回答者のGoogleアカウントが記録される
メールアドレスが「確認済み」で記録されるということは、回答者の本名Gmailアドレス がそのまま蓄積されるということ。匿名アンケートを謳っていながらGoogleアカウントが記録される構造は、匿名性の信頼を損なう 可能性があります。
特定ドメイン限定(Workspace)
Google Workspaceのアカウントを使っている場合、「組織のユーザーのみアクセス可能」を有効にできます。
設定 → 全般 → 「組織内のユーザーに限定」
これで @your-company.com ドメインのユーザーしかアクセスできなくなります。社内アンケートには最適 ですが、社外には使えません。
回答期限の設定
Workspaceの場合
「設定」→「プレゼンテーション」→「フォームを停止する日時」で予約停止可能。
無料アカウントの場合
予約停止機能がないため、手動でフォームを閉じる 必要があります。GASで自動化する例:
function closeFormAtDeadline() {
const form = FormApp.getActiveForm();
form.setAcceptingResponses(false);
}
トリガーで指定日時に実行。エンジニア向け回避策ですが、運用は煩雑。
回答数の上限を設けたい場合(GAS)
「先着100名」のような上限はGASで実装します:
function checkLimit(e) {
const form = FormApp.getActiveForm();
const responses = form.getResponses();
if (responses.length >= 100) {
form.setAcceptingResponses(false);
form.setCustomClosedFormMessage('定員に達しました。ご応募ありがとうございました。');
}
}
トリガーを「フォーム送信時」に設定。回答が来た瞬間に判定して上限到達なら閉じる 動作になります。
ここからが本題 — 「制限したい」と「回答してほしい」のトレードオフ
回答制限を強めるほど、回答率は下がります。これは避けられない原則です。
| 制限の強さ | 回答率の下がり方 |
|---|---|
| 制限なし | 100%(基準) |
| 期限のみ | 95〜100% |
| 1人1回(Googleログイン) | 70〜90% |
| 特定ドメイン限定 | 該当者の70〜90% |
| 1人1回 + 期限 | 65〜85% |
つまり、「重複防止のために30%の回答を犠牲にする価値があるか」 が判断基準です。
たとえば:
- n=100が必要だけど発信先が500人 → 制限なし で送ったほうが期限内に集まる
- n=100が必要で発信先が200人 → 制限ありで信頼性を担保
- 匿名性を重視 → 1人1回制限はそもそも矛盾している
「制限すべき」と無条件に考えるのではなく、回答率と信頼性のトレードオフを意識して設計 することが本質です。
Cookie/IPベースの重複防止という選択肢
「Googleログインなしで重複防止したい」要件に応えるには、Cookie/IPベースの判定ができるツールが必要です:
- Cookieベース — 同一ブラウザからの再回答をブロック(個人特定なし)
- IPベース — 同一ネットワークからの大量回答を検知(社内はNG運用)
- デバイスフィンガープリント — Cookie削除でも検知(強力だが議論あり)
これらは 「ログイン不要 + 重複防止」 という、Googleフォームでは両立できない要件を実現します。
設計の判断フロー
質問1:社内向けアンケートか?
- YES → Googleフォーム(特定ドメイン限定)でOK
- NO → 続く
質問2:回答者全員がGoogleアカウントを使う想定?
- YES → 1人1回制限を使う
- NO → 続く
質問3:重複防止と回答率、どちらが重要?
- 重複防止 → Cookie/IPベース対応のツールを使う
- 回答率 → 制限なしで送る
レポアンの回答制限機能
レポアンは「ログインなしの重複防止」を含む柔軟な制限設計に対応しています。
- Cookieベース重複防止 — Googleログイン不要で同一ブラウザの再送信をブロック
- 回答数上限の自動停止 — 「先着100名」を標準UIで設定可能
- 期限の予約設定 — 開始・終了の予約をノーコードで
- IPベース連続送信制限 — Bot対策として活用可能
- 特定URLパラメータ必須化 — メール経由のみアクセス可、のような制御
- パスワード保護 — 配布先を限定するシンプルな選択肢
まとめ
Googleフォームの回答制限は:
- 1人1回制限はGoogleログイン強要 → 回答率トレードオフ
- 特定ドメインはWorkspace + 社内向けのみ
- 回答数上限・IP制限・パスワード保護は標準機能なし
「重複を防ぎたい」と思った瞬間、Googleフォームの設計思想(Googleアカウントベース)と、現実の回答者層(ログインしたくない人含む)の ギャップ が露わになります。回答率と信頼性のどちらを取るか、目的に立ち返って判断するのが正しい順序です。