迷惑送信を止め返信率を上げる:個人事業主のお問い合わせフォーム設計
個人事業主のお問い合わせフォームでよくある悩みは「迷惑送信が多すぎて本物の問い合わせが埋もれる」と「届いても返信メールが送れない」の2つです。どちらも設計の問題で、ボット対策と送信設計を見直せば大幅に改善できます。
本記事では、迷惑送信を減らすための3層防御、返信しやすくする項目設計、送信専用アドレスとReply-Toの使い分けまで、個人事業主が実装できるレベルでまとめます。OceansBaseの自社サイトもこの設計で運用しています。
---
迷惑送信を止める3層防御
スパムを止めるのは「ひとつの強い仕掛け」ではなく「重ねる仕掛け」が効きます。個人事業主のサイトで現実的なのは3層構造です。
第1層:CAPTCHAでボットを判定する
Google reCAPTCHAかCloudflare Turnstileをフォームに入れると、自動送信されるスパムの大半をブロックできます。Cloudflare Turnstileは画像選択型ではなくチェックボックスを押すだけや、見た目上何も表示しないモードも選べるため、UXを損ねずに導入しやすい選択肢です。
第2層:honeypotで人間とボットを分ける
honeypotとは、画面上人間には見えないダミー項目をフォームに仕込む手法です。ボットはフォームを自動で埋めてしまうため、その項目に入力があれば「ボット」と判定して受付を拒否できます。CAPTCHAと併用すると検知率が上がります。
第3層:rate limitで連続送信を止める
同一IPアドレスから短時間に複数送信された場合に受付を拒否する仕組みです。「同じIPから10分以内に3件超えたらブロック」というルールだけで、多発型スパムはかなり止まります。VercelやCloudflare Workersなら、ミドルウェアでシンプルに実装できます。
---
返信率を上げる項目設計
項目を柔らかくし、送り手が「ちゃんと説明したくなる」設計にすると、漠然とした問い合わせが減り、商談に近いリードの割合が上がります。
必須項目は名前・メール・本文に絞る
電話番号や会社名を必須にすると送信をやめる人が増えます。個人事業主の顔が見えるサイトなら、初回接触は名前・メール・本文の3点だけで十分です。必要な詳細は返信メールでヒアリングしていけば良いです。
ラジオボタンで「ご相談内容」を提示する
「さあ何を書こう」で腕組みされると離脱されます。「HP制作」「SEO・MEO」「AI活用・業務改善」「その他」のようなラジオボタンを並べておくと、クリック1つで話を進められます。分類付きなので、こちらも返信テンプレを切り替えやすくなります。
予算・希望時期はオプションにする
これも必須にすると離脱要因です。提供されれば提案が楽になる項目としてオプションで設けるのがバランスよく、提示してくれる人はその時点で本気度が高いと判断できます。
個人情報同意チェックボックスを必須にする
個情ポリシーへの同意チェックボックスは必須にし、リンクで全文を読めるようにします。同意を明示化してもらうと、返信メールで質問を返しやすくなり、商談もスムーズに進みます。
---
送信専用設計とReply-Toの使い方
メール送信の設計は、スパム判定と返信効率に直接関わる重要領域です。
送信元はノーリプライアドレスを使う
個人のGmailを送信元にしていると、個人アドレスがスパムリストに載るリスクや、スパムフォルダ規則が乱れる原因になります。noreply@やcontact@など、独自ドメインのノーリプライアドレスから送るのが標準です。
Reply-Toで個人アドレスに返信誘導
送信元はノーリプライですが、ユーザーが「返信」ボタンを押したときは個人のGmailに届くようにReply-Toヘッダーを付けます。これで「送信専用だが返信は届く」状態を作れます。
SMTPはリレーサービスを使う
レンタルサーバー付属SMTPは、クラウドホスティングからの送信を拒否するものがあります。Resend、SendGrid、Amazon SESなどの送信専用サービスを使うと送信成功率が上がります。本サイトOceansBaseも、本番環境のSMTP送信でレンタルサーバーを使わずResendへ移行して安定稼働できています。
---
自動返信メールのテンプレ
送信完了画面だけではユーザーは安心しません。すぐに返信メールを付けると、それだけで「ちゃんとした事業者」という印象になります。
推奨テンプレ
個人事業主向けの最小限テンプレを示します。件名は「【送信専用】お問い合わせをありがとうございました」とし、本文で「お問い合わせいただいた内容」をそのまま記載します。続けて「2〜3営業日以内に担当よりご返信いたします」と返信期間の目安を示します。休業日や返信が遅い期間も記載しておくとトラブルが減ります。
---
自動返信メールの実装例(Resend + Cloudflare Turnstile)
OceansBase 自身も Next.js + Resend + Cloudflare Turnstile の組み合わせで運用しています。実装の核は、API ルートで Turnstile トークンを検証してから Resend で送信する1ファイルです。最小サンプルを示します。
// app/api/contact/route.ts
import { NextRequest, NextResponse } from 'next/server'
import nodemailer from 'nodemailer'
export async function POST(req: NextRequest) {
const { name, email, message, turnstileToken } = await req.json()
// 1. Cloudflare Turnstile でボット判定
const verify = await fetch('https://challenges.cloudflare.com/turnstile/v0/siteverify', {
method: 'POST',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
body: new URLSearchParams({
secret: process.env.TURNSTILE_SECRET_KEY!,
response: turnstileToken,
}),
}).then(r => r.json())
if (!verify.success) {
return NextResponse.json({ error: 'bot_detected' }, { status: 400 })
}
// 2. Resend SMTP で送信
const transporter = nodemailer.createTransport({
host: 'smtp.resend.com',
port: 465,
secure: true,
auth: { user: 'resend', pass: process.env.RESEND_API_KEY! },
})
await transporter.sendMail({
from: `OceansBase <${process.env.FROM_EMAIL}>`,
to: process.env.NOTIFY_TO!,
replyTo: email,
envelope: { from: process.env.FROM_EMAIL!, to: process.env.NOTIFY_TO! },
subject: `【お問い合わせ】${name} 様`,
text: `差出人: ${name} <${email}>\n\n${message}`,
})
return NextResponse.json({ ok: true })
}ポイントは3つです。第一に、envelope.from に FROM_EMAIL を明示しないと Resend で送信できません。第二に、replyTo に送信者のメールアドレスを入れることで、通知を受け取った側が「返信」を押すだけで送信者に返せます。第三に、Turnstile の検証は SMTP より前に必ず行います。検証後にエラーを投げれば、ボット送信のメールコストがゼロに抑えられます。
rate limit は Vercel Edge Middleware で IP単位の連続送信を制御します。ここまで揃えると、フォーム経由の迷惑送信は実運用ではほぼゼロに収束します。
まとめ:3層防御 × 送信専用設計 × 実装1ファイル
迷惑送信を止めて返信率を上げるフォームは、Cloudflare Turnstile・honeypot・rate limit の3層防御、ノーリプライ送信+Reply-Toの送信専用設計、そして Resend のような送信専用サービスの3点で完成します。実装ファイルは1本で十分。最初の一歩は、自分のフォームのソースコードを開いて「Turnstile が入っているか」を確認することです。
OceansBase では、フォーム周りの設計から Resend / Turnstile / Vercel の実装まで一貫して対応しています。「自分の問い合わせフォームが迷惑送信で埋まっている」「返信率が低い」といった相談は、お問い合わせフォームからお寄せください。
OceansBase
お気軽にご相談ください
OceansBase ではひとり事業者・フリーランス向けに Web 制作・AI 活用支援を行っています。
この記事のテーマで困っている場合はお問い合わせください。