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.

PLAN.md is the full strategy memo; this page is the visual model.

Telemetry data points
24
Named segments
19
Trigger campaigns
19
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 Five classes of warehouse-queryable data +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 Requires Lite WP.org consent 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 Requires options-blob decoder at warehouse ingest
  • 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-side emit; some derivable today
  • D · Identity & enrichment +4 all admin user emails · domain enrichment · aioseo_account_ids · site_acquisition_utm Requires DPA review for enrichment vendor
  • E · Renewal & billing +3 new auto_renewal_status · payment_failure_event · license_tier_history (license_expiry_date already collected) Requires Stripe → warehouse ETL
Every row resolves to a queryable warehouse column. The decoder unlocks the Top-5 segments outright; the rest depend on behavioural events, identity enrichment, and the Stripe 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