wiki-vault/Sources/Dev/mailerlite-classic-to-new-migration.md
Travis Herbranson 34a268d8dc migration: copy 62 notes from pbs-projects and homelab-projects
Two-layer structure: Sources (raw notes) + Wiki (compile output)
Four domains: Dev (40), Venture (3), Homelab (23), Reference (0)
Includes CLAUDE.md spec, index pages at all levels, compile log

Co-Authored-By: Lovebug <lovebug@herbylab.dev>
2026-05-08 17:21:13 -04:00

4.2 KiB

created path project status tags type updated
2026-04-29 Sources/Dev mailerlite-classic-to-new-migration completed
mailerlite
wordpress
migration
sunnies
session-notes 2026-04-29

MailerLite Classic to New Migration

Outcome

PBS email infrastructure fully migrated from MailerLite Classic to New MailerLite. All active PBS subscribers, forms, automations, and the site-wide popup are now running on the New platform. PBS stays within the free tier (~120 active subscribers, well under the 500 limit).

Classic remains active as a shared account with Jenny's writer audience, which was tabled for a later decision.

What Changed

  • Active PBS subscribers (~120) exported from Classic by group and imported into New, group by group, with automations disabled on import to avoid retriggering welcome flows.
  • Three freebie forms rebuilt as raw HTML embeds on their respective Gutenberg landing pages.
  • Site-wide popup form recreated in New MailerLite.
  • Official MailerLite WordPress plugin reconfigured with the New account API key (the "Classic API" field label was misleading legacy wording — same plugin works for both platforms).
  • All Classic-side PBS forms and automations deleted to prevent any stale embed or cached page from feeding subscribers into the wrong account.

Key Learnings

  • Account topology was the biggest source of confusion. Classic was a shared team account (Jenny + Travis via company email). The migration created a New account that was also shared. Logging in via different emails kept showing the same data, which initially looked like duplicate accounts but was actually one account with multiple users.
  • Migration brings ghost subscribers. The Classic to New migration tool pulled 496 pre-2023 inactive subscribers into the New account alongside any active ones. These had to be cleaned out before importing the active PBS list, otherwise the free tier would have been blown immediately.
  • Subscriber engagement stats do not migrate. Per-subscriber open/click history, signup dates, and group-level performance stats are lost in any CSV-based import. For a small list this is acceptable; baseline group stats were noted before the move.
  • The MailerLite WordPress plugin only injects the universal loader script. It does not manage popup forms, triggers, or display rules — those live entirely inside the MailerLite account. This explained why the popup couldn't be "turned on" from the plugin UI.
  • The universal loader script lives in the page head as plugin output. Identifying its source took a view-source hunt. Comments and XPath helped narrow it down to plugin-injected output rather than WPCode, theme files, or Astra customizer.
  • Form embed approach is now consistent. All PBS forms (three freebies
  • popup) use raw HTML embeds rather than plugin shortcodes. This decouples form delivery from the plugin and would make a future plugin removal painless.

Decisions

  • Keep the MailerLite plugin for now. It auto-updates the universal loader script if MailerLite changes infrastructure. Deactivation is a future option since all forms are raw HTML embeds and don't depend on plugin shortcodes.
  • Writer-side audience stays in Classic. No action taken on the writer subscribers or PPWC2024 group. Future split decision deferred.
  • Verification approach: monitor subscriber counts in both Classic and New for a week. Classic should stay flat (no leak from stale embeds), New should grow as new signups come in.

Future Work

  • Custom Sunnie-based popup system. Replace the MailerLite-controlled popup with a self-hosted modal driven by a 3D animated Sunnie character. Form submission stays MailerLite (raw HTML embed), but trigger logic, frequency capping, and visual presentation move into WPCode under PBS control. Architectural goal: control the experience locally rather than depending on remote configuration that can't be grepped.
  • 3D Sunnie pipeline experiment. 2D render exists; image-to-3D model conversion to be explored on local hardware, followed by Blender rigging and animation. Treated as brand investment rather than feature work — Sunnie as a recurring on-site presence beyond just the popup.

...sent from Jenny & Travis