HubSpotとスプレッドシートを連携する方法|自動転記・商談更新・チャネル別分析まで解説
HubSpotとGoogleスプレッドシートを連携すると、リードや商談の情報を自動でスプレッドシートへ蓄積できます。
さらに、商談ステージの変更に合わせて既存データを更新し、蓄積したRawデータを関数で加工すれば、チャネル別のリード数・商談数・受注数・売上・ROIまで管理できます。本記事では、HubSpotからスプレッドシートへ自動連携する方法と、BtoBマーケティングで使いやすいデータ設計を解説します。

HubSpotとスプレッドシートは自動連携できる
HubSpotとGoogleスプレッドシートを使っていると、「HubSpotのデータを毎回スプレッドシートへコピーするのが面倒」と感じることがあります。
HubSpotのワークフローを使えば、HubSpotのコンタクトや取引の情報をGoogleスプレッドシートへ自動で追加・更新できます。
たとえば、次のような運用が可能です。
- 新しいリードが作成されたら、スプレッドシートへ自動追加
- 新しい商談が作成されたら、商談情報を自動追加
- Web広告経由でリードが作成されたら、リードソースを自動判定
- 商談ステージが変更されたら、スプレッドシートの既存データを更新
- 取引金額やクローズ予定日が変更されたら、既存行を更新
ここまでできるようになると、HubSpotを営業・顧客データの管理場所として使いながら、Googleスプレッドシートをマーケティングデータの集計・分析場所として使えるようになります。
単純なデータの転記を自動化するだけではなく、HubSpotに蓄積される営業データをマーケティング分析に活用できるようになるのがポイントです。
HubSpotからスプレッドシートへ自動連携するにはProfessional以上が必要
HubSpotからGoogleスプレッドシートへワークフローで自動連携する場合、ワークフローを利用できるプランが必要です。
すでにMarketing Hub Professionalなどを契約している場合は、そのままワークフローを利用できます。
一方、現在は無料版やStarterを利用していて、スプレッドシートへの自動連携のためにワークフローを使いたい場合は、Sales Hub Professionalを1アカウントだけ契約する方法もあります。
Sales Hub Professionalは月額12,000円から利用できます。
関連記事:【徹底解説】HubSpotの料金体系やプラン、活用方法を詳しく解説!
このため、まだ本格的なBIツールを導入するほどではないスタートアップであれば、ワークフローが使えるプランを1アカウントだけ契約し、HubSpotとスプレッドシートを組み合わせて分析環境を作る方法も選択肢になります。
なお、ここで注意したいのが「HubSpot for Google スプレッドシート」です。
これはGoogleスプレッドシートからHubSpotへデータを取り込んだり、スプレッドシート上からHubSpotのCRMデータを参照したりするための機能です。
つまり、
スプレッドシート → HubSpot
と、
HubSpot → スプレッドシート
は別の仕組みとして考えた方が分かりやすいです。
本記事で扱うのは、主に後者の「HubSpot → Googleスプレッドシートへの自動連携」です。
なお、スプレッドシートからHubSpotへの連携は、HubSpot for Google スプレッドシートを使えば無料で利用できます。
HubSpotとスプレッドシートを連携すると何ができるのか
実際のBtoBマーケティングでは、主に次のような使い方ができます。
新規リードをスプレッドシートへ自動追加する
HubSpotに新しいコンタクトが作成されたことをトリガーにして、リード情報をスプレッドシートへ追加します。
たとえば、次のような項目です。
- コンタクトID
- 会社名
- 氏名
- メールアドレス
- 電話番号
- 役職
- コンタクト作成日
- 担当者
- リードソース
- UTMパラメーター
広告やWebフォームからリードが入るたびに、自動でスプレッドシートに1行追加されるイメージです。
担当者がHubSpotを見ながら別のシートへ転記する必要がなくなるため、営業・マーケティングの集計用データを作りやすくなります。
新規商談をスプレッドシートへ自動追加する
同じように、HubSpotで新しい取引が作成されたことをトリガーに、商談情報をスプレッドシートへ追加できます。
たとえば、
- 取引ID
- 会社名
- 取引名
- 取引担当者
- 商談ステージ
- 取引金額
- 取引作成日
- クローズ予定日
- リードソース
- 失注理由
などです。
ここで重要なのが、取引IDを一緒に持っておくことです。
後から商談ステージや金額が変わったときに、「どの行を更新すればいいのか」を判断するために使います。
会社名を照合キーにすると、同じ会社から複数の商談が発生した場合などに、別の商談を更新してしまう可能性があります。
そのため、HubSpotの取引IDのような一意の値を照合キーとして使う方が管理しやすくなります。
商談ステージ変更時の再登録を有効にする
商談情報をスプレッドシートへ自動連携する場合、特に注意したいのがワークフローの再登録です。
たとえば、
「新規商談が作成されたらスプレッドシートに追加する」
というワークフローを作ったとします。
これだけでは、その後に商談ステージが、
初回商談 → 見積提示 → 決裁者の同意 → 上申の同意 → 受注
と進んでも、スプレッドシート側の情報が自動更新されないことがあります。
そこで、商談ステージなどのプロパティー変更をきっかけに、ワークフローへ再登録されるように設定します。
たとえば、商談ステージが変更されたら、
- 商談ステージ
- 取引金額
- クローズ予定日
- 担当者
- 失注理由
- 受注日
などをスプレッドシートへ再登録します。
このとき、取引IDを照合キーとして設定しておけば、新しい行を追加するのではなく、該当する既存行を更新できます。
ここは実際に設定するときに見落としやすいポイントです。
「新規商談の登録」と「商談情報の更新」は別の話として考えて、後者まで設計しておくと運用しやすくなります。
設定後はテスト用の商談を作成し、商談ステージを変更してみます。
新しい行が追加されるのではなく、同じ取引IDの行が更新されれば、基本的な連携はできています。
リードソースの判定はHubSpot側で行う
リードソースについても、スプレッドシート側で後から分類するより、HubSpot側で判定してからスプレッドシートへ送る方法がおすすめです。
HubSpotには、コンタクトの流入元を確認するためのトラフィックソース関連のプロパティーがあります。
ただし、標準の分類だけでは、自社のマーケティング施策を分析するには少し粗いことがあります。
たとえば、
- Google広告
- Meta広告
- オーガニック
- ウェビナー
- 展示会
- パートナー紹介
- アウトバウンド架電
といった、自社独自の分類で見たいケースです。
そこでHubSpot側に「リードソース」という独自プロパティーを作り、ワークフローで判定します。
たとえば、
「UTMのsourceがgoogle、mediumがcpc」
なら、
「Google広告」
と設定する、といった方法です。
ウェビナー専用のフォームから登録された場合は「ウェビナー」、展示会経由でインポートしたリストなら「展示会」というように、自社のルールで分類できます。
こうしておけば、スプレッドシートには判定済みの「リードソース」が入ってきます。
スプレッドシート側で複雑なIF関数を組んで流入元を判定する必要がありません。
また、初回接点と最新接点を分けて見たい場合は、
- 初回リードソース
- 最新リードソース
の2つを用意する方法もあります。
「最初にどのチャネルから獲得したか」と「直近でどの施策に接触したか」は、マーケティング分析では意味が違うためです。
連携したRawデータをもとにチャネル別の数字を見る
ここまで設定すると、スプレッドシートにHubSpotのデータが自動で蓄積されていきます。
ただし、HubSpotとスプレッドシートを連携する目的は、単にデータをコピーすることではありません。
私たちがおすすめしているのは、HubSpotから連携したRawデータをもとに、スプレッドシート側でチャネル別の数字を集計する方法です。
イメージとしては、
HubSpot
↓
Rawデータ
↓
関数・ピボットテーブルなどで集計
↓
チャネル別ダッシュボード
という構成です。
実際には、次のような形で「新規リード→商談→受注→売上」までチャネル別に並べて管理できます。

