Description
FlowMail Campaigns helps site owners create, send, and measure email campaigns directly from WordPress. It includes subscriber management, forms, queued sending, templates, email logs, content update emails, scheduled campaigns, list-based automations, and optional WooCommerce automations when WooCommerce is installed and active.
All features described here are included and functional in this plugin.
Core features
- Email campaigns with templates and placeholders.
- Subscriber forms and subscriber management.
- Internal Bot Shield for public forms with no third-party CAPTCHA service.
- Native block editor blocks for FlowMail forms and subscriber update content.
- Contact forms and selling enquiry forms.
- Email queue, sent email history, and email results.
- Subscriber preferences and unsubscribe handling.
- Content publishing logs and content update emails.
- Scheduled one-time and recurring campaigns.
- Starter campaign sets for weekly emails and UK seasonal dates.
- Optional WooCommerce automations when WooCommerce is installed and active.
- WooCommerce product alerts for back-in-stock, price-drop, and product category new-arrival subscriptions.
- Product alert automations management inside Automations, including category subscription overview and editable alert email templates.
- Manual Google-style review badge and no-API copy/paste review imports.
- Health check and setup tools.
External services
FlowMail Campaigns does not send operational data to FlowPress or to a fixed external API.
By default, emails are sent through WordPress using wp_mail(), which uses the site’s own mail configuration. If the site administrator enables the optional custom SMTP setting, outgoing email is sent to the SMTP server entered by that administrator when an email is sent. Depending on the email being sent, this can include recipient email addresses, sender details, subject lines, message content, and technical email headers.
The SMTP server is not supplied by FlowMail Campaigns and is not required for the plugin to work. Site administrators who enter their own SMTP server details should review the terms and privacy policy for that chosen mail provider.
The plugin also includes an admin-only WP-Cron loopback diagnostic. When an administrator runs that diagnostic, the site sends a request to its own wp-cron.php URL to confirm that scheduled tasks can run. No FlowPress service is contacted for this check.
The Reviews screen includes a manual Google-style review badge and a copy/paste importer for reviews that an administrator chooses to copy from their public Google review page. This feature does not contact Google, does not scrape Google, and does not use a Google API key.
Blocks
This plugin provides 6 blocks.
- FlowMail Subscribe Form
- FlowMail Contact Form
- FlowMail Selling Enquiry Form
- FlowMail Email Preferences
- FlowMail Subscriber Updates
- FlowMail Product Category Subscribe
Installation
- Upload the
flowmail-campaignsfolder to/wp-content/plugins/, or upload the ZIP through Plugins Add New Upload Plugin. - Activate FlowMail Campaigns from Plugins Installed Plugins.
- Open FlowMail Campaigns Settings to configure sender details, SMTP options, forms, and safety settings.
- Create your first campaign under FlowMail Campaigns Campaigns.
FAQ
-
Does this use a third-party email service?
-
No external email platform is required by default. Emails are sent through your WordPress mail configuration. If you configure SMTP, email delivery is handled by the SMTP provider you choose.
-
What data is sent to external services?
-
FlowMail Campaigns does not send operational data to FlowPress. If SMTP is enabled, email data is sent to the configured SMTP provider when an email is sent. This can include recipient email addresses, sender details, subject lines, message content, and email headers.
-
Does FlowMail Campaigns connect to FlowPress?
-
No external FlowPress connection is required for plugin functionality. Links to FlowPress are provided for documentation, support, and product information only.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“FlowMail Campaigns” is open source software. The following people have contributed to this plugin.
Contributors“FlowMail Campaigns” has been translated into 1 locale. Thank you to the translators for their contributions.
Translate “FlowMail Campaigns” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.3.77
- Clarified the Activity System filter so its main badge continues to count important system events only.
- When System is selected, the page now shows explicit Important and All technical choices with a count on both views.
- All technical now reports the full System history count for the selected date window, including grouped routine technical events plus any important system events.
- Added an inline explanation that routine queue, cron, watchdog, maintenance and recovery history remains available without inflating the main Activity totals.
1.3.76
- Removed abandoned-cart sweep maintenance passes from Overview Latest Activity and the default Activity -> All timeline.
- Keeps abandoned-cart sweep history under System -> All technical and aggregates same-day passes, including the total carts marked abandoned.
- Removed auto-discarded Bot Shield/spam form submissions from meaningful Activity while keeping held/blocked submissions visible when they need review.
- Meaningful Activity KPI/filter totals now exclude those maintenance/spam housekeeping rows as well.
1.3.75
- Activity/Overview polish: Overview Latest Activity now uses meaningful events only and hides routine queue/cron/maintenance noise.
- Keeps routine operational events under System -> All technical while warnings/failures remain visible in normal activity.
- Tightens queue/system event classification so failures are never hidden by broad queue-runtime matching.
- Activity KPI/filter counts now exclude hidden routine events; repetitive technical rows remain grouped.
- Uses friendly full timestamps in the Activity timeline while keeping Upcoming separate and true Campaign/Automation types.
1.3.74
- Cleaned the Overview Latest Activity feed so routine queue no-op, cron recovery and maintenance noise no longer displaces meaningful business activity.
- Added System detail controls on the Activity page: Important by default, with All technical available on demand. Routine technical events are grouped to keep the timeline readable.
- Corrected Upcoming classification so scheduled/recurring date campaigns appear as Campaigns while genuine trigger-based sends remain Automations.
- Updated Upcoming cards and dashboard activity timestamps to friendlier site-local date/time labels.
- Kept system failures, overdue/held delivery problems and other actionable errors visible in the normal timeline while deeper diagnostic evidence remains in Health Check and Event Ledger.
1.3.73
- Added a cross-app Activity timeline covering audience, purchases, campaigns, automations, reviews, content and system events.
- Added a dedicated Activity workspace page with area, status, date and search filters.
- Split future scheduled campaigns and queued emails into Upcoming so they are never presented as historical activity.
- Updated the Overview Latest Activity panel to use the global timeline and added a compact Upcoming section.
- Added Activity to the FlowMail workspace navigation and kept low-level technical events in Health Check / Event Ledger.
1.3.72
- Fixed Notification Center queue alerts so future-scheduled pending emails remain normal Waiting to Send activity and do not count as items needing attention.
- Added a 15-minute grace window after the scheduled send time before a pending email is treated as overdue, avoiding false alerts from ordinary WP-Cron timing.
- Failed emails still alert immediately; held/paused emails only alert after their send time is overdue, and genuinely stuck processing items are surfaced.
1.3.71
- Fixed core subscriber automation provenance so hourly Welcome follow-up, inactive, anniversary, birthday and lead-magnet scans record genuine live queue activity as Automatic instead of legacy/unknown.
- Manual birthday/anniversary scans from the Automation Testing Center now record Manual provenance and cannot falsely validate a live trigger.
- Added a bounded one-time repair for legacy Subscriber anniversary queue/log rows whose activity date matches the subscriber join month/day, allowing Email Results and diagnostics to recognise historic automatic anniversary scan activity without treating unrelated legacy sends as proof.
1.3.70
- Reworked the Subscribers Column guide into compact groups that mirror the table: Subscriber, Profile, Engagement, Customer, Acquisition & Preferences, and System.
- Removed non-column material from the guide and moved inactivity-rule and bulk-action guidance into Help & Shortcuts.
- Added concise hover tooltips to subscriber table column headings.
- Made the guide remember its open/closed state and follow Essential/Full view, with the advanced Origin note shown only in Full view.
1.3.69
- Cleaned the Subscribers Interest filter so it only shows customer-facing product/category topics instead of raw internal tags.
- Merged duplicate interest/category aliases into one readable option and excluded product IDs, alert tags, birthdays, source tags, spam/admin metadata, and other system context.
- Updated the Interest table column to show the same clean topic labels used by the filter.
- Kept subscriber-selected email choices under Preference with clearer labels and renamed the table section to Acquisition & Preferences.
- Kept the legacy Interest filter query key for bookmarked admin URLs while matching both historic interest: and category: storage aliases.
1.3.68
- Resolve subscriber acquisition sources from forms, WooCommerce orders/registration, imports and retained provenance.
- Clean up acquisition maintenance controls and preserve tag timestamps during tag updates.
1.3.67
- Makes completed WooCommerce orders the source of truth for customer lifecycle, value tier and recent-buyer status.
- Contacts with no completed orders now show No customer lifecycle yet, Value tier: Not applicable, and Recent buyer: No even if an older managed tag is stale.
- Adds completed-order count to the shared WooCommerce customer facts and calculates lifetime spend from completed orders only.
- Clears cached purchase facts immediately when an order completes so New/Repeat/value-tier classification updates on the same request.
- Adds a one-time background classification repair that removes stale managed customer tags while preserving acquisition, preference, origin, health and manual tags.
- Hardens High-value/VIP safety scans so stale tags cannot dispatch value-tier automations to non-purchasers.
1.3.66
- Adds Welcome email and Welcome follow-up milestones to the Subscriber Customer journey, including future scheduled welcome mail that automatically becomes a sent milestone after delivery.
- Adds the latest genuine Subscriber anniversary milestone only after at least one full calendar year has passed since joining FlowMail.
- Enriches a valid anniversary milestone with the anniversary email subject when that email was sent.
- Keeps the historic same-year anniversary misfire visible in Email engagement as factual send history, but excludes it from Customer journey so it is never presented as a real anniversary.
1.3.65
- Prevents Subscriber anniversary from firing in the subscriber’s original signup year; the first anniversary is now one full calendar year after joining.
- Keeps anniversary sends recurring annually on the join month/day after the first year, with the existing per-anniversary de-duplication.
- Updates Customer Simulation and testing guidance so same-year join dates correctly report that the first anniversary has not yet been reached.
- Clarifies anniversary wording in automation descriptions and diagnostics.
1.3.64
- Treats future-scheduled automation emails as healthy queue work rather than Health Check warnings.
- Automation firing diagnostics now separate scheduled, due-soon and genuinely attention-needed queue items.
- Waiting to Send sidebar counts remain informational blue when all queued mail is scheduled normally, turning amber only when something is overdue, held, paused, failed or stuck processing.
- Uses canonical automation display names in automation firing diagnostics.
1.3.63
- Keeps New customer before Repeat customer when WooCommerce records the first two completed orders within the same minute, so the customer journey remains logically ordered.
- Compacts engagement emails individually when their detailed open/click/site/order evidence has expired, even if newer retained engagement events still exist for the same subscriber.
- Replaces repeated empty engagement-stage boxes with one scan-friendly row showing send time, canonical email name, source type, and an honest retained-detail status.
- Keeps the full Sent Opened Clicked Site activity Order/goal journey only for emails that still have retained evidence.
1.3.62
- Consolidates the subscriber profile into clearer Profile, Journey, Purchases, Subscriptions, Engagement, and Delivery areas.
- Removes the duplicate Subscriber overview card and moves its unique identity and engagement details into the main profile context panel.
- Combines marketing preferences with product/category alerts in one Subscriptions & preferences section.
- Combines double opt-in and bounce/suppression information in one Consent & delivery health section.
- Makes Engagement journey the primary email-history view and moves raw sent/open/click tables into a collapsed Technical email records disclosure.
- Compacts historical engagement journeys when detailed event rows have expired, avoiding repeated empty Opened/Clicked/Site/Order boxes.
- Uses Imported to FlowMail wording in the at-a-glance summary when the subscriber was imported.
1.3.61
- Adds a grouped subscriber Engagement journey: Sent Opened Clicked Site activity Order/goal.
- Groups retained engagement by email instead of showing only raw open/click rows.
- Adds All, Campaigns, Automations, and System filters plus Show all/Show fewer controls.
- Distinguishes test emails and directly attributed WooCommerce orders.
- Improves the Customer journey latest-engagement milestone with the actual email name/subject when retained tracking detail exists.
- Clearly explains when older detailed engagement rows have been cleaned up while lifetime totals remain.
1.3.60
- Polished Subscriber profiles with a compact relationship summary showing FlowMail join date, customer-since date, completed orders, spend, latest purchase and latest engagement.
- Added persistent collapsible profile sections with smart defaults, per-subscriber saved state, and Expand all / Collapse all controls in the sticky jump navigation.
- Product/category alerts, opt-in activity and healthy deliverability sections now collapse automatically when there is nothing requiring attention; purchase and journey sections stay open by default.
- Email Activity now has a compact collapsed summary while retaining expandable sent/open/click tables and remembers table expansion state per subscriber.
- Imported subscribers now show an explicit “Imported into FlowMail” journey milestone, clarifying when customer activity predates the FlowMail record.
- Purchase summaries now distinguish unique products from total item quantity.
- Subscriber sidebar totals remain informational blue even when pending confirmations exist; pending context remains available in the badge description.
1.3.59
- Reworked Subscriber profiles into a more compact desktop layout with quick navigation and a new Customer journey timeline.
- Customer journey reconstructs key retained milestones such as subscriber added date, double opt-in confirmation, first completed order, repeat-customer milestone, current High-value/VIP threshold crossings, first review, latest purchase, and latest email engagement where data exists.
- Spend-tier journey dates are explicitly based on the currently configured High-value/VIP thresholds so historical threshold changes are not overstated.
- Long Subscriber-profile tables now open as concise previews and can be expanded/collapsed in place, including purchased products, product/category alerts, sent emails, and retained open/click events.
- Subscriber Email Activity now uses the same canonical automation names as Automations, Email Results, Campaign Activity, Sent Emails and the Testing Center.
1.3.58
- Sent Emails now uses one Email source filter covering regular campaigns, customer automations, workflows, and built-in System automations such as product price-drop, back-in-stock, and category new-arrival alerts.
- The source dropdown is grouped into Campaigns & automations and System automations, while older campaign_id deep links remain supported.
- Sent Email row Actions now uses the same visible dropdown caret pattern as other FlowMail tables.
- Reworked Full-view column controls into an inline expandable panel so Log ID, Queue ID, Subject, and Failure reason options cannot be clipped or hidden by the table layout; column choices remain saved in the browser.
1.3.57
- Added smart sidebar count badges across the FlowMail Control Centre so key numbers are visible without opening each page.
- Subscribers now shows total contacts with pending-confirmation context; Forms shows saved forms; Inbox shows unread Inbox/Held items since the current administrator last viewed it.
- Campaigns shows campaign volume, Automations shows active UI-level automations with workflow steps collapsed, Reviews shows review volume with pending context, and Google Reviews shows imported Google review count.
- Waiting to Send shows actionable queue work, Sent Emails shows live sends from the last 30 days with test deliveries excluded, Templates shows available template count, Publishing Log includes scheduled/draft/published items, and Health Check shows only warnings/failures that need attention.
- Sidebar badges now include descriptive hover/accessibility labels and use amber/red emphasis only for attention/failure counts.
1.3.56
- Standardised customer-facing automation names so the same automation is labelled consistently across Automations, Email Results, Campaign Activity, Testing Center, Event Ledger, Waiting to Send, Sent Emails, Revision History, dashboard summaries, and diagnostic labels.
- New customer, repeat customer, high-value, lapsed high-value, VIP, inactivity, post-purchase, review and abandoned-cart workflow labels now use one canonical display name while preserving existing internal trigger keys and stored history.
- Workflow steps use clear canonical names such as Abandoned cart — Step 1 and Post-purchase follow-up — Step 2, while technical trigger keys remain available only where they are useful for diagnostics.
- New starter automations are created with the same canonical names so future stored data naturally matches the reporting UI.
1.3.55
- Renamed the customer-purchase trigger label from First order to New customer — first order across Automations, Quick Test, Trigger Simulator, and dashboard trigger labels, while preserving the internal new_customer trigger key.
- Quick Automation Test now keeps the subscriber email populated after Preview result or Send test email so repeated diagnostics do not require re-entering the address.
- Quick Test result summaries now show the human-readable trigger label instead of the internal trigger key, and pre-send safety headings use the same friendly trigger label plus campaign ID.
1.3.54
- Quick Test dry runs now inspect the same central final-send safety gate used by the live queue processor, without sending or writing audit records.
- Dry-run results show a Pre-send safety check with PASS/BLOCKED status, suppression code, individual safeguards, and rolling 24-hour automation usage.
- The preview clearly separates queue eligibility from the later final-send decision, including a note that delayed automations are checked again when actually due.
- Quick Test and Trigger Simulator redirects now carry a signed testing-state nonce so matched-campaign and safety breakdowns are displayed reliably after a simulation.
- Dry runs explicitly state that no Automation Event Ledger record is written and describe the stages a genuine live event would create.
1.3.53
- Revision history now captures one automatic baseline for existing campaigns/automations and creates later revisions only when FlowMail configuration genuinely changes; no-op saves are ignored.
- Existing consecutive duplicate revision snapshots are compacted automatically, and legacy pre-save rows are normalized to a single baseline.
- Revision History now uses Automation/Campaign-specific headings, human-readable change summaries, friendlier delay labels, a disabled Current revision state, and a stronger restore confirmation.
- Removed the redundant Test automation & delivery and Check audience match buttons from Automation Selected row actions; Test & diagnostics remains the single contextual entry point to the Testing Center.
- Live results consistently exclude diagnostic test deliveries in the Results Consistency health check, Dashboard email performance, Sent Emails, campaign recipient history, opens/clicks, and live queue totals.
- Test-delivery clicks can no longer create WooCommerce revenue attribution cookies or direct order attribution; legacy direct attribution pointing at a test queue is ignored by revenue reports.
1.3.52
- Fixed Revision history routing so contextual Campaign/Automation links remain accessible to authorised administrators while the page stays hidden from the permanent WordPress submenu.
- Removed the add-then-remove submenu registration pattern that could trigger WordPress’ “Sorry, you are not allowed to access this page” guard for pmcpc_campaign_revisions.
1.3.51
- Fix the production Tracking self-test to validate the real tracking controller behind the back-compat facade, eliminating a false failure.
- Version production self-tests so updated runtime checks refresh immediately after an upgrade instead of showing a stale cached result.
- Rename the Health Check headline metric to Diagnostic tests and label its count as registered diagnostic checks.
- Give Setup overview its own Setup checks / Healthy / Attention summary so setup status is not confused with the separate diagnostic-test totals.
1.3.50
- Added a durable Automation Event Ledger with correlation IDs so trigger detection, campaign/audience evaluation, suppression, queue creation, processing and delivery/failure can be traced as one event chain.
- Added a final central send-safety gate for live automations, including subscriber/activity checks, bounce suppression, automation-active checks and an optional per-recipient 24-hour automation email cap.
- Added standard suppression reason codes to queue records and audit evidence, including invalid recipient, inactive/missing subscriber, duplicate/abandoned-cart suppression and rate-limit outcomes.
- Added a non-destructive production self-test covering database writes, cron scheduling, queue backlog, recorded delivery evidence, tracking and missed-trigger watchdog state, with compact System Health summaries on key admin pages.
- Added campaign/automation configuration revision snapshots and restore controls so edits and status changes have rollback points.
- Integrated Selected row actions with the existing Automation Testing Center: Test & diagnostics now opens the central testing tools already focused on the selected automation; Event ledger and Revision history are available alongside it. Manual/scheduled campaigns use delivery diagnostics and revisions without duplicating automation-only testing tools.
- Added database indexes and configurable low-value ledger retention to keep the growing diagnostics/history data efficient while preserving important delivery, failure and suppression evidence.
1.3.49
- Product/category alert forms now collect a required first name alongside email so System signups use the same identity spam checks as other public FlowMail forms.
- Product-alert requests now store first name independently as well as linking it to the FlowMail subscriber record, with safe backfill from existing subscriber/user data where available.
- System alert submissions now run the shared subscriber spam evaluator after Bot Shield, including rate/domain/email-pattern/name checks; blocked/held attempts do not create alert requests or confirmation emails.
- Current subscribers / requests now shows a consistent Name, Email, Request/category, Date and Status view, while retaining detailed product-alert management controls.
- Added {first_name} as an editable System product-alert email placeholder.
1.3.48
- Adds a dedicated Test deliveries tab to Campaign Activity for automations, while keeping test records excluded from all live results.
- Makes empty live-result views explain when test deliveries exist and links directly to the separate test-delivery history.
- Labels test rows clearly and explains that a delivery test proves render/queue/mail delivery, not a natural automation trigger.
- Adds a direct View test deliveries link from Trigger activity diagnostics.
1.3.47
- Clarified legacy automation diagnostics by labelling historical counts as being since the diagnostic baseline when the original activation date is unknown.
- Trigger health now distinguishes a successful delivery test from live-trigger verification and explains that new qualifying events are monitored by the missed-trigger watchdog.
- Trigger activity now counts genuine automatic live trigger records only; test, manual and recovery sends remain separate.
- Health Check now shows successful delivery-test proof separately from live automation trigger proof.
1.3.46
- Added an automation delivery test from Email Results that runs through the real queue and reports the resulting queue/send state.
- Added trigger diagnostics showing qualifying-event checks, automatic trigger records, and test deliveries separately.
- Health Check now ignores test sends as proof of live automation firing and correctly treats repeat-customer as a second-order-only trigger.
- Test sends are excluded from normal campaign delivery/open/click reporting.
1.3.45
- Aligned System automation Email Results with the Campaign/Automation visual language: Health badges, Delivery bars and Decision styling now load on the standalone System report.
- Added explicit system delivery validation proof: Delivery validated, Automatic trigger verified · delivery failed, Test activity only, or Not validated yet.
- Scaled System delivery bars consistently across requests, real sends, failures and tests while keeping live requests clearly separate from funnel conversion.
1.3.44
- Reorganised Email Results into Campaigns, WooCommerce, Subscribers and System so similar email types are measured together; removed the mixed All email view.
- Split normal trigger automations into WooCommerce customer/order/cart/review journeys and subscriber/list journeys, with group-specific KPI cards and wording.
- Chose Subscribers rather than WordPress as the reporting label because FlowMail subscribers can exist independently of WordPress user accounts.
- Moved System results into their own reporting family with system-specific KPIs and date-range filtering.
- Added Double opt-in reminder & cleanup to System reporting alongside product back-in-stock, price-drop and category-new-arrival automations.
- Kept compatibility for old Automations, All email and WordPress result URLs by mapping them into the new reporting families.
1.3.43
- Added a compact Set sale price control directly to in-stock active price-drop requests in Essential view, so stock can be reduced without switching to Full view or opening WooCommerce.
- The quick sale action immediately re-checks the product after saving and shows the requested-price threshold needed to notify all current requesters.
- Kept the existing detailed product actions in Full view and hides the compact duplicate there.
1.3.42
- Split one-off product alerts into active requests and recently notified history so successful price-drop/back-in-stock alerts remain visible after they are completed.
- Added requested price directly to Essential request rows and now records the exact product price at the time a one-off alert is successfully sent.
- Added requested/notified price and request/notified dates to recent alert history, while clearly marking older deliveries whose notification price predates this logging field.
- Removed the unnecessary horizontal scroll from System automation results Essential view by keeping Actions and system-only metrics in Full view.
1.3.41
- Expanded price-drop and back-in-stock request management with live stock state, current/regular/sale price, captured requested price, due-now counts and last-notified status.
- Added admin controls to set a WooCommerce sale price directly from an alert request and immediately re-check due product alerts, plus a manual Check/Send action for individual products.
- Corrected product-alert consent checks so an active one-off alert remains independently deliverable after a later marketing unsubscribe, while pending opt-in and deliverability suppression still block sends.
- Added missed back-in-stock recovery and Health Check diagnostics alongside the existing price-drop/category recovery paths.
- Versioned the product-alert maintenance pass so existing active requests are rechecked after upgrade.
1.3.40
- Made WooCommerce price-drop alerts resilient to admin-save timing/cache issues by rechecking after the product object is fully saved and again at shutdown/short cron fallback.
- Added persisted-price comparison and missed price-drop recovery so active requests whose current price is already below the watched price are detected and retried.
- Health Check now reports missed price-drop delivery candidates and schedules recovery automatically.
1.3.39
- Reworked System automation results to mirror the main Email Results automation layout with Health, Delivery, Decision and Actions columns.
- Added Essential/Full table behaviour for system automations while keeping request, sent, failed, test and last-activity metrics available in Full view.
- Added delivery-health and decision guidance for product-alert system automations, plus consistent action menus.
- Updated shared analytics table view logic so Automation, Email and Delivery columns remain visible in Essential view.
1.3.38
- Fixed product category new-arrival delivery so first-publish alerts are rechecked after WooCommerce has saved category assignments, with a short scheduled fallback and recent-miss recovery.
- Added product-alert send/failure logging and a System automation results panel in Email Results for back-in-stock, price-drop and category new-arrival emails.
- Expanded Health Check product-alert diagnostics to show active requests, recent system sends and recent category new-arrival gaps instead of only confirming that hooks are connected.
- Sent Emails now identifies logged product-alert messages as System automations and links them back to their automation settings.
1.3.37
- Renamed the subscriber profile Automatic context panel to System context and clarified the separation between acquisition history and current product/category subscriptions.
- Product/category alert source tags are now added only when that alert actually creates the FlowMail subscriber; adding an alert to an existing subscriber no longer changes their acquisition source.
- Preserved genuine product/category acquisition history when subscriptions are later cancelled, and filtered legacy alert source labels from Acquisition when the alert was created well after the subscriber joined.
1.3.36
- Aligned the Subscribers table so Interest shows internal/manual CRM tags and Preference shows subscriber-selected email preferences.
- Updated Interest and Preference filters to match the corrected column meanings and made email preference labels easier to scan.
- Cleaned acquisition/source labels throughout the subscriber list and profile so stored prefixes and slugs such as source:product-alert display as readable labels.
1.3.35
- Corrected the Subscribers Customers KPI so it counts only lifecycle-tagged IDs that still belong to current FlowMail subscriber records.
- Applied the same current-subscriber guard to health KPI counts so orphaned tag rows cannot inflate dashboard totals.
- Fixed the Customers KPI link so it opens the existing Customer filter on the Subscribers table.
- Versioned the short-lived subscriber KPI cache so corrected counts appear immediately after upgrade.
1.3.34
- Separated internal manual tags from subscriber email preferences on the subscriber profile and removed duplicate preference wording.
- Clarified retained tracking-event rows versus lifetime engagement totals after queue/event cleanup.
- Marks future admin trigger-simulation deliveries as test sends, labels them in subscriber history, and excludes them from the normal sent total.
1.3.33
- Separated WordPress account deletion from FlowMail subscription status: deleting a WordPress/WooCommerce user no longer unsubscribes or deletes the matching subscriber.
- When a WordPress account is later created with an email already known to FlowMail, account-facing subscriber flags are relinked from the existing subscriber status without changing consent.
1.3.32
- Replaces the clipped Waiting queue row Actions dropdown with the same selected-row action pattern used elsewhere in FlowMail.
- Clicking a queue row now highlights it and shows Send/Retry/Release, recipient activity, campaign or automation, subscriber profile, and safe removal actions in a dedicated panel above the table.
- Hides the inline Actions column only after the selected-row control has initialised, preserving a fallback if JavaScript is unavailable.
1.3.21
- Audience Check can now safely queue current no-history matches for state-based automations only.
- Queue eligible customers re-checks current state, audience rules and campaign history before inserting anything.
- Health Check now compares Subscriber inactive, Customer inactive and Lapsed high-value current audiences against queue/send history, alongside High-value and VIP.
- Audience matching for Lapsed high-value now uses the configured spend and purchase-inactivity thresholds.
- High-value audience catch-up no longer includes customers already in the VIP tier when an active VIP automation exists.
1.3.20
- Check audience match now opens a dedicated read-only Automation Audience Check instead of asking for a customer email first.
- Shows the number of subscribers who currently match the selected automation, why they match, and whether that automation already has queue/send history for them.
- Customer Simulation remains available separately for checking one specific subscriber.
- No emails are queued or sent by the audience check.
1.3.19
- Fixes Check audience match so it is read-only and never queues or sends a test email.
- Automation Check audience match now opens Customer Simulation focused on the selected trigger, where one subscriber can be checked safely.
- Adds focused match feedback showing whether the selected automation would queue, is filtered out, or is already queued/sent.
- Makes Subscriber inactive available in dry-run customer simulation and evaluates the configured engagement-inactivity threshold before reporting a match.
- Aligns live segment filtering with the configured Recent buyer, Lapsed customer, High-value and VIP settings, and adds the missing Recent 7-day and At-risk 60-day segment filters.
- Campaign Check Audience / Test audience match only now performs a no-send live audience count instead of sending to the admin address.
1.3.18
- Makes Subscriber inactive threshold the single source of truth for Subscribers Engagement bands and the inactive automation.
- Engagement bands now scale automatically with the configured threshold (90 days remains 0–30 Engaged, 31–60 Quiet, 61–89 Fading, 90+ Inactive).
- Never-engaged subscribers now age from the same inactivity reference used by the automation and become Inactive when the threshold is reached instead of remaining “No opens” indefinitely.
- Adds Engagement band filters and aligns the Subscribers Inactive KPI/quick filter with the configured threshold and reference chain.
- Centralises the inactivity reference timestamp used by automation matching and preview/audience checks to reduce future drift.
1.3.17
- Added separate white bordered cards for Value tiers, Purchase lifecycle and Engagement inactivity on Customer classification & automation settings.
- Kept all classification logic and thresholds unchanged; Advanced classification tags remain collapsed by default.
1.3.16
- Reorganised Customer classification & automation settings into Classification engine, Value tiers, Purchase lifecycle and Engagement inactivity sections.
- Moved raw customer classification tags into a collapsed Advanced section with a compatibility warning.
1.3.15
- Clarified inactivity automation types: Subscriber inactive is engagement inactivity, Customer inactive is purchase inactivity, and Lapsed high-value combines purchase inactivity with the High-value tier.
- Added separate configurable thresholds for Subscriber inactive (default 90 days) and Lapsed high-value (default 90 days), while keeping the general Lapsed customer threshold separate (default 180 days).
- Fixed inconsistent Subscriber inactive logic that previously used different 30-day and 180-day values in different parts of FlowMail; runtime, previews, audience checks and insights now use the same configured threshold.
- Renamed engagement recency badges to Engaged, Quiet, Fading and Inactive so they no longer conflict with the separate Hot/Warm/Slipping/Cold Health indicator.
- Updated automation opportunity/segment calculations to use the same configured lifecycle and value-tier thresholds as Subscribers, including VIP and Lapsed audiences.
- Aligned WooCommerce win-back dashboard counts and wording with the configured Customer inactive/Lapsed purchase threshold instead of a separate hard-coded 90-day window.
1.3.14
- Subscribers now combines Source and Origin into one Acquisition column, with Source shown prominently and Origin shown underneath only when it adds context.
- Source and Origin remain separate internally so existing targeting, audit history and filters continue to work; the advanced Origin filter is available in Full view.
- Renamed the Subscribers table section from “Tags & Source” to “Acquisition & Tags” and updated the Column guide to match.
- Subscriber profiles now present Source and Origin together as Acquisition context without discarding the underlying audit data.
1.3.13
- Fixed Email Results selected-row actions so select-based row actions render as proper individual buttons rather than concatenated plain text.
- Preserved confirmation prompts for destructive or state-changing selected-row actions.
1.3.12
- Email Results now separates Campaigns and Automations with dedicated result-type tabs, while retaining an All email view.
- Automation summary …






