Supabase連携

リードがビルダー、CRM、いくつかのCSVに散らばっていて、どれも広告費と突き合わせられない。代わりに、フォームが送信された瞬間に、すべてのリードをSupabase上の自社のPostgresテーブルへ送りましょう。

  • Webhook
  • ランディングページ、クイズファネル、ワークフロー(ベータ版、HTTPリクエストで)

接続する理由

SupabaseとLanderLabを使う理由

  • リードを自社のPostgresに

    各リードは、他社のツールに閉じ込められたレコードではなく、あなたのスキーマと列の型を持つ、自分が所有するテーブルの1行になります。

  • 作ることもホスティングすることもないサーバー

    SupabaseはすべてのテーブルをREST APIで公開しているので、Webhookがデータベースへ直接書き込みます。コードを書き、デプロイし、監視するエンドポイントはありません。

  • 設計上、挿入専用のキー

    Row Level Securityで、Webhookのキーを行の追加だけに制限できるので、そのキーではリードを1件も読み取り、変更、削除できません。

  • リードの質をSQLで

    UTM、クリックID、A/Bテストのバリエーションが列に入っているので、1つのクエリでキャンペーン別、バリエーション別のリードがわかり、成果のデータと結合すれば、どれが売上になったかがわかります。

  • 自社のアプリにもすぐ使える

    同じプロジェクト上に作った買い手向けポータルや営業担当用のアプリが、それぞれのポリシーでテーブルを読み取るので、ページで獲得したリードがすぐにそこへ表示されます。

ランディングページにSupabaseを

本格的なリード獲得事業者は、いずれ、自分で管理するデータベースに生のデータを置きたくなります。リードと広告費を結合するため、リードの質をSQLで調べるため、買い手向けポータルや営業担当用のアプリにデータを送るため。たいてい止まってしまうのは、リードを受け取るエンドポイントを作る部分です。誰かが書いて、動かし続けなければならないからです。

Supabaseなら、その部分がなくなります。すべてのテーブルにはすでにRESTエンドポイントがあり、LanderLabのWebhookが、各リードを列名と値のフラットな組としてそこへポストします。Postgresが行を挿入し、Row Level Securityがリクエストに許される操作を決め、リードはキャンペーンとバリエーション付きでデータベースに入ります。

リードごとにPostgresの1行を、あなたのスキーマで

リクエストの本文はフラットで、列ごとに1つのキーなので、各リードは、型付きの列、列のデフォルト値によるcreated_atのタイムスタンプ、ほかのシステムから参照できるidを持つ行になります。どの列にも一致しないキーは拒否されるので、余計なデータがテーブルに入ることはありません。

Postgresなので、行はSQLでできることなら何にでも使えます。キャンペーン別、日別のリードのビュー、コストのテーブルとの結合、そして同じ人の再送信を2回保存するより断りたいなら、メールアドレスへのユニークインデックス。

Row Level Securityで保護

Webhookはプロジェクトのpublishable keyで書き込み、Row Level Securityがそのキーに許される操作を決めます。leadsテーブルへの挿入だけを許可しておけば、そのキーでリードを追加することはできても、読み取り、変更、削除は一切できないので、キーが秘密でなくても、リードのデータには手が届きません。

Row Level Securityを迂回するsecret keyは、自社のバックエンドから出す必要がありません。リードのフォームには不要だからです。

リードの質を測る、自分だけの信頼できる情報源

ビルダー、CRM、トラッカーは、それぞれ話の一部を持っています。すべてのリードとそのutm_campaign、クリックID、ランディングページ、バリエーションを入れたSupabaseのテーブルは、自分で管理できる部分です。日々の広告費を2つ目のテーブルに入れれば、SQLのビューでキャンペーン別、バリエーション別のリード単価が出ます。買い手や営業担当が記録する成果を加えれば、販売1件あたりのコストも出ます。

それが、スプリットテストに正直に決着をつける方法です。どのバリエーションのフォーム送信が多かったかではなく、どのバリエーションのリードがお金になったか。

挿入に失敗しても残るリード

「コンプライアンス対応のリード連携」がオンでない限り、すべてのリードはLanderLabのリードタブにも保存され、日付とバリエーションで絞り込め、Grow以上ではCSVでエクスポートできます。たとえば列の名前を変えたあとで挿入に失敗しても、リードは失われません。テーブルを直して、エクスポートから補完しましょう。代わりにLanderLabのワークフロー(ベータ版)経由で送れば、実行履歴ビューで、どのリードのリクエストが失敗したかが正確にわかります。

ユースケース

有料トラフィックでのSupabaseの活用例

  • 01

    すべてのページにまたがるメディケアのリード台帳

    メディケアと葬儀保険のすべてのページが、ZIP、関心のあるプラン、ソース、バリエーションを入れて、1つのleadsテーブルに挿入します。1つのクエリで、すべてのページのキャンペーン別、日別のリード数がわかります。

  • 02

    SQLで、キャンペーン別の販売1件あたりのコスト

    日々の広告費はspendテーブルに、買い手からの成果は別のテーブルに入れます。ビューで3つを結合し、キャンペーンとバリエーションを、フォーム送信あたりのコストではなく、販売されたリード1件あたりのコストで順位付けします。

  • 03

    同じプロジェクト上の買い手向けポータル

    買い手は、Supabaseのプロジェクト上の小さなアプリにログインし、Row Level Securityによって自分のリードだけを見られます。リードは、ページが挿入した瞬間に届きます。

FAQ

Supabase連携のよくある質問

ここにないことはお問い合わせください。

SupabaseとLanderLab

ランディングページにSupabaseを接続する価値があるのは、どんなときですか?

リードを、自分が所有しSQLで照会できるデータベースに置きたいときです。エンドポイントを作ることもホスティングすることもなく、キャンペーンとバリエーション付きで、リードごとに1行が手に入ります。

LanderLabはSupabaseと連携できますか?

はい。ページのWebhook連携を使います。各リードを、テーブルのRESTエンドポイントへポストします。

Supabaseにリードを送るのに、サーバーやZapierは必要ですか?

いいえ。SupabaseのREST APIがエンドポイントになり、Webhookがそこへ直接書き込みます。

Supabaseのキーでリードを送っても安全ですか?

はい。Supabaseのpublishable keyを使い、Row Level Securityで挿入だけを許可しておけば安全です。そのキーではリードを追加できますが、何も読み取ったり変更したりできません。

クイズの回答、UTM、クリックIDを送れますか?

はい。クイズの回答と、utm_campaignやgclidなどの隠しフィールドはどれも、LanderLabのページURLやバリエーションIDと並べて、それぞれ専用の列に送れます。

その他の連携

ほかのツールもつなぐ。

Supabaseを接続して、次のページを公開しましょう。

ページを作り、Supabaseをオンにして、広告をそこへ送るだけ。無料で始められ、カードは不要です。

1つのプロンプトから、質の高いリードまで

1つのプロンプトが太陽光の見積もりファネルとして公開され、すべてのリードが買い手へ振り分けられ、予算を食いつぶす前に漏れが見つかるまでをご覧ください。

0:00
0:59