# Kajabi launch opt-in versus buyer conversion dashboard

> Pick a Kajabi opt-in form and a launch window and see who opted in, who bought, and who did not, then tag the non-buyers for follow-up in one click.

- Workflow type: app
- Services: Kajabi, Slack Bot
- Categories: Marketing, Sales
- Published: 2026-08-31

## What it does

- Shows a live three column view of any launch: everyone who opted in through your chosen Kajabi form, which of those people went on to buy, and the non-buyers left over
- Puts the numbers that matter across the top, with opt-in count, buyer count and the conversion rate for the launch window you picked
- Lets you act on the list without leaving the page, adding a follow-up tag to a single non-buyer or to the whole non-buyer segment at once, and granting a bonus or fast action offer to people who bought early
- Remembers which segments you already tagged for each launch, so re-running never double tags anyone
- Includes a Write the follow-up angle button that studies what your buyers actually bought versus what the non-buyers opted in for, works out the likely objection, drafts three follow-up email angles into the page, and posts the launch conversion summary to your team channel

## What you'll need

- A Kajabi account with the Public API turned on. It is included on the Pro plan or available as a 25 dollar per month add-on, and only account Owners and Subowners can create the API key
- The opt-in form you used for the launch, already collecting submissions in Kajabi
- A follow-up tag and, if you want to reward early buyers, a bonus or fast action offer set up in Kajabi
- A Slack workspace and the channel where your team should see the launch summary
- If your Kajabi account runs more than one site, know which site the launch lives on

## Prompt

Build me an app that shows how a Kajabi launch actually converted, so I stop rebuilding the same spreadsheet every time a cart closes. I want to pick an opt-in form and a launch date window and immediately see who opted in, who of those bought, and who did not, with the ability to tag and reward people right from the page.

Top of the page is the launch selector. If my Kajabi account has more than one site, show a site dropdown populated from List Sites and carry the chosen site id into every later call as filter[site_id], since multi-site accounts require it. Next to it a form dropdown populated from List Forms for that site, then a start date and end date for the launch window (for example cart open and cart close). Selecting a form and a window is what defines a launch everywhere else in the app. Remember my last selection so reopening the app lands me back on the launch I was working on.

Across the top of the results, show a stat bar: total opt-ins, total buyers, total non-buyers, and the conversion rate as buyers divided by opt-ins shown as a percentage. Underneath, three columns side by side. Column one is everyone who opted in, loaded by a handler that calls List Form Submissions filtered to the selected form and filtered down to submissions inside the launch window. Column two is the opt-ins who became customers. Column three is the non-buyers left over. Each row shows name, email, opt-in date, and for buyers what they bought and the purchase date and amount.

The matching has to happen inside the handler, because Kajabi form submissions and customers are separate resources with no direct link. Load submissions for the window, then load List Customers and List Purchases for the same site and window, and match a submission to a customer on email address, comparing lowercased and trimmed so casing and stray whitespace do not create false non-buyers. Treat an opt-in as a buyer when their email matches a customer who has at least one purchase dated on or after the launch window start. Keep the purchase records on the matched row so the buyer column can show what each person actually bought. Every Kajabi list endpoint paginates with page[number] and page[size] and exposes links.next, so page through until links.next is null rather than reading only the first page, otherwise a big launch will silently under-report. Kajabi does not publish rate limits, so back off and retry if a request comes back 429.

Every non-buyer row gets an action to drop that person into my follow-up sequence, using Add Tag to Contact with a tag I choose at the top of the non-buyer column. Since Add Tag to Contact works on a contact, resolve the person from their email using List Contacts filtered by email before tagging, and if no contact comes back, mark the row as unresolvable rather than failing the whole batch. Above the column, a bulk action tags every non-buyer in the current segment at once, with a confirmation showing how many people it is about to tag.

