← Back to the builder

🥥 How to use the LP Factory

Create a new ad landing page in ~10 minutes. No code, no developer, no deploy steps — you edit, you publish, it's live.

The big picture

Every landing page is just a set of text fields (headline, form options, FAQ…) poured into the same proven design — the one already converting for Office Admin and Bookkeeper. The backend (CRM, Slack alerts, Meta tracking) is wired automatically for every page. When you hit Publish, the page goes live on the internet about 2 minutes later at get.coconutva.com/<your-slug>/.

Creating a page, start to finish

  1. Pick your starting point. In the dropdown (top-left), select the existing page closest to your new niche — e.g. duplicate the Bookkeeper page to make an Accounting Bookkeeper page.
  2. Click "Duplicate as new page…" and give it a slug: lowercase-with-dashes, like accounting-bookkeeper. This becomes the URL. Choose carefully — it's locked after the first publish.
  3. Work through the editor top to bottom (section guide below). The preview on the right updates as you type and is pixel-identical to the real page.
  4. Hit Publish. Green message = done. You and Daniel get an email with the page link.
  5. Wait ~2 minutes, then open get.coconutva.com/<slug>/ and click through your page like a visitor would.
  6. Point the Meta ad at that URL. That's it — tracking (PageView + Lead with dedup), Slack alerts, and CRM capture are already on.
Editing an existing page is the same, minus step 2: pick it in the dropdown, change the fields, Publish. The live page updates ~2 minutes later.

Working with Claude (Download / Import JSON)

Prefer iterating copy conversationally with Claude instead of typing into fields? The builder supports a full round-trip:

  1. Download the page. Select the page in the dropdown and click Download JSON (top bar). You get <slug>.json — the page's entire copy as one small file. It exports exactly what's on screen, including unsaved edits.
  2. Work in your Claude Project. Attach the JSON and iterate the copy in plain conversation ("make the headline punchier", "rewrite the FAQ for accounting firms"). When you're done, ask Claude for the complete JSON and save it.
  3. Bring it back. Click Import JSON…, pick the file, and the editor + live preview load it instantly. If something required is missing, you'll get a clear message listing the exact fields — fix them in Claude and re-import.
  4. Review the preview, then Publish. Same as always.
Import also creates new pages: if the JSON's slug doesn't exist yet, importing starts a brand-new page — a full page can be born in Claude and enter the builder in one click.
Always start from a fresh Download JSON, not from an old copy in a past Claude conversation. Importing an outdated file over a page silently discards any edits made in the builder since — the export/import pair is the source of truth handshake.

Section-by-section guide

Page identity

FieldWhat it doesRules
SlugThe URL: get.coconutva.com/<slug>/lowercase-with-dashes. Must be unique. Locked after first publish.
Ads nameHow leads from this page are labeled in the CRM, and the Meta content_nameMust be unique across ALL pages — "Bookkeeper" and "Accounting Bookkeeper" are different labels for a reason. Don't change it after the page has leads.
Page labelThe Slack alert header: "🥥 New lead — <label>"Make it instantly recognizable for the team.
SubdomainOptional vanity URL (e.g. dispatch.coconutva.com)Leave empty in doubt — the page works on its slug URL immediately. If filled, Daniel gets an email and wires it (~1 min on his side).

Meta / SEO

Title tag shows in the browser tab and link previews — house pattern: <Benefit> | Coconut for Trades. Meta description (~150 chars) and OG/Twitter description (shorter) show when the link is shared. Pages are hidden from Google on purpose (they're paid destinations), so write these for humans clicking a shared link, not for SEO.

Hero

The first screen. Eyebrow = the small audience pill ("For roofers, electricians…"). Headline = the big promise; put <br> where you want the line to break. Accent = the green line under it ("First 40 hours free"). Lead = the paragraph; you can bold with <strong>…</strong>.

Form — step 1, step 2, hours, success

Step 1 button: pattern "Show me available <role>s". Step 2 subtitle + dropdown: the dropdown label asks the pain question; the options (one per line) are what the visitor picks — and exactly what appears on the lead in the CRM. 5–7 concrete pains + a "Not sure yet" works best. Hours dropdown (optional): fill label + options to ask "how much help do you need?" — great qualifier, shows in Slack; leave both empty to skip the question entirely. Success: the "You're in!" text and the URL of the "Browse example profiles" button.

Roles we fill

One role per line → the black pills. Order here = order on the page.

Works in your stack (tool logos)

Tick the tools your audience actually uses. Only logos already in the library appear as checkboxes.

Need a logo we don't have (Karbon, EZLynx, Boulevard…)? Don't guess — message Daniel with the tool name. He adds it to the library (takes minutes) and it becomes a checkbox for every page. Publishing with a made-up logo name is blocked automatically.

What You Get

The numbered benefit rows. Numbers (01, 02…) are automatic from the order — never type them. Tick dark on exactly one row: the highlighted "star" benefit. 6–7 rows is the house pattern. ✕ removes a row, "+ Add row" appends one.

CTA banner

The green band before the FAQ — a short emotional close ("Get your evenings back") plus one supporting line.

FAQ

Question/answer pairs; answers can use <strong> and links. Keep the evergreen company answers (pricing, trial, cancellation, security, time zones) from the page you duplicated and swap only the role-specific ones. 14–16 questions is the pattern.

Links

Calendly URL: the booking link in the FAQ footer. Attribution (utm_source) is set automatically to your slug — you can't get it wrong. Redirect URL: where the success-screen button goes.

If Publish shows a red error

ErrorMeaning / fix
adsName_taken_by:<page>Another page already uses that Ads name. Pick a unique one.
unknown_logo:<file>That logo isn't in the library. Ask Daniel to add it.
missing_… / bad_…A required field is empty or malformed (URLs must start with https://). The name tells you which one.
need_at_least_2_optionsThe step-2 dropdown needs at least two lines.
bad_passwordLog out/in with the current admin password.

Errors only ever block your publish — they can never break the live pages.

When to involve Daniel

Only three things: a new tool logo, a subdomain, or a layout/structure change (new section, different design — that's template work). Everything else is yours, end to end.

Golden rule: duplicate the page closest to your niche, change the words, keep the structure. The layout is already proven — your job is audience, positioning, and copy.