Skip to content
Sad Subscription Analytics
Menu

What SSA stores

SSA keeps everything it knows in your own WordPress database: eleven tables of its own, plus a handful of options and per-user preferences. Nothing lives anywhere else.

The eleven database tables

SSA creates eleven tables of its own on activation, each named with your site's table prefix plus ssa_ (wp_ssa_ on a default WordPress install). Nothing outside these tables is touched.

TableWhat it holds
wp_ssa_providersOne row per connected source (Stripe, and any SSA Pro connector): its connection status, when it last synced, and its access credentials, stored encrypted.
wp_ssa_customersOne row per customer: email, name, the WordPress user SSA matched them to, the referral source you assigned, their currency, and when they first appeared.
wp_ssa_subscriptionsOne row per subscription, whether it came straight from the provider, was detected from a pattern of charges, or was entered by hand: plan, status, amount, currency, billing interval, and its trial, period and cancellation dates.
wp_ssa_subscription_eventsA history of status, plan and amount changes for each subscription, with when each one happened.
wp_ssa_paymentsOne row per charge: amount, currency, status, whether it belongs to a subscription, and any refund.
wp_ssa_invoicesOne row per invoice: amount due and paid, status, invoice date, and how many payment attempts it took.
wp_ssa_sync_jobsThe state of each background sync: which step it is on, its progress, and any errors. Old finished jobs are cleared automatically.
wp_ssa_metricsThe pre-calculated numbers your reports read (MRR, subscriber counts and more, by period and currency), so nothing is computed live while you wait.
wp_ssa_cohortsPre-calculated retention: how many subscribers from each month's cohort are still active, month by month.
wp_ssa_pattern_ignoresA permanent record of every payment you told SSA to treat as one-time rather than a detected subscription, so it does not come back on the next sync.
wp_ssa_errorsA scrubbed log of errors raised inside SSA itself, shown on the Diagnostics tab.

Settings and other options

Besides its tables, SSA stores a handful of WordPress options. The largest is ssa_settings, one array holding most of what you configure: your detected currency, the exchange-rate API key (encrypted), trial roles, target MRR, debug mode, and the weekly digest schedule.

  • ssa_referral_sources, your list of referral-source options, kept separate from ssa_settings so it can grow on its own.
  • ssa_exempt_accounts, the list of email addresses SSA purges from every sync.
  • ssa_access, who is allowed to see or manage SSA analytics.
  • ssa_exchange_rates, the cached exchange rates fetched from freecurrencyapi.com, refreshed at most once a day.
  • A handful of small flags and dates, such as when SSA was first activated and whether each onboarding step has been completed.

Per-user preferences

A few preferences are stored per WordPress user rather than site-wide, so they never affect anyone else who is logged in.

  • ssa_user_date_range, the report date range you last chose.
  • ssa_user_dismissed_notices, which notices you have dismissed.
  • ssa_onboarding_skipped, whether you skipped the setup wizard; it is cleared again the next time the plugin is activated.