Tagging has to be idempotent. Before writing a tag, check what the contact already carries and skip anyone who already has it, and keep a record in app storage of which launch, which segment and which tag was applied, keyed by form, window and tag, along with the timestamp and how many contacts were tagged. When I come back to a launch I already tagged, the app should say so up front, show the tagged rows with a Tagged badge, and report results as newly tagged versus already tagged rather than pretending it did the work twice. Show the tagging history for the selected launch as a small strip under the stat bar so I can see at a glance which segments I have already handled.

Buyer rows get their own action: Grant Offer to Customer, so I can hand a bonus or fast action offer to people who bought early. Populate the offer picker from List Offers for the site, and remember the last offer I granted for this launch as the default. Same idempotency rule applies: check List Customer's Offers first and skip anyone who already has that offer, and show which buyers already received it.

Add a Write the follow-up angle button that kicks off a background agent for the selected launch. The agent should look at what the buyers of this launch actually purchased, using List Purchases and List Contact's Offers for the matched buyers, and compare that against what the non-buyers opted in for, using the form they filled in and the answers captured on their submissions. From that gap it should work out the likely objection that stopped the non-buyers from converting, then draft three distinct follow-up email angles I can copy into my Kajabi sequence, each with a subject line, the angle in one sentence, and a short body draft. Write the result back into the app, stored against this launch so it survives a reload, and render it in a panel next to the columns with a copy button on each angle. Show clear running, finished and failed states on the button while the agent works.

As its last step, the same agent posts the launch conversion summary to my team channel using the Slack Bot Send a Message action: the form name, the launch window, opt-ins, buyers, non-buyers, the conversion rate, and a one line read on the likely objection with the three angle headlines. Let me pick the channel in the app and remember it for next time. Use Slack mrkdwn formatting, so single asterisks for bold.

General behaviour: all reads and writes go through server side handlers, the page should be usable with a few thousand opt-ins without falling over, empty states should explain what to pick rather than showing a blank screen, and any Kajabi error should surface on the affected row instead of blanking the whole dashboard.

## How to customize

- Change the default launch window, for example a rolling last 14 days instead of fixed cart open and cart close dates
- Swap the follow-up tag, pick a different bonus offer for buyers, or point the summary at a different Slack channel
- Adjust what counts as a buyer for your business, such as only counting purchases of the specific launch offer rather than any purchase in the window
- Change the tone or number of follow-up angles the drafting button produces

## FAQ

### Do I need a paid Kajabi plan for this?

Yes. This app reads and updates your Kajabi data through the Kajabi Public API, which is included on the Pro plan or available as a 25 dollar per month add-on on other plans. You also need to be an account Owner or Subowner, since only those roles can create the API key.

### How does it know who bought if the opt-in and the sale are separate records in Kajabi?

Opt-ins and customers live in different places in Kajabi, so the app matches them on email address behind the scenes. Anyone whose opt-in email also shows up as a customer with a purchase in your launch window lands in the buyers column, and everyone else falls into non-buyers.

### What happens if I click the bulk tag button twice?

Nothing bad. The app checks who already carries the tag before it writes anything and skips them, and it also keeps a record of which segments it tagged for each launch. Re-running is safe and you will see a note telling you how many people were already tagged.

### Can I use it for a launch that already finished?

Yes. You choose the date window yourself, so you can point it at any past launch and get the same three column breakdown and conversion rate, then tag the non-buyers whenever you are ready to run the follow-up.

### What do the drafted follow-up angles actually give me?

Three different angles you can copy straight into your Kajabi email sequence, each based on the gap between what your buyers purchased and what the non-buyers originally signed up for. They are drafts written for your specific launch, not generic templates, so you still get the final say on the wording.

### Does it send emails to my list?

No. The app tags people and drafts copy for you, but the actual sending stays in Kajabi where your sequences already live. You stay in control of what goes out.

Use this prompt in General Input: https://www.generalinput.com/prompts/kajabi-launch-opt-in-versus-buyer-conversion-dashboard