HubSpotのコンタクトにLinkedinとXのアクティビティを記録する方法

AE(アカウントエグゼクティブ)が契約更新コールの10分前にHubSpotのコンタクトを開きます。レコードには直近のメール、最後のミーティング、そして3週間動いていないディールステージが表示されています。しかしそこに表示されていないのは、購入担当者が昨日Linkedinで来年に向けてツールスタックを削減することについて投稿したという事実です。AEはそのことをコール中に知ることになりますが、それは最悪のタイミングです。

このような情報の断絶はよくあることです。多くのチームはCRMでメールやミーティングを追跡する一方で、ソーシャルメディア上のアクティビティは誰かのタイムラインや、誰も遡って読まないSlackチャンネルに放置されています。シグナルは確かに存在しているのに、商談の準備をする場所から遠く離れた場所に埋もれてしまっているのです。

私は匿名でLinkedinとXのアクティビティを追跡できるウォッチリスト「MultiFollow」の開発に携わっています。この記事では、Zapierやn8nを使ってMultiFollowのアラートをHubSpotに送信し、見込み顧客の投稿やコメントをコンタクトレコードにメモやタスクとして記録する方法を紹介します。

なぜHubSpot単体ではこれを把握できないのか

HubSpotは返信、予約されたミーティング、通話など、自社とコンタクトとの間で起きたやり取りを記録します。しかし、その人物のLinkedinやXのアカウントとレコードを結びつけるものがないため、その人物が公開の場で何を発言しているかまでは把握できません。

また、MultiFollowはHubSpotのネイティブアプリを提供しているわけでもありません。当社が提供しているのはAPIウェブフックです。追跡中のアカウントが投稿、コメント、または「いいね!」(いいね!はLinkedinのみ)をするたびに、指定されたURLへ軽量なJSONメッセージを送信します。Zapierとn8nはどちらもそのメッセージを受信してHubSpotのアクションに変換できるため、このウェブフックが連携の架け橋となります。

こちらはLinkedinの投稿に関するメッセージの例です。詳細は当社の APIウェブフックページをご覧ください。

{
  "platform": "linkedin",
  "profile_url": "https://www.linkedin.com/in/erikatrautman/",
  "query": "URL: https://www.linkedin.com/in/erikatrautman/. Track posts. Track comments. Track likes.",
  "datetime": "2025-01-19T05:52:00Z",
  "link": "https://www.linkedin.com/posts/erikatrautman_vice-president-strategy-and-business-operations-activity-7272270503808000000-OxBb",
  "content": "I've got two more great leadership positions I'm filling! I am so inspired by the vision and the culture here at Sprout. So come join me to transform how companies leverage social media to connect with their customers.",
  "activity_type": "post"
}

重要な役割を果たすフィールドは profile_urlです。これはアラートを特定の人物に結びつける唯一の要素であるため、設定全体の鍵は、まったく同じURLを持つHubSpotコンタクトを見つけ出すことにあります。

まずURLの一致条件を正確に整える

郵便物の仕分け係が住所ラベルを読み取る場面を思い浮かべてみてください。ラベルに「12 Main St」、郵便受けに「12 Main Street」と書かれていれば、手紙は仕分け箱に残されたままになります。HubSpotのプロパティ値に対する検索もこれとまったく同じ仕組みなので、 https://www.linkedin.com/in/jane-doe/ および linkedin.com/in/jane-doe は一致しません。

HubSpotにはすでに「Linkedin URL」というデフォルトのコンタクトプロパティが用意されています。追跡したいコンタクトにこれを入力し、トラッカー作成時とまったく同じ形式を使用してください。MultiFollowのトラッカーはLinkedinの個人プロファイルを https://www.linkedin.com/in/{username}/の形式で受け付けるため、末尾のスラッシュを含めてその形式で保存することをお勧めします。

HubSpotにはXプロファイル用のデフォルトプロパティがないため、Xの場合は少し準備が必要です。「X profile URL」などのカスタムコンタクトプロパティを作成し、そこに https://x.com/{username}(MultiFollowのXトラッカーが使用する形式)を入力します。

HubSpotのエクスポートデータからウォッチリストを作成する場合は、両方の作業を一度に進めることができます。Linkedin URLの列を含めてコンタクトをエクスポートし、スプレッドシート上でURLを整理・整形した上でHubSpotに再インポートし、同じファイルをMultiFollowにも読み込みます。MultiFollow側の手順については、こちらの CSV一括インポートガイド で詳しく解説しています。

Zapierでの設定手順

URLの形式が揃ったら、Zap自体は4つのステップで構成されます。

1. ウェブフックを受信する(Catch Hook)

トリガーとして「Webhooks by Zapier」を選択し、「Catch Hook」を指定してZapを作成します。ZapierからURLが発行されます。MultiFollowで、HubSpotに連携したいトラッカーの「API webhook URL」欄にそのURLを貼り付けます。アカウント全体に設定することも可能ですが、トラッカーごとにURLを設定すれば、競合他社のトラッカーをCRMから除外しつつ見込み顧客のみを取り込むことができます。その後テストをトリガーし、Zapierが実際のペイロードを受信できることを確認します。

