Vol.01 v0.3
Vol. 01 Strategy Memo Internal AM · distribute carefully Lite → Pro upgrade engine

Stop collecting data.
Start converting it.

01 TL;DR

AIOSEO already collects enough data to drive a meaningful Lite → Pro lift, but ships none of it as trigger campaigns. This memo maps the fix: 4 layers (telemetry, segments, campaigns, outcomes), 24 data points, 19 named segments queryable in Metabase, and 19 trigger campaigns sequenced in Lindris, across a 6–8 month roadmap gated on a one-sprint decoder.

Top-of-funnel campaign work cannot start until P0a ships. PLAN.md is the 651-line strategy memo; this page is the visual model.

Telemetry data points
24
Named segments
19
Trigger campaigns
19
Honest delivery, P0–P4
6–8 mo
I. What we collect

Today’s snapshot, tomorrow’s signal.

Today we collect ~14 fields per site, mostly for diagnostics — none of it actually segmentable. The plan adds 43 actionable fields across five classes, each with a clear phase gate.

Today Currently collected ~14 fields
  • Environmentsite URL · PHP, WP, MySQL versions · server software · SSL · multisite · sites count · all active plugins + versions · theme · user count · locale · timezone · DB tables
  • Identityadmin email
  • AIOSEOplugin version · install date · full options + internal options (opaque PHP-serialized blob)
  • Pro onlylicense key · license type · addon options
Collected per-site, snapshot-style. Useful for diagnostics; not actionable for segmentation because the options blob ingests as opaque text and there are zero behavioral events.
Proposed After P0a, P2, P5, billing ETL +43 actionable
  • A · Behavioral events +12 upsell_page_view · feature_gate_hit · seo_analysis_run · wizard_step_event · notification_event · gsc_connection_attempt · ai_credit_consumption · addon_state_change · license_renewal_button_click · support_ticket_opened · email_summary_opt_in · plugin_uninstall Needs P2 + Lite WP.org disclosure update
  • B · Decoded options blob +13 wizard_completed_step · gsc_connected_at · email_summary_enabled · feature_states · social_profiles_set · local_seo_configured · redirects_count · link_assistant_* · schema_types_in_use · access_control_used · addon_versions · wizard_choice_category · ai_credits_used/total Needs P0a/P0b decoder (1 + 2–3 sprints)
  • C · Content quality +4 new focus_keyword_coverage · truseo_distribution · posts_published_30d · traffic_estimate (most C-fields are derivable from existing plugin-list data) Plugin emit (P7); some derivable today
  • D · Identity & enrichment +4 all admin user emails · domain enrichment · aioseo_account_ids · site_acquisition_utm Needs P5a (lightweight) and P5b (DPA-bound)
  • E · Renewal & billing +3 new auto_renewal_status · payment_failure_event · license_tier_history (license_expiry_date already collected) Needs Stripe ETL into warehouse
Every row resolves to a queryable warehouse column. ~7 fields ship after P0a alone and unlock the Top-5 segments; the rest cascade behind P2, P5, and billing ETL.
II. Campaigns by segment

When each touch lands.

Every campaign owns one segment. Each row is a campaign lane; each marker is one touch on the day it fires. Round = email, square = in-product. Click any row to preview the email that lands in the user’s inbox.

Bottom-funnel intent High-intent Activation / retention Renewal defense Broad / volume Targeted / niche Hygiene / win-back ● email  ◆ in-product
Campaign · Segment
Day from trigger