このようにしておくと、単純に「Google広告から何件リードが来たか」だけではなく、「そのリードがどれだけ商談になり、最終的にどれだけ売上につながったのか」まで一つの表で確認できます。
たとえば、
- 新規リード獲得数
- リード獲得単価
- 商談数
- 商談化率
- 受注数
- 受注率
- 売上
- コスト
- ROI
などをチャネル別に比較できます。
HubSpotから連携したRawデータに対してスプレッドシートの関数を組むことで、自社が見たい指標に合わせたダッシュボードを作れるわけです。
Rawデータと集計用シートは分ける
この運用をする場合、意外と重要なのがRawデータを直接加工しないことです。
たとえば、Rawデータには、
- コンタクトID
- 会社名
- リードソース
- 作成日
- 取引ID
- 商談ステージ
- 取引金額
- 受注日
- 担当者
などを、HubSpotから受け取った状態で保存します。
そして、別のシートで、
- リード数
- 商談数
- 受注数
- 商談化率
- 受注率
- 売上
- 広告費
- ROI
などを計算します。
構成としては、
Rawデータシート
→ HubSpotから自動更新
集計シート
→ COUNTIFS、SUMIFS、QUERY、FILTER、ピボットテーブルなどで加工
ダッシュボード
→ チャネル別・月別・担当者別などで可視化
という形です。
Rawデータを残しておけば、後から「リードソース別ではなく担当者別に見たい」「今月だけではなく四半期で比較したい」となった場合も、集計側の関数を変更するだけで対応できます。
また、Rawデータを直接編集しないようにしておくと、HubSpotからの自動更新によって集計用のデータが壊れてしまうリスクも抑えられます。
チャネル別に「リード→商談→受注」まで追える
この仕組みのメリットは、リード数だけでなく、マーケティング施策の先まで追えることです。
たとえば、
商談化率 = 商談数 ÷ リード数
受注率 = 受注数 ÷ 商談数
リード獲得単価 = 広告費 ÷ 新規リード数
受注単価 = 売上 ÷ 受注数
といった指標を作れます。
ここで重要なのは、計算式そのものよりも、何を分母・分子にするかをあらかじめ決めておくことです。
たとえば「商談化率」といっても、
- すべてのリードを分母にする
- 有効リードだけを分母にする
- 営業が接触できたリードだけを分母にする
では、数字が変わります。
そのため、スプレッドシートを作る前に、
- 何をリードとするか
- 何を有効リードとするか
- どのステージを商談化とするか
- 何を受注とするか
- リードソースは初回と最新のどちらで見るか
を決めておくと、ダッシュボードの数字がぶれにくくなります。
この定義をHubSpot側のプロパティーや商談ステージと合わせておくと、HubSpotとスプレッドシートの数字を同じ基準で管理できます。
HubSpotだけで管理するのではダメなのか
ここまで読むと、「それなら最初からHubSpotのダッシュボードで管理すればいいのでは?」と思うかもしれません。
もちろん、HubSpotのレポート機能で十分なケースもあります。
現在の商談数や担当者別のパイプラインなど、HubSpot内にあるデータだけを確認するのであれば、HubSpot上で完結させる方がシンプルです。
一方で、マーケティングではHubSpotの外にあるデータも一緒に見たいことがあります。
たとえば、
広告費 + リード数 + 商談数 + 受注数 + 売上
をチャネル別に並べたいケースです。
広告費はGoogle広告やMeta広告などの媒体側にあり、リード・商談・受注はHubSpotにあります。
これらをスプレッドシートに集めれば、
「Google広告はリード獲得単価が高いが、商談化率も高い」
「オーガニックはリード数が多いが、商談化率が低い」
「広告費を増やすなら、どのチャネルに予算を寄せるべきか」
といった分析がしやすくなります。
つまり、
HubSpot=顧客・商談データの管理
スプレッドシート=マーケティングデータの加工・分析
という役割分担です。
特に、まだBIツールを導入するほどではないスタートアップであれば、追加の分析ツールを導入せず、自社の営業プロセスに合わせたダッシュボードを作れるのは大きなメリットです。
スプレッドシート連携で気をつけたい3つのポイント
1.Rawデータを直接編集しない
HubSpotから自動連携するシートは、基本的にRawデータの保存場所として扱います。
担当者が直接データを編集したり、行を削除したりすると、次回の更新時に意図しない結果になる可能性があります。
集計や加工は別シートで行う方が管理しやすくなります。
2.同じシートを複数のワークフローから更新しない
複数のワークフローから同じシートへデータを送ると、重複や意図しない更新が起こる可能性があります。
たとえば、
- リードRawデータ
- 商談Rawデータ
をそれぞれ別シートに分けます。
同じ商談一覧を更新する場合は、取引IDを照合キーとして利用し、新規の場合は行を作成、既存の場合は行を更新する形にすると管理しやすくなります。
3.最初からすべてのデータを連携しない
HubSpotには非常に多くのプロパティーがあります。
だからといって、すべてをスプレッドシートへ送る必要はありません。
最初は、
- ID
- 作成日
- リードソース
- 担当者
- 商談ステージ
- 取引金額
- クローズ予定日
- 受注日
など、実際に分析で使う項目に絞る方が管理しやすいです。
まず必要なデータだけで運用を始め、必要になった段階で項目を追加するくらいがちょうどよいと思います。
よくある質問
HubSpotの無料版でもスプレッドシートへ自動連携できますか?
HubSpotからGoogleスプレッドシートへワークフローで自動転記する場合、ワークフローを利用できるProfessional以上のプランが必要です。
一方、GoogleスプレッドシートからHubSpotへデータを取り込む「HubSpot for Google スプレッドシート」は無料で利用できます。
スプレッドシートの既存行を自動更新できますか?
できます。
取引IDなどの固有IDを照合キーとして設定し、商談ステージや取引金額などの既存データを更新できます。
商談ステージを変更してもスプレッドシートが更新されません
ワークフローの再登録設定を確認してみてください。
商談ステージの変更をきっかけにワークフローが再実行されるよう設定し、同じ取引IDの行を更新するようにします。
HubSpotとスプレッドシートを完全に双方向同期できますか?
本記事で紹介している方法は、主にHubSpotからGoogleスプレッドシートへの自動連携です。
スプレッドシートからHubSpotへのデータ取り込みは「HubSpot for Google スプレッドシート」など別の機能を使います。
そのため、HubSpotとスプレッドシートが常に完全に同じ状態になる「双方向同期」とは分けて考えた方がよいでしょう。
会社名を照合キーにしても大丈夫ですか?
会社名よりも、HubSpotの取引IDやコンタクトIDなど、一意に識別できる値を使う方がおすすめです。
同じ会社から複数の商談が発生するケースや、会社名が変更されるケースにも対応しやすくなります。
まとめ
HubSpotとGoogleスプレッドシートを連携すると、単にデータをコピーするだけではなく、HubSpotを起点としたマーケティングデータ基盤を比較的シンプルに作ることができます。
基本的な構成は、
HubSpot
↓
Rawデータ
↓
関数・ピボットテーブル
↓
チャネル別ダッシュボード
です。
そのうえで、
- 新規リードを自動追加する
- 新規商談を自動追加する
- リードソースはHubSpot側で判定する
- 商談ステージ変更時の再登録を有効にする
- 取引IDを使って既存行を更新する
- Rawデータと集計シートを分ける
という設計にしておくと、運用しやすくなります。
最終的には、チャネル別に「リード→商談→受注→売上」まで追えるようになります。
HubSpotの中だけで完結させるのではなく、
HubSpotを営業・顧客データの管理場所
スプレッドシートをマーケティングデータの加工・分析場所
として使い分ける方法です。
まだBIツールを導入するほどではないスタートアップや中小企業であれば、このくらいの構成から始めてみるのもおすすめです。
関連記事:【HubSpot】Marketing Hub(マーケティングハブ)とは?他のHubとの違いを解説
WRITTEN BY
代表取締役
一橋大学商学部を卒業後、ENEOS株式会社に新卒入社。その後、日本最大級の屋内型エンターテインメント施設 「アートアクアリウム美術館」の立ち上げに新規事業責任者として参画。2021年よりベンチャー支援のSOICO株式会社にて マーケティング・インサイドセールス責任者を務め、PHC株式会社ではAPACの海外BtoBマーケティング立ち上げに従事。 2023年5月、株式会社LEAD FACTORY.を創業。BtoBマーケティング・インサイドセールスの実務知見をもとに、 スタートアップから大企業まで幅広い規模の事業成長を支援している。
【 展開しているサービス一覧 】
BtoBマーケティング