Googleフォームの回答をNotionデータベースに自動登録する方法【30分で出来る】

Googleフォームの回答をNotionデータベースに自動登録する方法【30分で出来る】

1. この記事でできること

このガイドでは「Googleフォームに回答が届いたら、Notionのデータベースへ自動で追加する」仕組みを作ります。無料で使える範囲を中心に進めるので、初めての方でも30分ほどで試せます。設定が終われば、フォームの回答をNotionへ手入力する必要はありません。回答内容がそのままNotionに入り、一覧表示や検索、フィルタも使えるようになります。

難しい仕組みはできるだけ省きます。「必要なアカウントを用意する → フォームとデータベースを作る → Zapierでつなぐ → 動作を確認する」という順番で進めます。途中で設定を間違えてもやり直せるので、まずは手順どおりに進めてみてください。

2. 今回作る自動化の仕組みの全体像

今回の仕組みはそれほど複雑ではありません。Googleフォームに届いた回答は自動でGoogleスプレッドシートに記録されます。Zapierが新しい行を見つけたら、その内容をNotionのデータベースへ送ります。

  • Googleフォーム → 回答を受け取る入口
  • Googleシート → フォームの回答が保存される場所
  • Zapier(無料プランあり) → 新しい回答を見つけてNotionへ送る
  • Notionデータベース → 回答をまとめて管理する場所

Googleシートを間に入れるのは、Googleフォームの回答を自動で記録できるうえに、Zapierからも「新しい行」という分かりやすい形で扱えるからです。最初に作る自動化としても扱いやすい構成です。

3. 事前に必要なアカウント・準備物

まずは必要なものを確認しておきましょう。GoogleフォームとNotionは無料プランで利用できます。Zapierも無料プランがあるので、今回のシンプルな構成なら無料で試せます。Zapierの無料プランは月100タスクまで利用でき、1つのZapはトリガーとアクションの2ステップ構成に対応しています。ポーリング型のトリガーは15分間隔で確認されます。

ツール / アカウント 今回やること(登録・作成・取得) 補足
Googleアカウント Googleフォームを1つ作成し、Googleシートに回答をリンク フォームの回答が自動でシートに追加されます
Notionアカウント データベースを1つ作成(タイトル、名前、メール、相談内容などのプロパティ) Zapierから対象データベースへアクセスできるように設定します
Zapierアカウント GoogleシートとNotionを接続し、1つのZap(ワークフロー)を作成 無料プランでOK/クレカ不要/15分間隔のポーリングに対応

用意するのはPCまたはMacとブラウザくらいです。安定したネット環境があれば問題ありません。作業時間は30分ほどを見ておけば十分です。

4. 必要なツール、アカウントの設定

Step 1. Notionで受け皿のデータベースを作る

先にNotionの受け皿を作っておきます。これができていると、あとでZapierの項目を設定しやすくなります。Notionで新しいページを作り、データベースをテーブル形式で用意しましょう。以下のようなプロパティを作っておけば十分です。

  • タイトル(Title)…必須。ここでは「件名」など分かりやすい名前に変更してOK
  • 名前(テキスト)
  • メール(Email)
  • 相談内容(リッチテキスト)
  • 受付日時(日時/自動化で入れてもOK)

ここで作った項目にGoogleフォームの回答を入れていきます。あとから項目を増やすこともできますが、最初は必要なものだけにしておくと設定が楽です。

Step 2. NotionにZapierの接続を許可する

次にZapierからNotionのデータベースへアクセスできるようにします。現在のZapierでは、Zapier側の「Apps」からNotionの接続を追加し、Notionへのアクセスを許可する流れが基本です。接続後に新しく作ったデータベースを使う場合は、そのページやデータベースへのアクセスも許可してください。

ここを忘れると、Zapierで目的のデータベースが表示されないことがあります。データベースが見つからないときは、まずNotion側のアクセス権を確認しましょう。

Step 3. Googleフォームを作り、Googleシートにリンクする

