eBiz123s member tutorial

Build a Quiz Funnel with Claude, eStage & your own database

A 5-question quiz on your eStage site that saves every answer to a database you control, captures the lead’s email, and tags them in your eStage CRM so the right follow-up emails go out. You build it by chatting in the Claude desktop app (or ChatGPT’s Codex), connected straight to your eStage project. No code editor, nothing else to install.

Claude or CodexeStage connectioneStage database or SupabaseNo coding experience needed

Part A · Learn · one-time setup

Connect your AI app to eStage

No code editor and nothing to install apart from the AI app itself. You chat; the AI builds inside your eStage project.

  1. 1

    Get the Claude desktop app

    A. Download it at claude.com/download and sign in. (Claude in your web browser works too.)

    B. The Pro plan is enough for this tutorial; plans are at claude.com/pricing.

    Use ChatGPT instead? eStage connects to OpenAI’s coding agent, Codex. The eStage panel in step 2 has a Codex tab with its own two-line setup. Every prompt below works the same in Codex.

  2. 2

    Connect your eStage project to Claude

    A. In eStage open Account → Integrations → Coding agents.

    B. On the Claude tab, copy the MCP server URL. It looks like https://genesis.estage.com/api/agent/12345/mcp. The number is your project ID.

    C. In the Claude app open Settings → Connectors → Add custom connector. Paste the URL and name it with the project ID, for example Genesis · My site · 12345.

    D. Sign in and approve when the eStage consent screen opens. No key to copy.

    E. Test it. In a new Claude chat, ask: “What pages does project 12345 have?” If it lists your pages, you are connected.

  3. 3

    Choose where the quiz answers are saved

    Pick one. Both keep the data in a database you control.

    Option 1: eStage’s own database (simplest). A. Open Project Settings → Dedicated Cloud and switch it on for this project (check the plan shown there). B. That is all: Claude can create the table for you through the connection, and you can see every answer in the Database tab.

    Option 2: your own Supabase. A. Create a free project at supabase.com. B. In Supabase, open Project Settings → API and copy the Project URL and the publishable (anon) key. C. In eStage open Settings → Connectors → Supabase and paste both. Add the optional management token if you want Claude to create the table for you.

    Never paste your Supabase service_role key into a chat or a page. It is the master key to your database. The anon key is public by design.

Part B · Build · in your Claude chat

Build the quiz by asking for it

  1. 4

    Prompt 0: have Claude read the eStage docs first

    eStage adds and changes features every week, and the AI’s own memory can be out of date. Start a new Claude chat and paste this first, so Claude works from today’s help docs:

    Prompt 0 · paste into Claude first
    Before we build anything: eStage's help docs are the source of truth and they change often. Read https://knowledge.estage.com/llms.txt, then read these pages in full (add .md to any page address for plain text): https://knowledge.estage.com/claude-code/ , https://knowledge.estage.com/cloud/database/ , https://knowledge.estage.com/connectors/supabase/ , https://knowledge.estage.com/crm/contacts/ , https://knowledge.estage.com/email/automations/ and https://knowledge.estage.com/workspace/publishing/ . Then tell me in plain words: 1) the current way to save form answers to a database, 2) the current way to add a contact to the eStage CRM with a tag, 3) anything that has changed or that I must do myself in the dashboard. For the rest of this chat, follow the docs whenever they differ from my instructions, and say so when they do.

    Read its summary. If it says something works differently from this page, go with the docs.

  2. 5

    Prompt 1: the quiz page

    In the same chat, paste this. Swap in your project ID and your niche:

    Prompt 1 · paste into Claude
    Use my eStage project [PROJECT ID]. Create a new page at /quiz that matches my site's existing design: a 5-question multiple-choice quiz for [YOUR NICHE, e.g. "people who want to start an online business"]. One question on screen at a time, a progress bar, mobile-first. After question 5, show an email form ("Enter your email to get your result"), then a result screen with one of 3 outcomes based on the answers. Don't save anything yet. Register the page so it shows in my Pages list, then take a screenshot and give me the preview link.

    Open the preview link and click through the quiz. Ask for changes in plain words (“make the buttons bigger”, “use our gold colour”) until you like it.

  3. 6

    Prompt 2: save every answer

    Paste the one that matches your choice in step 3.

    Prompt 2 · Option 1, eStage database
    Now save the answers in my project's Dedicated Cloud database. Create a table called quiz_responses (email, answers as json, result_type) where anyone can submit but nobody can read from the browser. When the email form is submitted, save the row, then show the result. Tell me when it's done.
    Prompt 2 · Option 2, your Supabase
    Now save the answers in my Supabase project (it's connected under Settings → Connectors → Supabase). Create a table called quiz_responses (email, answers as jsonb, result_type) with Row Level Security on and a policy that only allows inserts, no reads. If you can't create the table yourself, give me the SQL to paste into the Supabase SQL editor. Then save the row when the email form is submitted.
  4. 7

    Test that answers arrive

    A. Open the preview link and finish the quiz with a test email.

    B. Check the row is there: Option 1, eStage Dedicated Cloud → Database → quiz_responses. Option 2, Supabase Table Editor → quiz_responses.

    C. On Option 1 you can also just ask Claude: “How many rows are in quiz_responses, and what is the newest one?”

Part C · Run · go live

Tag every lead and publish

  1. 8

    Create the tags and automations in eStage

    A. In your eStage dashboard, create three tags, one per quiz outcome: quiz-beginner, quiz-builder, quiz-scaler.

    B. Create one automation per tag: trigger = tag applied, action = send the follow-up emails for that outcome. This part is done by you in the dashboard; the AI connection does not change your CRM settings.

  2. 9

    Prompt 3: tag the lead

    Paste this into the same Claude chat:

    Prompt 3 · paste into Claude
    When a quiz answer is saved, also add the lead to my eStage CRM with a tag that matches their result_type (quiz-beginner, quiz-builder or quiz-scaler). Use the current method from the eStage docs you read at the start. If it needs an endpoint from my dashboard, here it is: [PASTE ENDPOINT, or say "tell me where to find it"]. Do it after the database save, and make sure one failing never blocks the other.
  3. 10

    Check it on phone and desktop, then publish

    Prompt 4 · paste into Claude
    Check the /quiz page on my eStage project: take a screenshot on a phone-sized screen and on desktop, fix anything that looks broken, and list what you changed.

    When it looks right, publish: press Publish in eStage, or ask Claude to publish the project.

  4. 11

    Test the whole loop

    Take the quiz on your live page with an email you control. Then check:

    A. The answer row is in your database. B. The contact is in your eStage CRM with the right tag. C. The follow-up email arrives in your inbox.