2. コンタクトを検索する(Find Contact)

「Find Contact」アクションを含むHubSpotステップを追加します。Linkedinのアラートの場合はLinkedin URLプロパティ、Xのアラートの場合はカスタムのXプロパティで検索を行い、検索値に profile_url をマッピングします。両方のネットワークを追跡している場合は、 platform に基づいたPathsステップを使用することで、2つの検索処理を明確に分離できます。

コンタクトが見つからない場合はステップを停止するように設定してください。そうしないと、URLの入力ミスが1件あるだけでZapのエラーが連続発生し、金曜日の貴重な時間をエラーメールの確認に追われることになります。

3. タスク化すべきアクションを判断する

すべてのアラートで担当営業に通知を送る必要はありません。ここではFilterステップが効果的です。コメントや投稿は通過させ、「いいね!」はアクションを起こすためのテキストが含まれないため除外することをお勧めします。より厳密に絞り込みたい場合は、トラッカー自体に包含キーワード(価格、採用、競合他社名など)を設定し、関連する投稿のみがZapierに届くようにします。当社の キーワードフィルターガイド では、包含リストと除外リストの組み合わせ方について解説しています。

4. エンゲージメントを作成する(Create Engagement)

最後にHubSpotの「Create Engagement」アクションを使用し、ステップ2で取得したコンタクトIDに関連付けます。継続的なログを残すにはメモが適しています。コンタクトの担当者に今日中に何らかのアクションを取らせたい場合はタスクが適しています。レコード上には以下のように見やすく表示されます:

New Linkedin post (via MultiFollow)
"I've got two more great leadership positions I'm filling!..."
https://www.linkedin.com/posts/erikatrautman_vice-president-strategy-...

ここで気に入っている細かなポイントがあります。HubSpotの公式ドキュメントによると、メモや完了したタスクは「最終アクティビティ日(Last activity date)」にはカウントされますが、「コンタクト回数(Number of times contacted)」にはカウントされません。そのため、見込み顧客の投稿を記録しても、実際のアウトリーチ活動の件数が見かけ倒しに水増しされることはありません。

n8nでの同様のフロー構築

セルフホストを好む場合、n8nでも同様の構成で構築できます。まずPOSTに設定したWebhookノードから開始し、その本番用URLをMultiFollowに貼り付けます。次にContactリソースとSearch操作を指定したHubSpotノードを追加し、Linkedin URLプロパティでフィルタリングします。続いてIFノードを activity_type に配置し、最後にEngagementリソースとCreate操作を使用してタスクを作成するHubSpotノードで処理を完了します。

ここでn8nには1つの大きな強みがあります。検索を行う前に式を使って profile_url を整形(小文字化や末尾のスラッシュ追加など)できるため、Zapierでは完全一致に失敗してしまうような多少のデータの乱れも吸収できます。ウェブフックの連携設定をこれまで行ったことがない場合は、当社の Zapierおよびn8nルーティングガイド で一般的なセットアップ方法をご確認いただけます。

本番導入の前に確認すべきこと

営業チームにこの仕組みを約束する前に、いくつか把握しておくべき点があります。これはすでにウォッチリストに登録されており、かつHubSpotにすでに存在する人物に対してのみ機能します。面識のない人物から新規コンタクトを自動作成するわけではありませんが、CRMが無用なノイズで溢れ返るのを防ぐためにもその状態を維持することをお勧めします。また、転職や役職変更を検知するものではないため、そうした用途には既存のエンリッチメントツールを引き続き使用してください。さらに、Linkedinの会社ページから送信されるのは投稿のみであるため、会社のトラッカーでは会社レコードにお知らせを記録することはできますが、コメントや「いいね!」は記録されません。

プラン選びも重要です。APIウェブフックはBusinessプラン以上で利用可能なため、このセットアップにはBusinessプランが必須となります。以下は2026年10月時点での料金ページに記載されているプラン制限です。

プラン 料金 Linkedinプロファイル数 Xプロファイル数 APIウェブフックおよびSlack
Free $0 1 2 非対応
Essential $19/月 5 10 非対応
Business $79/月 25 50 はい
Enterprise $199/月 100 200 はい

Businessプランは、進行中の上位5件の商談における購買委員会など、重点を絞ったリストをカバーします。担当する全顧客アカウントのキーマン(チャンピオン)をHubSpotで網羅したい場合は、100件のLinkedinプロファイルを追跡できるEnterpriseプランがより現実的な選択肢となります。

まずは1人のコンタクトで試してみる

Zapを構築する前に、まず見込み顧客1名のLinkedinプロファイルを MultiFollow無料プラン(クレジットカード不要、1件のLinkedinと2件のXプロファイルをメール通知で追跡可能)に追加してみてください。もしその人物の投稿を把握できていれば先月の商談の進め方が変わっていたと感じられるなら、HubSpotに連携する明確な理由になります。

Julien(MultiFollow プロダクトマネージャー)