Googleフォームで新しいフォームを作成し、質問を3つ用意します。ここでは「名前」「メールアドレス」「相談内容」の3項目にしておきましょう。質問形式は名前とメールアドレスを記述式、相談内容を段落にします。

フォームの「回答」タブから「スプレッドシートにリンク」を選び、新しいシートを作成します。これでフォームに回答が届くたびにGoogleシートへ新しい行が追加されます。

シートを開いたら、1行目が質問名などの見出しになっていることも確認してください。Zapierはこの見出しを使って各列を識別します。Google Sheetsの「New Spreadsheet Row」トリガーでは新しく追加された行を取得できます。 

Step 4. Zapierの無料アカウントを作る

Zapierにアクセスして無料アカウントを作成します。Googleアカウントを使って登録することもできます。今回の構成ならクレジットカードを登録する必要はありません。

無料プランでは月100タスクまで利用でき、1つのZapにトリガー1つとアクション1つを設定できます。今回の「Googleシートの新しい行 → Notionに追加」という構成なら、この範囲に収まります。

5. 自動化ツールの設定

Step 1. トリガー(Googleシート:新しい行)を作る

Zapierで新しいZapを作成し、トリガーにGoogle Sheetsを選びます。Trigger Eventは「New Spreadsheet Row(新しい行)」を選択してください。フォームから新しい回答が届くとシートに行が追加されるので、そのタイミングを自動化のきっかけにします。


Googleアカウントを接続したら、対象のスプレッドシートとワークシートを選びます。そのあと「Test trigger」を実行し、サンプルの行が取得できるか確認しましょう。まだ回答がない場合は、先にフォームからテスト送信しておくとスムーズです。Zapierではテスト用のデータを取得して、後続の設定に利用できます。 

Step 2. アクション(Notion:データベースにアイテム作成)を作る

次にアクションでNotionを選び、データベースに新しいアイテムを作成するイベントを選択します。表示される項目名はZapierの画面更新によって多少異なる場合がありますが、Action eventに「Create Data Source Item」などの新規作成用のアクションを選べばOKです。

Notionのアカウントを接続したら、先ほど作ったデータベースを指定します。データベースが表示されない場合は、Notion側でZapierに対象ページへのアクセス権があるか確認してください。接続を作り直す場合はZapier側のアプリ接続から再認証できます。

次にGoogleシートの項目をNotionのプロパティへ割り当てます。最低限「タイトル(Title)」には何かしらの値を入れてください。たとえば次のように設定します。

  • タイトル(Title)→ シートの「相談内容」や「名前」など
  • 名前(テキスト)→ シートの「名前」
  • メール(Email)→ シートの「メールアドレス」
  • 相談内容(リッチテキスト)→ シートの「相談内容」
  • 受付日時(日時)→ シートのタイムスタンプなど

「Test action」を実行すると、テストデータを使ってNotionにアイテムが作成されます。Notionを開いて、内容が正しく入っているか確認しましょう。項目がずれている場合は、マッピングを戻して修正すればOKです。
今回のテストでは「件名」に行数を入れてIDを振るようにしてみました。

Step 3. Zapを公開(ON)にする

テストが終わったらZapを公開してONにします。これで新しいフォーム回答が届いたときに自動で処理されます。

無料プランのポーリング型トリガーは15分間隔で確認されるため、フォーム送信からNotionへの反映まで時間がかかることがあります。すぐに反映されなくても故障とは限りません。

6. 動作確認(実際の質問例)

ここでは実際にフォームを送信して確認してみます。テスト用として次のような内容を入力してください。

  • 名前:田中 太郎
  • メールアドレス:taro@example.com
  • 相談内容:見積り依頼。AプランとBプランの違いを教えてください。

フォームを送信したらGoogleシートを開き、新しい行が追加されているか確認します。ここまで問題なければ、フォームからシートへの連携は成功です。

次にZapierの「Test trigger」で回答データを取得し、「Test action」でNotionへの登録を確認します。ZapをONにしたあとは自動実行を待ち、Notionのデータベースに新しいアイテムが追加されるか確認してください。

