Contents
Intercom の基本概要と提供されているボット種別の比較
Intercom はウェブ・モバイル向けに設計された顧客コミュニケーションプラットフォームで、チャット・メール・アプリ内メッセージを一元管理できます。
この章では、Intercom が提供する主要なボット(Custom Bot / Operator / Resolution Bot)の特徴と利用シーンを俯瞰し、導入判断に必要な比較ポイントを整理します。
Custom Bot と Operator の違い
Custom Bot と Operator は「ノーコードで構築できるか」「高度なロジックが書けるか」という観点で対照的です。以下の表はそれぞれの強みと適用例をまとめたものです。
- 結論(ポイント):シンプルなフローは UI ベースの Custom Bot、属性・外部サービス連携が必須になる複雑シナリオは JSON 定義が可能な Operator が向いています。
| 項目 | Custom Bot | Operator |
|---|---|---|
| 開発方式 | ビジュアルエディタでドラッグ&ドロップ(ノーコード) | JSON フロー定義+API 呼び出し(スクリプトベース) |
| 対象ユーザー | 非エンジニア、マーケティング担当者 | エンジニア、プロダクトチーム |
| 実装難易度 | ★☆☆☆☆(簡単) | ★★★★☆(中~上級) |
| 主な活用例 | FAQ 案内・オンボーディング・簡易問い合わせ窓口 | プラン別オファー配信、外部 CRM 連携、条件分岐が多い自動応答 |
| プレビュー機能 | リアルタイムで対話シミュレーション可能 | 「Preview」タブで属性を設定しテスト |
具体的な利用イメージ
- Custom Bot が適しているケース
- 「よくある質問」だけを一覧で提示したい。
-
新規ユーザー向けに製品紹介とチュートリアルリンクを順番に送るだけのシンプルフロー。
-
Operator が有効なケース
- ユーザー属性(プラン種別・タグ)に応じて異なる URL やキャンペーン情報を自動配信したい。
- 外部 API(例:支払いステータス取得)と連携し、結果に基づく分岐ロジックが必要な場合。
Resolution Bot など他ボットの特徴
Resolution Bot は AI を活用した自動解決エンジンです。以下の表で主要ボット種別を比較し、導入時の選択指標を示します。
| ボット種別 | 主な用途 | 実装ハンドリング | 特徴 |
|---|---|---|---|
| Custom Bot | FAQ・オンボーディング | ビジュアルフローエディタ | ノーコード、即時プレビュー |
| Operator | 条件分岐が多い自動応答 | JSON フロースクリプト + API | 高度な属性判定、外部連携 |
| Resolution Bot | 完全自動解決(AI) | 訓練済み NLP モデル+ナレッジベース | 自然言語解析で質問意図を推測、最適回答提示 |
| Live Chat (ヒューマン) | 人的サポート | オペレーターが直接応答 | ボットと併用したハイブリッド対応 |
選定フローの提案
- 業務の自動化度合いを評価し、まずは Custom Bot で「低~中」レベルのシナリオを構築。
- 条件分岐や外部 API が必要になったら Operator に切り替える。
- 完全自動解決が求められる大量問い合わせや多言語対応が必須の場合は Resolution Bot を検討する。
ボット作成前の要件定義・ペルソナ設定・シナリオ設計
ボット開発は「誰に何を提供するか」を明確にしないと、ユーザー体験が低下します。この章では、要件定義からシナリオ設計までの具体的なチェックポイントを示します。
対象ユーザー(ペルソナ)の具体例
ペルソナは「利用頻度」「課題感」「期待価値」の3軸で分類すると、設計時にブレが少なくなります。以下は典型的な SaaS 企業向けの例です。
| ペルソナ | 主な属性 | 想定される質問 |
|---|---|---|
| 新規 SaaS ユーザー | プロダクト導入1週間以内、無料プラン利用者 | 「機能の使い方は?」・「料金プランを教えて」 |
| ミドルプラン顧客 | 月間利用回数10回以上、課金中 | 「請求書の再送方法」「追加ユーザーの招待手順」 |
| エンタープライズ管理者 | 従業員500人超、カスタム契約 | 「API 制限は?」・「SAML 設定手順」 |
ペルソナ設計時のポイント
- 各ペルソナに対して 最低 1 つ以上のゴール(例:プラン変更) と 成功基準(KPI) を設定する。
- トーンやメッセージの長さはペルソナごとに調整し、プロフェッショナル向けには簡潔かつ技術的な表現を選ぶ。
ユースケース別シナリオ設計ポイント
ユースケースごとの必須ステップと注意点を一覧化し、無駄なループや抜け漏れを防ぎます。
| ユースケース | 必須ステップ | 注意点 |
|---|---|---|
| 問い合わせ窓口 | ① 挨拶 → ② カテゴリ選択 → ③ 詳細質問 → ④ 解決提案 | 「戻る」ボタンは最大1回に制限し、無限ループを防止 |
| オンボーディング | ① 製品概要 → ② 初期設定ガイド → ③ チュートリアルリンク提供 | ユーザー属性(プラン)で表示内容を分岐させる |
| FAQ 自動化 | ① キーワード抽出 → ② ナレッジベース検索 → ③ 回答提示 | 検索結果が0件の場合は人間オペレーターへエスカレーション |
シナリオ作成の実務フロー
- 要件シートに「対象ペルソナ」「主要ユースケース」「成功条件(KPI)」を記入。
- ステークホルダーと合意したら、各ユースケースごとにフローチャートを描く(例:Lucidchart)。
- フローをもとに Custom Bot のノード配置、または Operator 用 JSON 定義を作成し、プレビューで検証する。
Intercom カスタムボットビルダーでの UI 操作手順
Custom Bot は直感的な UI で対話フローを構築できます。この章では画面構成と基本操作手順をステップ別に解説します。
フロー作成の基本ステップ
以下は新規ボットを作成する際の標準的な流れです。各ステップごとに注意すべきポイントも併記しています。
- ボット作成ページへ遷移
- 管理画面左メニュー → 「Automation」→「Custom Bot」→「New bot」。
- テンプレート選択または空白から開始
- 初心者向けは「FAQ 受付」テンプレート、上級者は「Start with a blank flow」。
- ノード(ブロック)をドラッグ&ドロップ
- 基本ブロックは Message / Quick reply / User input / Action の4種類。
- 各ノードにコンテンツ設定
- テキストエディタで本文入力、変数は
{{user.name}}形式で埋め込めます。 - 条件分岐を追加
- 「Action」ブロックの「If/Else」で属性・タグ判定が可能です。
ポイント:プレビュー機能でリアルタイムに動作確認できるため、保存前に必ず 2 回以上テストしてください。
メッセージテンプレートと変数埋め込み例
- 基本テンプレート(挨拶+属性表示)
|
1 2 3 4 |
こんにちは {{user.first_name}} さん👋 ご利用中のプランは {{user.custom_attributes.plan}} です。 以下からお困りごとを選んでください。 |
- クイックリプライ設定(ラベルとアクションの紐付け)
| ラベル | 送信アクション |
|---|---|
| 「料金プランを見る」 | URL: https://example.com/pricing |
| 「サポートへ問い合わせ」 | Action → Open conversation with live agent |
- ユーザー入力ブロック(テキスト)
|
1 2 3 4 5 6 7 |
{ "type": "user_input", "label": "お問い合わせ内容を教えてください", "required": true, "validation": { "max_length": 500 } } |
実装上のベストプラクティス
- 変数は必ずサニタイズし、個人情報(メールアドレス等)は埋め込まない。
- メッセージ長は 200 文字以内に抑えるとモバイル表示が崩れにくい。
- プレビューは異なるロール(管理者・エンドユーザー)で確認し、権限差による表示変化をチェックする。
Operator の自動応答設定と条件分岐実装例
Operator は JSON 形式のフロー定義により高度なロジックを書けます。この章ではシンプルな自動返信から属性別高度分岐までを具体例で示します。
シンプルな自動返信の作り方
- Operator 作成:管理画面 → 「Automation」→「Operator」→「New operator」。
- トリガー設定:「When a user sends a message」または「When a conversation is created」を選択。
- JSON 定義入力(基本シナリオ)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
{ "steps": [ { "type": "send_message", "message": { "type": "text", "body": "お問い合わせありがとうございます!担当者が確認中です。" } }, { "type": "wait", "duration": "30s" }, { "type": "send_message", "message": { "type": "text", "body": "他にご質問はございますか?" } } ] } |
- ポイント:
waitステップでユーザーが返信する時間を確保し、スパム感のない自然な流れを実現します。
属性・タグ別高度分岐例
以下は custom_attributes.plan に応じて異なる案内メッセージを送る JSON 定義です。入れ子構造で複数条件を表現しています。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
{ "steps": [ { "type": "if", "condition": "{{user.custom_attributes.plan}} == 'enterprise'", "true_steps": [ { "type": "send_message", "message": { "type": "text", "body": "エンタープライズ向けサポートページはこちら → https://example.com/enterprise-support" } } ], "false_steps": [ { "type": "if", "condition": "{{user.custom_attributes.plan}} == 'pro'", "true_steps": [ { "type": "send_message", "message": { "type": "text", "body": "Pro プラン向け FAQ をご覧ください → https://example.com/pro-faq" } } ], "false_steps": [ { "type": "send_message", "message": { "type": "text", "body": "無料プランをご利用いただきありがとうございます。まずはチュートリアルをご確認ください。" } } ] } ] } ] } |
テストとデバッグのコツ
- Preview タブで仮想ユーザー属性を設定し、期待通りの分岐が行われるか確認。
- 無限ループ防止のために
max_steps(例:10)を超える場合はエラーメッセージを返すロジックを追加。
外部システム連携・テスト・本番デプロイのベストプラクティス
ボット単体で完結せず、CRM や分析基盤と情報をやり取りすることで真価が発揮されます。この章では Webhook、REST API、ノーコード連携ツール(Zapier / Make.com)を用いた実装フローと運用上の注意点をまとめます。
Webhook 設定手順
- Webhook 作成:Settings → Webhooks → Add webhook。
- 対象イベント選択:
conversation.user.created、user.tag_addedなど必要なものにチェック。 - エンドポイント URL 設定:自社サーバーの HTTPS エンドポイント(例
https://api.example.com/intercom/webhook)を入力。 - シークレットキー取得:作成時に表示されるシークレットをメモし、受信側で HMAC‑SHA256 による署名検証を実装。
ポイント:本番環境では IP ホワイトリストとレートリミットを設定し、DoS 攻撃への耐性を確保します。
REST API でユーザーデータ取得・更新
| 操作 | HTTP メソッド | エンドポイント例 | 主な用途 |
|---|---|---|---|
| ユーザー検索 | GET |
https://api.intercom.io/users?email=user@example.com |
メールから Intercom ID を特定 |
| 属性更新 | POST |
https://api.intercom.io/users/{user_id} |
カスタム属性(例:plan)を変更 |
| 会話作成 | POST |
https://api.intercom.io/conversations |
ボット外で自動フォローアップメッセージ送信 |
- 認証方法:Bearer トークン。Developers → Access Tokens から取得し、
Authorization: Bearer <token>ヘッダーで送付。
Zapier / Make.com との連携例
Zapier
- Trigger:「New Conversation in Intercom」
- Action:「Create/Update Row in Google Sheets」→問い合わせ内容をスプレッドシートに蓄積し、週次レポート作成に活用。
Make.com(旧 Integromat)
- Scenario:Webhook (Intercom) → HTTP > POST → Slack
- 条件分岐モジュールで「タグが ‘high_priority’」の場合のみ #support-channel に通知。
まとめ:Webhook でリアルタイムイベント取得、REST API で属性管理、Zapier/Make.com のノーコード連携を組み合わせると、ボットは単なるチャットツールから業務全体のハブへと進化します。
導入後の効果測定・改善サイクルと実装上の注意点
導入は「設定完了」ではなく、継続的な PDCA が成功の鍵です。この章では重要指標(KPI)とその計測方法、よくある失敗パターンと回避策を解説します。
主要 KPI と計測方法
| KPI | 計算式・取得元 | 推奨目標値(参考) |
|---|---|---|
| 自動応答率 | auto_resolved_conversations / total_conversations (Insights) |
60 % 以上 |
| 平均解決時間 (ART) | total_resolution_time / auto_resolved_conversations(秒) |
2 分未満 |
| 離脱率 | conversations_ended_without_reply / total_conversations(Insights) |
5 % 未満 |
| ユーザー満足度 (CSAT) | 終了時アンケートの平均点(1‑5) | 4.5/5 以上 |
- 実装ヒント:Intercom の「Custom Reports」で上記指標を一括可視化し、週次ダッシュボードとして共有すると改善サイクルが回りやすくなります。
よくある失敗例と回避策
| 失敗ケース | 原因 | 回避策 |
|---|---|---|
| 無限ループ | 「戻る」ボタンや条件分岐の設定ミスで同一フローが繰り返される | JSON に max_transitions: 3 等の上限ロジックを組み込む |
| プライバシー違反 | ユーザー属性を無制限にメッセージへ埋め込み | GDPR/個人情報保護法に準拠し、取得許可がある属性のみ使用する |
| 多言語未対応 | 日本語以外の訪問者がエラーメッセージで離脱 | 「Language Detection」機能を有効化し、各言語用テンプレートを用意 |
| テスト漏れによる本番エラー | 本番環境で API キーやシークレットが誤設定 | ステージングアカウントでフローと API 呼び出しを検証後、環境変数でキーを切り替える |
- チェックリスト例(開発・運用フェーズ共通)
- [ ] フローロジックに最大遷移回数の制限があるか
- [ ] 個人情報がメッセージ内に含まれていないか
- [ ] 多言語テンプレートが全言語で表示確認済みか
- [ ] Webhook の署名検証ロジックが正しく動作しているか
PDCA サイクルの実践手順
- Plan:KPI と改善目標を設定し、シナリオ別に成功条件(例:FAQ 自動解決率 80 %)を書面化。
- Do:Custom Bot / Operator をデプロイし、ステージングでテスト実施。
- Check:週次レポートで KPI を測定し、目標未達の原因を分析。
- Act:分析結果に基づきフロー修正・属性追加・メッセージ改善を行い、再び Plan に戻す。
まとめ:KPI の継続的モニタリングと失敗パターンの事前対策を徹底することで、ボットは導入後も価値を維持し続けます。PDCA を回すたびにユーザー体験が向上し、最終的には CSAT の大幅アップとサポート工数削減につながります。