Setup Guide

The Signal Newsletter — Full Setup

Supabase for tracking signups. Beehiiv for sending. Your website for capturing.

Create the Newsletter Subscribers Table

Run this SQL in your Supabase dashboard under SQL Editor. This creates the table that stores every signup from your website.

STEP 1

Go to Supabase SQL Editor

Open supabase.com/dashboard → select your project → click "SQL Editor" in the left sidebar.

STEP 2

Run this SQL

Paste and execute:

SQL
-- Newsletter subscribers table
CREATE TABLE IF NOT EXISTS newsletter_subscribers (
  id UUID DEFAULT gen_random_uuid() PRIMARY KEY,
  email TEXT NOT NULL,
  source TEXT DEFAULT 'homepage',
  subscribed_at TIMESTAMPTZ DEFAULT now(),
  created_at TIMESTAMPTZ DEFAULT now()
);

-- Prevent duplicate emails
CREATE UNIQUE INDEX IF NOT EXISTS
  idx_newsletter_email ON newsletter_subscribers (email);

-- Enable Row Level Security
ALTER TABLE newsletter_subscribers ENABLE ROW LEVEL SECURITY;

-- Allow anonymous inserts (for website forms)
CREATE POLICY "Allow anonymous inserts"
  ON newsletter_subscribers FOR INSERT
  TO anon
  WITH CHECK (true);

-- Allow authenticated reads (for you to export)
CREATE POLICY "Allow authenticated reads"
  ON newsletter_subscribers FOR SELECT
  TO authenticated
  USING (true);
STEP 3

Add your Supabase credentials to the website

In both index.html and the-3-2-1.html, find and replace the placeholder values:

Find these lines
const SUPABASE_URL = 'YOUR_SUPABASE_URL';
const SUPABASE_ANON_KEY = 'YOUR_SUPABASE_ANON_KEY';

Replace with your actual values from Supabase → Settings → API:

Replace with
const SUPABASE_URL = 'https://yourproject.supabase.co';
const SUPABASE_ANON_KEY = 'eyJhbGciOi...(your anon key)';
How it works

When someone subscribes on your website, the form sends their email + source (which page they signed up from) to Supabase. The source field tells you whether they came from the homepage (homepage), the 3-2-1 hero section (the-3-2-1-hero), or the bottom CTA (the-3-2-1-footer).

Set Up Beehiiv for Sending

Beehiiv handles the actual newsletter delivery, analytics, and subscriber management. Free up to 2,500 subscribers.

STEP 1

Create your Beehiiv account

Go to beehiiv.com → Sign up free → Name your publication "The Signal" → Set your sender name as "Sunny Binjola" and sender email as your business email.

STEP 2

Connect your custom domain (optional but recommended)

In Beehiiv Settings → Custom Domain → add newsletter.elevateaisystem.com. This means emails come from your domain (better deliverability) and the web version lives at your URL.

STEP 3

Get your Beehiiv embed form code

In Beehiiv → Grow → Subscribe Forms → Create a new form → Copy the form action URL. It looks like:

Beehiiv form action URL
https://embeds.beehiiv.com/your-publication-id
STEP 4

Add Beehiiv to your website forms (dual submission)

Update the signup functions in index.html and the-3-2-1.html to submit to BOTH Supabase (your database) AND Beehiiv (for delivery). Here's the updated code for the homepage:

JavaScript — add inside handleNewsletterSignup() after Supabase call
// Also subscribe via Beehiiv for delivery
const BEEHIIV_FORM = 'https://embeds.beehiiv.com/YOUR_PUBLICATION_ID';

fetch(BEEHIIV_FORM, {
  method: 'POST',
  headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
  body: new URLSearchParams({ email: email }),
  mode: 'no-cors'  // Beehiiv doesn't return CORS headers
}).catch(() => {});  // Silently handle — Supabase is the source of truth
Why both Supabase + Beehiiv?

Supabase is your database — you own the data, can query it, export it, see which source converts best. Beehiiv handles email delivery, open rates, click tracking, and unsubscribes. You get the best of both: data ownership + professional delivery.

Your Reusable 3-2-1 Template for Beehiiv

Copy this structure into Beehiiv's editor as a reusable template. Every Tuesday, duplicate it and fill in the blanks.

Subject: The Signal — [Week's hook in under 50 chars] Preview text: 3 technologies, 2 ideas, 1 tool

Hey — here's this week's 3-2-1. Three AI developments that matter for your coaching business, two ideas you can use right now, and one tool worth trying.

3
Technologies This Week

1. [Technology headline]

[2-3 sentences: what happened + why it matters for coaches. Link to source.]

2. [Technology headline]

[2-3 sentences: what happened + why it matters for coaches. Link to source.]

3. [Technology headline]

[2-3 sentences: what happened + why it matters for coaches. Link to source.]

2
Ideas You Can Use This Week

1. [Actionable idea headline]

[One paragraph. Problem → idea → how to do it. Specific and concrete.]

2. [Actionable idea headline]

[One paragraph. Problem → idea → how to do it. Specific and concrete.]

1
Tool of the Week

[Tool Name] — [What it does in 5 words]

[What it does + specific use case for coaches + pricing + link. Your honest take.]

[Single CTA — rotate between: "Reply and tell me...", "Book a call", "Download the playbook", or "Try the tool"]

— Sunny
ElevateAI System · elevateaisystem.com

Rules to Follow

Under 800 words total. One CTA per issue. Write in your voice, not a newscaster's. Always coach-relevant — if a coach can't use it this month, cut it. Ship every Tuesday at 8am.

Under 2 Hours Per Week

Your production rhythm so it never feels like a chore.

SUNDAY

Scan & Save (20 min)

Scan AI news — X, Hacker News, Ben's Bites, The Neuron, or any AI newsletter you follow. Save 5-8 articles that caught your eye. Don't write yet, just collect.

MONDAY AM

Draft (45 min)

Pick your 3 technologies, 2 ideas, 1 tool. Open Beehiiv, duplicate the template, fill in the blanks. Use Claude to help draft if needed — then edit for your voice.

MONDAY PM

Edit & Schedule (30 min)

Trim to under 800 words. Add links. Write the subject line (under 50 chars). Preview on mobile. Schedule for Tuesday 8am.

TUESDAY

Engage (15 min)

It sends. Reply to responses — every reply is a relationship. People who reply to your newsletter become clients.

Setup Checklist

[ ] Create Supabase table (run the SQL above)
[ ] Copy your Supabase URL + anon key
[ ] Paste credentials into index.html and the-3-2-1.html
[ ] Upload both files to your hosting
[ ] Test a signup on both pages — check Supabase table
[ ] Create Beehiiv account (beehiiv.com)
[ ] Name publication "The Signal"
[ ] Set sender as Sunny Binjola + your email
[ ] Optional: connect newsletter.elevateaisystem.com
[ ] Get Beehiiv form action URL
[ ] Add Beehiiv fetch call to both signup functions
[ ] Create reusable template in Beehiiv editor
[ ] Write and schedule Issue #001
[ ] Ship every Tuesday at 8am