すぐに反映されない場合は15分ほど待ってみましょう。無料プランのポーリング型トリガーでは一定間隔で新しいデータを確認するためです。 

7. うまく動かないときのチェックポイント

  • NotionのデータベースがZapierから見えない → Notion側でZapierに対象ページやデータベースへのアクセス権があるか確認します。ZapierのNotion接続を作り直す方法もあります。
  • Notionのタイトル(Title)が未設定 → タイトルは必須です。ZapierでGoogleシートの項目をタイトルに割り当ててください。
  • Googleフォームとシートが未リンク → フォームの「回答」タブからスプレッドシートとの連携を確認します。
  • シートの1行目がおかしい → 1行目は見出しとして使います。空白や同じ名前の見出しがある場合は整理してください。
  • テストで行が取得できない → フォームからテスト回答を1件送信してから「Test trigger」を実行します。
  • 文字化け・改行崩れ → Notion側のプロパティの種類を確認します。テキストとメールなどを取り違えていないか見直してください。
  • 重複登録が起きる → 同じデータを何度もテストすると重複することがあります。ZapierはZapごとに重複を防ぐ仕組みがありますが、アクション側の仕様によっては同じデータが作成される場合もあります。 
  • 反映が遅い → 無料プランのポーリング型トリガーは15分間隔です。すぐに反映されなくても少し待って確認してください。
  • 権限エラー → GoogleやNotionの組織アカウントでは外部サービスの利用が制限されている場合があります。管理者側の設定も確認してください。

原因が分からないときは「フォーム → シート → Zapierのトリガー → Notionのアクション」の順番で確認していくと切り分けやすくなります。どこまで動いているかが分かれば、修正する場所も絞れます。

8. 次にできる改善アイデア

  • 担当者への通知を追加 … Notionへの登録後にSlackやメールへ通知すれば、次に対応する人へすぐ知らせられます。
  • フォームの選択肢とNotionのセレクトを合わせる … フォームとNotionで同じ選択肢を使えば、あとから集計しやすくなります。
  • 受付番号を付ける … 日付や連番を組み合わせて受付番号を作れば、問い合わせを管理しやすくなります。
  • 緊急度を管理する … フォームに「高・中・低」などの項目を追加し、Notion側のプロパティへそのまま登録できます。
  • 処理間隔を短くする … より早い反映が必要になったら、有料プランや別の自動化サービスを検討しましょう。
  • 個人情報の扱いを見直す … メールアドレスなどを扱う場合は、GoogleやNotionの共有設定を必要最小限にします。社内で使う場合はアクセスできる人も確認しておきましょう。

まずは今回の構成でフォームからNotionまで自動で流れる状態を作ってみてください。実際に使い始めると「この項目も欲しい」「この人にも通知したい」といった改善点が見えてきます。必要になったところから少しずつ追加していけば十分です。

補足:料金と前提のまとめ

  • 料金… GoogleフォームとNotionは無料プランで利用できます。Zapierにも無料プランがあり、月100タスクまで利用できます。今回のようなトリガー1つ+アクション1つの2ステップZapにも対応しています。 
  • クレカ登録… 今回の構成ではZapierの無料利用にクレジットカードは必要ありません。
  • 作業時間… 目安は30分ほど。アカウントをすでに持っていればさらに短く終わることもあります。
  • 実行間隔… 無料プランのポーリング型トリガーは15分間隔です。フォーム送信直後にNotionへ反映される仕組みではない点に注意してください。 
  • セキュリティ… 会社のアカウントを使う場合は外部サービスの利用制限を確認しましょう。個人情報を扱う場合は共有範囲も必要最小限にしておくと安心です。

ここまで設定できれば、Googleフォームに届いた回答がGoogleシートを経由してNotionへ自動で登録される状態になっています。手作業での転記がなくなるだけでも、日々のちょっとした手間をかなり減らせます。まずは身近なフォームから試してみてください。