wprigel logo
  • Home
  • Products
    • krom-automation-icon

      Krom Automation

      Build visual workflows that respond to signups, orders, forms, and posts- automatically. Free plugin, no monthly fees.
    • commandify-logo-pink

      Commandify- Best Command Palette Plugin for WordPress

      Navigate, search, and manage everything on your site with a simple keyboard-first workflow.
    • pollify plugin logo

      Pollify- Ultimate Poll Creator Plugin for WordPress

      Build interactive polls, surveys & voting experiences in WordPress with the best Gutenberg-native poll plugin.
  • Docs
  • Blog
  • Contact Us
  • Login
Pricing
  • WooCommerce Order Alerts to Slack and SMS with Twilio

    You can route WooCommerce order alerts to both Slack and Twilio SMS simultaneously using Krom Automation Pro, with no code and no third-party middleware. One workflow, triggered by an Order Created or Order Completed event, fans out to both channels in under 30 seconds. Pro is required for the Slack and Twilio actions.

    The gap this fills is real. Tools like Zapier and n8n keep their tutorials at the “what’s possible” level.

    Nobody walks through the exact field names, the exact merge tags, and what actually breaks when order volume spikes or a Twilio API key expires. This guide does that.

    We will cover building the dual-channel workflow step by step, which fields map to which destinations, when to use Slack versus SMS, and the three failure modes that catch teams off guard.

    Browse the full feature list to see what else Krom Automation handles beyond order alerts.

    Quick Summary

    • Plugin required: Krom Automation Pro (free version handles WooCommerce triggers but Slack and Twilio actions are Pro only)
    • WooCommerce triggers used: Order Created, Order Completed
    • Destinations: Slack channel message, Twilio SMS to a fixed number or a dynamic customer number
    • Setup time: 15 to 20 minutes for both channels on one workflow
    • What you need: A Slack Bot token, a Twilio Account SID, Auth Token, and a purchased Twilio phone number

    What Gets Synced: Field Mapping Table

    Every field below is injected using a merge tag. Merge tags pull live data from the trigger event into the action fields at execution time, so the message your team receives contains the real order values, not placeholders.

    WooCommerce Order Field Merge Tag Where It Lands
    Order ID {{order.id}} Slack message body, SMS message body
    Order total {{order.total}} Slack message body, SMS message body
    Order status {{order.status}} Slack message body
    Customer full name {{order.billing_first_name}} {{order.billing_last_name}} Slack message body
    Customer email {{order.billing_email}} Slack message body
    Customer phone {{order.billing_phone}} Twilio “To” field (dynamic customer SMS) or logged in Slack
    Product names {{order.items}} Slack message body
    Payment method {{order.payment_method_title}} Slack message body
    Billing city {{order.billing_city}} Slack message body (useful for geographic routing)
    Admin order URL {{order.admin_url}} Slack message body as a clickable link

    The customer phone field deserves a note. If you want the SMS to go to the customer rather than your operations team, use {{order.billing_phone}} in the Twilio “To” field.

    If that field is blank in WooCommerce, the action fails. We cover that failure mode in the troubleshooting section below.

    When to Use Slack vs SMS

    Both channels carry the same order data, but they serve different team behaviors. Choosing the wrong one for a given situation adds noise rather than speed.

    Situation Better Channel Reason
    Team needs to discuss or act collectively on an order Slack Threaded replies keep context together; anyone on the channel can pick it up
    One person is on call and may not have Slack open Twilio SMS SMS arrives regardless of app state; no notification settings to misconfigure
    High-value order requiring immediate human attention Both Slack for the team record, SMS to the owner’s mobile as a redundant alert
    Customer confirmation of their own order Twilio SMS to customer phone Customers do not have Slack; SMS is the correct channel
    Store processing 100+ orders per day Slack only, with conditional filters SMS at that volume becomes a nuisance; use conditions to send SMS only above a threshold order total
    Subscription renewal or repeat order Slack only Routine events do not warrant interrupting a phone; log them for visibility only

    Sending every order to SMS is not a notification strategy. It is a way to train your team to ignore their phones.

    What You Need Before You Start

    Collect these credentials before opening the workflow builder. Missing any one of them mid-setup wastes time.

    • Slack Bot Token: Create a Slack app at api.slack.com, add the chat:write scope under OAuth and Permissions, install it to your workspace, and copy the Bot User OAuth Token (starts with xoxb-)
    • Slack Channel ID: In Slack, right-click a channel name, choose View Channel Details, and scroll to the bottom. The channel ID looks like C0123456789. Do not use the channel name; use the ID.
    • Twilio Account SID: Found on the Twilio console homepage under Account Info
    • Twilio Auth Token: Same location, next to Account SID. Treat this like a password.
    • Twilio “From” number: A purchased Twilio phone number in E.164 format, for example +14155551234
    • Krom Automation Pro installed and active: The free plugin must also be active alongside it. See the Pro installation guide if you have not done this yet.

    Step-by-Step Setup

    Step 1: Create a New Workflow

    Go to WordPress Admin Krom Automation Workflows Add New. The visual canvas opens on a blank workflow. Give it a name in the Workflow Name field at the top, for example “WooCommerce Order Alert: Slack + SMS”.

    Open the visual workflow builder documentation in a separate tab if this is your first time on the canvas. The builder uses ReactFlow with auto layout, so nodes snap into position automatically as you add them.

    Step 2: Set the Trigger

    Click Add Trigger on the canvas. From the trigger panel, select WooCommerce Order Created if you want the alert at the moment of purchase, or WooCommerce Order Completed if you want it when the order fulfillment is confirmed.

    For most physical goods stores, Order Created is more useful operationally. For digital or service stores, Order Completed avoids notifying the team before payment clears.

    No additional configuration is required on the trigger node itself. Save the node.

    Step 3: Add the Slack Action

    Click Add Action below the trigger node. Select Messaging Send Slack Message.

    Fill in the following fields exactly:

    • Bot Token: Paste your xoxb- token here
    • Channel ID: Paste the channel ID, for example C0123456789. Not the channel name.
    • Message: Write your alert text and insert merge tags using the tag picker on the right side of the field. A useful starting template: New order #{{order.id}}, {{order.billing_first_name}} {{order.billing_last_name}}, ${{order.total}}, {{order.admin_url}}

    Save the action node. The canvas now shows Trigger Slack Action.

    Step 4: Add the Twilio SMS Action

    Click Add Action again, parallel to the Slack node rather than below it. You want both actions to fire from the same trigger, not sequentially. Select Messaging Send SMS via Twilio.

    Fill in these fields:

    • Account SID: Your Twilio Account SID
    • Auth Token: Your Twilio Auth Token
    • From: Your purchased Twilio number in E.164 format, for example +14155551234
    • To: Either a fixed number for your operations team (for example +447911123456) or {{order.billing_phone}} if you want the SMS to go to the customer. Choose one, not both in the same action. Add a second Twilio action if you need both.
    • Message: Keep it under 160 characters to avoid multi-part SMS billing. A template that fits: Order #{{order.id}}: ${{order.total}} from {{order.billing_first_name}}. Check Slack for details.

    Save the action node. The full messaging integrations documentation covers every field for both Slack and Twilio in detail.

    Step 5: Add a Conditional Branch (Optional but Recommended)

    If you only want the SMS to fire for orders above a certain value, click Add Condition between the trigger and the Twilio action. Set the condition to Order Total [your threshold], for example 150.

    The Yes path fires the SMS. The No path fires nothing, or you can route it to Slack only.

    The conditions and branching documentation explains how to combine multiple order field conditions, for example filtering by product category or billing country alongside order total.

    Step 6: Test with the Simulator

    Before activating, click Simulate in the top toolbar. The workflow simulator runs a dry pass through every node using sample data and reports which actions would fire and with what values.

    No real Slack message or Twilio SMS is sent during simulation. This catches misconfigured tokens and bad merge tag syntax before a real order triggers the workflow.

    Once the simulation passes, toggle the workflow to Active and save.

    Test with the simulator before going live. A Twilio Auth Token pasted with a trailing space costs you the first real order alert and five minutes of debugging.

    What Does NOT Transfer

    Every integration article covers what works. This section covers what does not, because that is the part teams discover at the worst possible moment.

    • Order line item images: Slack cannot render WooCommerce product images via a bot message. You get product names via {{order.items}}, not thumbnails.
    • Refund and partial refund events: The Order Created and Order Completed triggers fire on creation and completion. They do not fire when a refund is processed. You need a separate workflow on Order Status Changed, filtered to the “Refunded” status.
    • Custom order meta fields: Fields added by third-party plugins, such as a custom delivery date picker, are not automatically available as merge tags. You need the HTTP Request action to fetch that data from the WooCommerce REST API if it matters for your alert.
    • Two-way SMS replies: Krom Automation sends outbound SMS via Twilio. It does not currently listen for inbound replies. If a customer texts back, that goes to Twilio only and does not appear in Slack or Krom Automation’s execution log.
    • Slack interactive buttons: The Slack action sends a standard text message. It does not support Block Kit buttons that trigger actions when clicked. For a “Mark as packed” button in Slack that updates WooCommerce, you would need the incoming webhook receiver plus a custom Slack app configuration.
    • Order edits post-creation: If an admin edits the order total or changes the shipping address after the fact, the original alert is not updated. The Slack message and SMS reflect the order as it existed when the trigger fired.

    Troubleshooting

    Failure Mode 1: Slack Message Not Arriving

    The most common cause is using the channel name instead of the channel ID in the Channel ID field. Slack’s API requires the ID format (C0123456789), not #orders or orders. The second most common cause is the bot not being invited to the channel.

    In Slack, type /invite @YourBotName in the target channel. Without that invite, the bot has the scope to post but not the access to the specific channel.

    Check the execution log in Krom Automation Execution History for the exact error code Slack returns. A channel_not_found error confirms the ID issue. A not_in_channel error confirms the invite issue.

    Failure Mode 2: Twilio SMS Fails with a 21211 Error

    Error 21211 from Twilio means the “To” number is not a valid phone number. This happens in two situations. First, the customer left the phone field blank in WooCommerce checkout, so {{order.billing_phone}} resolves to an empty string.

    Second, the number is in a local format like 07911123456 rather than E.164 format like +447911123456. Twilio requires E.164 for all numbers, including the “From” field.

    The fix for blank customer phones is a condition node before the Twilio action: check that {{order.billing_phone}} is not empty, and route the Yes path to the SMS action. The No path can post a note in Slack flagging the missing number.

    Failure Mode 3: Alerts Arrive Late or Not at All Under Low Traffic

    Krom Automation runs background execution via Action Scheduler, which depends on WP-Cron to fire. On a staging site or a low-traffic store where no page loads happen for hours at a time, WP-Cron fires late, and so does the workflow. The fix is a real server-side cron job that hits wp-cron.php every minute, replacing the default WordPress pseudo-cron.

    Most managed WordPress hosts offer this in the control panel. If yours does not, a five-line crontab entry handles it. This affects all Action Scheduler-based plugins, not only Krom Automation.

    A workflow that fires 40 minutes after an order lands is not an alert system. Cron on a low-traffic store needs a real server-cron job, not WordPress’s default pseudo-cron.

    Cost Breakdown: Year 1 and Beyond

    The question most teams do not ask until they get the invoice is what this actually costs across all the moving parts.

    Component Cost Notes
    Krom Automation Pro (Basic, 1 site, annual) $119/year Covers every Pro feature including all messaging actions
    Krom Automation Pro (Standard, 5 sites, annual) $199/year Useful for agencies running client stores
    Krom Automation Pro (lifetime, 1 site) $299 once Breaks even versus annual at 2.5 years
    Slack $0 for alerts A free Slack workspace receives bot messages. No paid Slack plan required for this use case.
    Twilio SMS (US domestic) ~$0.0079 per outbound SMS At 500 orders per month, that is about $4/month. International rates vary significantly.
    Twilio phone number ~$1/month Per number, per month

    At 500 orders per month, the Twilio cost for sending one SMS per order runs to roughly $5 per month. At 5,000 orders, that is $50 per month.

    wpRigel does not charge per workflow execution or per action at any tier, so the Krom Automation cost stays flat regardless of volume. The only variable cost is what Twilio charges.

    Going Further: Related Automations Worth Pairing

    The Order Created and Order Completed triggers are the most obvious starting points, but WooCommerce stores typically need a handful of other alert and action workflows running alongside them. The WooCommerce Subscriptions integration adds triggers for subscription renewals, failures and cancellations, all of which are worth routing to Slack for your retention team.

    If your store uses WPForms or Gravity Forms to collect pre-sale inquiries, those can feed into the same Slack channel using the WPForms integration or the Gravity Forms integration, so lead and order alerts live in one place without switching tools.

    For stores preparing for high-volume periods, the post on preparing your WooCommerce store for Black Friday covers the automation stack specifically worth having in place before a traffic spike. The 20 WordPress automations most sites should have is a useful checklist for anything beyond order alerts.

    Also from wpRigel

    Pollify is our Gutenberg-native poll, survey and quiz plugin. Every poll is a real block inside the block editor, so there are no shortcodes to paste and no separate interface to configure. It fits naturally into product pages, post-purchase thank-you pages, or any content where you want audience input without leaving the editor.

    Commandify is a command palette for the WordPress admin. Press Cmd or Ctrl plus K from anywhere in the admin, type what you need, and get there without clicking through menus. It is the only command palette with real WooCommerce depth: you can search orders by number or customer name, change order status, and update product prices directly from the palette.

    Our Verdict

    If your WooCommerce store processes more than 30 orders per day and your team relies on refreshing the admin dashboard to know what is coming in, a Slack plus SMS alert workflow is not a nice-to-have. It is a basic operational requirement. Setting it up with Krom Automation Pro takes under 20 minutes, carries no per-execution fees, and keeps every credential and execution log inside your own WordPress database rather than a third-party platform.

    Who should not bother: stores doing fewer than 10 orders per day where the owner checks the dashboard regularly anyway. At that volume, the setup time exceeds the time saved for at least the first few months. Start with the free version on the WordPress.org plugin directory to get familiar with the workflow builder before committing to Pro.

    Who should act now: any agency managing WooCommerce stores for clients, any store with an operations team split across time zones, and any store where an order that sits unacknowledged for 30 minutes causes a real problem. See the full pricing and plan options and pick the tier that matches your site count.

    Frequently Asked Questions

    Do I need Krom Automation Pro to send WooCommerce alerts to Slack and Twilio?

    Yes. The WooCommerce triggers (Order Created, Order Completed) are available in the free version, but the Slack and Twilio SMS actions are Pro-only features. The free version supports 21 actions including HTTP Request, which is an alternative for advanced users comfortable building a custom webhook payload, but for a no-code setup you need Pro.

    Can I send the SMS to the customer instead of my team?

    Yes. In the Twilio action’s “To” field, use the merge tag {{order.billing_phone}} instead of a fixed number.

    If the customer did not provide a phone number at checkout, the action fails. Add a condition node before the Twilio action to check that the phone field is not empty, and route orders without a phone number to a Slack flag instead.

    What happens to my alerts if the Twilio API is down?

    Krom Automation logs the failed execution and retries automatically with configurable backoff. You will also receive a failure notification by email.

    The Slack action and the Twilio action are independent nodes, so a Twilio API outage does not prevent the Slack message from arriving. Your team still gets the order notification in Slack; only the SMS is delayed until the retry succeeds.

    Is there a limit on how many workflows I can run per month?

    No. Krom Automation does not impose per-execution limits or per-workflow caps at any plan tier.

    Every plan, including the free version, runs unlimited executions. The only external usage costs are from Twilio, which charges per SMS sent at approximately $0.0079 per message for US domestic numbers.

    Can I route different order values to different Slack channels?

    Yes, using conditional branching. Add a condition node after the trigger and set the rule to Order Total greater than your threshold. The Yes path points to a high-value-orders Slack channel, the No path points to a standard-orders channel.

    You can chain multiple conditions to create as many tiers as you need. Each branch is a separate Slack action node configured with a different Channel ID.

    The wpRigel Team

    September 14, 2026
    User Guide
  • How to Connect Google Sheets and Google Calendar in WordPress

    You can connect Google Sheets and Google Calendar in WordPress using Krom Automation Pro. One service account JSON file authenticates both Google services, so you configure credentials once and use them across any number of workflows. The integration covers logging WordPress events to a sheet, creating calendar events from a sheet row, and running both directions from a single workflow.

    Most tutorials reach for Google Apps Script or a third-party SaaS tool. Apps Script works, but it lives outside WordPress, has no execution history inside your admin, and breaks silently when a sheet column shifts. Krom Automation keeps everything inside your WordPress install, with per-step execution logs, automatic retry on failure, and a visual canvas you can hand to a client without explanation.

    This guide covers the exact setup steps, what syncs and what does not, the three failure modes you will actually hit, and the cases where this approach is the wrong fit. Browse the full feature list if you want the broader picture before diving in.

    What Gets Synced: Field Map

    Before touching any settings, confirm what data moves where. The table below shows the field on the left and where it lands on the right. Both directions are covered because a single workflow can do both at once.

    Source fieldDestinationNotes
    Trigger data (post title, user email, order ID)Google Sheets cell via merge tagAny merge tag from the trigger works. See the merge tags documentation for the full list.
    Workflow timestampGoogle Sheets date columnISO 8601 format. Format as a date in the sheet itself.
    Execution statusGoogle Sheets status columnUseful for audit logs. Write “Completed” as a static string.
    Sheet row: event titleGoogle Calendar event summary fieldMap to the Summary field in the Create Calendar Event action.
    Sheet row: start datetimeGoogle Calendar event startMust be ISO 8601. Format: 2026-09-01T09:00:00+01:00.
    Sheet row: end datetimeGoogle Calendar event endSame format requirement as start.
    Sheet row: descriptionGoogle Calendar event descriptionPlain text. HTML is stripped.
    Sheet row: locationGoogle Calendar event locationFree text string. Address or room name both work.
    Sheet row: attendee email(s)Google Calendar attendees listComma-separated. Calendar sends invite emails if notifications are on.

    The reverse direction, pulling calendar events back into a sheet on a schedule, requires a Schedule trigger combined with an HTTP Request action calling the Google Calendar API. That is a more advanced pattern and is covered in the troubleshooting section below.

    The Key Insight: One Service Account for Both

    Every other guide treats Google Sheets and Google Calendar as two separate credential setups. In Krom Automation, both integrations use the same service account JSON. You upload the file once, and every subsequent Sheets action and Calendar action in every workflow can reference it without re-authenticating.

    Configuring credentials once and reusing them across every workflow is not a convenience feature. It is the difference between a maintainable integration and one that breaks when someone rotates a key.

    This matters at scale. If you manage 20 client sites and each one has separate OAuth tokens per integration, a token rotation breaks them individually and silently.

    A service account credential is controlled at the Google Cloud project level. You rotate it once and update a single JSON file across all sites.

    Requirements Before You Start

    • Krom Automation Pro installed and active (free version does not include the Google integrations)
    • WordPress 6.2 or higher, PHP 7.4 or higher
    • A Google Cloud project with the Google Sheets API and Google Calendar API both enabled
    • A service account created inside that project, with a JSON key downloaded
    • The service account email address added as an editor on the target Google Sheet
    • The service account email address added as an editor on the target Google Calendar

    The last two steps are the ones people miss. A service account that cannot write to a sheet or calendar will fail silently in Apps Script but will log a clear error in Krom Automation’s execution history.

    Step-by-Step Setup

    Step 1: Create the Google Cloud Service Account

    1. Go to console.cloud.google.com and open or create a project.
    2. Navigate to APIs & Services > Library. Search for and enable Google Sheets API. Repeat for Google Calendar API.
    3. Go to APIs & Services > Credentials. Click Create Credentials > Service account.
    4. Give it a name, click Create and Continue, skip the optional role and user fields, then click Done.
    5. Click the service account you just created. Go to the Keys tab. Click Add Key > Create new key. Select JSON. Download the file.

    Store the JSON file securely. It is a credential, not a config file. Do not commit it to a repository.

    Step 2: Share Your Sheet and Calendar with the Service Account

    1. Open the target Google Sheet. Click Share. Paste the service account email (it ends in @your-project.iam.gserviceaccount.com). Set permission to Editor. Uncheck “Notify people”. Click Share.
    2. Open Google Calendar. Find your target calendar in the left sidebar. Click the three-dot menu next to it, then Settings and sharing. Scroll to Share with specific people or groups. Add the service account email. Set permission to Make changes to events. Save.

    Step 3: Connect the Service Account in Krom Automation

    1. In your WordPress admin, go to Krom Automation > Integrations.
    2. Click Google Sheets. Click Connect.
    3. In the Service Account JSON field, paste the full contents of the JSON file you downloaded. Click Save.
    4. Click Google Calendar. Click Connect. The same JSON field appears. Paste the same file contents. Click Save.

    Both integrations now share the same credential. The full setup detail is in the Google Sheets and Google Calendar integrations documentation.

    Step 4: Build the Workflow

    This example workflow triggers when a WooCommerce order completes, logs the order to a Google Sheet, and simultaneously creates a Google Calendar event for the fulfilment team.

    1. Go to Krom Automation > Workflows. Click Add New.
    2. On the canvas, click the trigger node. Select WooCommerce: Order Completed from the trigger list.
    3. Add your first action node. Select Google Sheets: Append Row.
    4. In the action settings panel, set Spreadsheet ID to the ID from your sheet URL (the long string between /d/ and /edit). Set Sheet Name to the exact tab name, for example Orders. Map your columns using merge tags: {{order.id}}, {{order.total}}, {{customer.email}}, {{workflow.executed_at}}.
    5. Add a second action node from the same trigger. Select Google Calendar: Create Event.
    6. Set Calendar ID to your calendar’s ID (found in Google Calendar settings under Integrate calendar, formatted as an email address). Set Summary to Fulfil Order #{{order.id}}. Set Start and End to tomorrow at 09:00 and 09:30 using the date merge tag with an offset. Set Description to Customer: {{customer.name}}, {{customer.email}}.
    7. Click Save. Toggle the workflow to Active.

    Because both action nodes branch from the same trigger, they execute in parallel. The sheet append and calendar event creation happen together, not sequentially. If one fails, the execution log flags it individually without blocking the other.

    Running sheet logging and calendar creation as parallel branches means one failure does not silently block the other. That is the kind of thing you only discover you needed after it goes wrong.

    Step 5: Test with the Workflow Simulator

    Before going live, use the built-in workflow simulator to run a dry test with zero side effects. The simulator shows you exactly what data would be written to each action without touching your live sheet or calendar. Check that the merge tags resolve to real values and that the datetime format is correct.

    Logging to a Sheet Only: The Audit Log Pattern

    Not every workflow needs a calendar event. The audit log pattern uses a single Google Sheets: Append Row action attached to any trigger. Common examples include:

    • User registrations logged with timestamp, email and referring URL
    • Form submissions logged from Gravity Forms, WPForms, or Fluent Forms with all field values
    • WooCommerce order status changes with old status, new status and order value
    • Failed login attempts logged with username and IP address

    This pattern requires no calendar access. The service account only needs editor access on the target sheet. For form-based logging, the Gravity Forms integration and WPForms integration both expose all submitted field values as merge tags you can map directly to sheet columns.

    What Does NOT Transfer or What Breaks

    Every integration guide should have this section. Nobody else writes it, which is exactly why it is the most useful part.

    LimitationImpactWorkaround
    Calendar events cannot be updated or deleted by Krom AutomationIf an order is refunded or a post is unpublished, the calendar event staysAdd a separate workflow on the relevant trigger to create a new “Cancelled” event, or use the HTTP Request action to call the Calendar API directly
    Sheet rows cannot be updated in placeAppend Row always adds a new row. There is no “find row and update” action in the current Pro releaseLog a new row with a status column. Use a formula in the sheet to show the latest status per ID
    Attendee invite emails depend on calendar notification settingsIf your calendar has notifications turned off, attendees are added silentlyAdd a Send Email action in the same workflow for guaranteed delivery
    Datetime merge tags output UTC by defaultA 09:00 local time event lands in the wrong slot if timezone offset is not appendedUse the offset format in the merge tag, or configure your WordPress timezone setting correctly under Settings > General
    Recurring events are not supported via the Create Event actionYou cannot set a weekly repeat rule through the current action fieldsUse the HTTP Request action to call the Calendar API with a recurrence array in the request body
    Pulling calendar events back into WordPress is not a built-in actionCalendar-to-sheet sync requires an HTTP Request to the Calendar API on a scheduleUse a Schedule trigger with an HTTP Request action calling events.list on the Calendar API, then a Sheets append for each returned event

    The “find row and update” limitation is the one agencies hit most often. If your use case requires updating a row when an order status changes, design the sheet with an append-only log from the start and use a Google Sheets formula to surface the current status. That is more robust than an in-place update anyway, because you retain the full history.

    Troubleshooting: The Three Real Failure Modes

    Failure Mode 1: Permission Denied on Append or Create

    The action executes but logs a 403 error. This almost always means the service account email is not an editor on the target sheet or calendar.

    Double-check by opening the sheet, clicking Share, and confirming the service account email appears with Editor permission. On the calendar side, go to Settings and sharing and confirm the service account appears under “Share with specific people” with “Make changes to events” selected.

    A second cause is that the API is not enabled in the Cloud project. Return to APIs & Services > Library and confirm both Google Sheets API and Google Calendar API show a green “API enabled” status.

    Failure Mode 2: Invalid Datetime Format on Calendar Create

    The calendar event fails to create and the execution log shows a 400 error with a message referencing the start or end field. Google Calendar requires full ISO 8601 format including timezone offset. 2026-09-01T09:00:00 will fail.

    2026-09-01T09:00:00+01:00 will succeed. Check your WordPress timezone setting under Settings > General and ensure the merge tag you are using outputs the offset.

    Failure Mode 3: Workflow Fires but Nothing Appears in the Sheet

    The execution log shows success but no new row appears. The most common cause is a mismatch between the Sheet Name field in the action and the actual tab name in the spreadsheet. The field is case-sensitive and space-sensitive.

    “Orders ” with a trailing space is not the same as “Orders”. Copy the tab name directly from the sheet rather than typing it.

    A second cause is writing to the wrong spreadsheet. The Spreadsheet ID in the action must match the ID in the sheet’s URL. Confirm by checking the URL: docs.google.com/spreadsheets/d/THIS_IS_THE_ID/edit.

    Cost to Run This vs. the Alternatives

    ApproachYear 1 costYear 2+ costMaintenance burdenExecution visibility
    Krom Automation Pro (1 site)$119$119/year or $0 after lifetimeLow. Managed inside WordPress.Full per-step execution log
    Krom Automation Pro (lifetime, 1 site)$299 once$0Low. No renewal to track.Full per-step execution log
    Zapier (Professional plan, ~1,000 tasks/month)~$228~$228/yearLow inside Zapier, but data leaves your serverTask history, limited detail
    Google Apps Script$0$0High. No UI, breaks silently, developer required to debugNone inside WordPress
    Make (Integromat) Core plan~$96~$96/yearMedium. External platform to learn and maintainScenario history, external

    The lifetime plan at $299 is the number to focus on for agency use. Across 5 client sites on the Standard plan ($499 lifetime), the per-site cost is $100 once, with no annual renewal and no per-execution charges. Zapier at ~$228/year per account adds up fast when you are managing a portfolio of sites.

    Apps Script costs nothing and breaks invisibly. That is a trade-off that only looks good until something stops working on a client site at midnight.

    The free vs Pro comparison breaks down every feature gate if you want to confirm exactly what requires Pro before purchasing.

    Who Should Use This Approach and Who Should Not

    This setup is the right fit when:

    • Your automation starts with a WordPress event (order, registration, form submission, post publish)
    • You want execution logs and failure alerts inside WordPress, not in a third-party dashboard
    • You are managing multiple client sites and want a single credential pattern
    • You need the data to stay on your server, not pass through a SaaS intermediary

    This approach is not the right fit when:

    • You need true bidirectional, real-time sync where calendar changes push back to WordPress automatically
    • You need to update existing sheet rows rather than append new ones
    • The trigger is entirely outside WordPress (for example, a calendar event created in the Google Calendar UI triggering an action elsewhere)
    • You need recurring event rules via the Create Event action

    For purely external automation between Google products with no WordPress involvement, a tool like Zapier or Make is the correct choice. Krom Automation is WordPress-native. If WordPress is not the starting or ending point, it is the wrong layer for the integration.

    If you work with other automation patterns, the post on 20 WordPress automations most sites should have covers how the Google Sheets logging pattern fits into a broader automation stack.

    Related Workflows Worth Building Next

    Once Sheets and Calendar are connected, the same service account credential is already available for every other workflow on that site. Common next steps include:

    • Logging FluentCRM contact activity to a sheet for reporting. See the FluentCRM integration documentation.
    • Creating a calendar event when a MemberPress subscription expires, to trigger a manual renewal call. See the MemberPress integration documentation.
    • Logging LearnDash course completions to a sheet for training record compliance. See the LearnDash integration documentation.
    • Sending a Slack or Discord message alongside the sheet append, so the team sees the log entry in real time. See the messaging integrations documentation.

    If you are building a full automation stack across client sites, the automation stack we deploy on every client build explains how these patterns layer together.

    Also from wpRigel

    Pollify is wpRigel’s Gutenberg-native poll, survey and quiz plugin. Polls are built as real blocks inside the editor, with no shortcodes and no separate admin interface. Results export to CSV, Excel, PDF and Word, and the Pro tier adds NPS voting, IP blocking and enriched analytics.

    Commandify is a command palette for the WordPress admin. Press Cmd or Ctrl plus K to search everything, jump to any screen, and run admin actions without navigating menus. It is the only command palette with genuine WooCommerce depth, covering orders, products, variations and customers as first-class commands.

    Verdict

    The Google Sheets and Google Calendar integration in WordPress is straightforward when you treat both services as a single credential problem. One service account JSON, shared once, authenticates both. Every workflow that follows can append to a sheet, create a calendar event, or do both in parallel without any additional authentication setup.

    The limitations are real. Row updates, recurring events and calendar-to-WordPress sync require workarounds or raw API calls.

    If those are your core requirements, be clear about that before you build. For the cases it does cover, the per-step execution log and automatic retry put it ahead of every Apps Script implementation we have seen survive longer than six months on a real client site.

    Download the free version from the WordPress.org plugin directory to explore the canvas and the free triggers. The Google integrations require Pro, which starts at $119 per year for one site or $299 as a lifetime licence. See full pricing details and compare plans before deciding.

    Frequently Asked Questions

    Does the Google Sheets and Google Calendar integration require Krom Automation Pro?

    Yes. Both Google integrations are Pro-only features.

    The free version of Krom Automation includes 16 triggers, 21 actions and the full visual workflow builder, but the Google Sheets and Google Calendar actions are not included. Pro starts at $119 per year for one site.

    Can one service account JSON file connect both Google Sheets and Google Calendar?

    Yes, and this is the setup we recommend. In Krom Automation’s integrations panel, you paste the same JSON into both the Google Sheets connection and the Google Calendar connection. Both integrations authenticate through the same service account from that point forward.

    What happens if the Google Sheets action succeeds but the Calendar action fails?

    Each action node is logged independently. A failure in the Calendar action does not roll back the Sheets append.

    The execution log flags the failed node, sends a failure notification to the email address you configure, and retries automatically with configurable backoff. You can inspect exactly which step failed and why without losing the data that did succeed.

    Can I update an existing sheet row when an order status changes, rather than appending a new one?

    Not with the current Append Row action. Krom Automation’s Google Sheets action appends new rows only.

    The recommended pattern is to log every status change as a new row with a status column, then use a Google Sheets formula such as MAXIFS to surface the most recent status per order ID. This preserves a full audit trail rather than overwriting history.

    Does this integration work in real time, or does it depend on WP-Cron?

    Workflows triggered by WordPress events (order completed, user registered, form submitted) execute immediately when the trigger fires, via Action Scheduler rather than WP-Cron. Delays depend on WP-Cron only if you add a Delay action to the workflow. On low-traffic sites where WP-Cron fires infrequently, configure a real server cron to call wp-cron.php on a schedule to ensure delays land on time.

    Can I log form submissions from Gravity Forms or WPForms to Google Sheets automatically?

    Yes. Both form plugins expose all submitted field values as merge tags inside Krom Automation.

    Set the trigger to the relevant form submission event, add a Google Sheets: Append Row action, and map each field merge tag to a sheet column. The Gravity Forms integration documentation covers the exact trigger and field names.

    The wpRigel Team

    September 14, 2026
    User Guide
  • The Automation Stack We Deploy on Every Client Build

    WordPress automation for agencies stops being a nice-to-have the moment you manage more than ten client sites. At that scale, manual follow-up on form leads, one-off welcome emails, and ad hoc user role assignments cost you roughly 8 to 12 hours a month in unbillable labour. We standardise the same core automation stack on every client build using Krom Automation, export each workflow as JSON, and import it on the next site in under two minutes.

    This is not a list of ideas. It is the actual stack we deploy, the workflows that pay for themselves, and an honest account of where automation creates risk as well as reward. If you are evaluating whether to standardise a tool across your agency or sell automation as a care-plan add-on, read this first.

    For a broader look at the automation landscape, the WordPress Automation Glossary is worth bookmarking before you get into tool comparisons.

    Browse the full Krom Automation feature list

    Why the Tool Choice Matters More for Agencies Than for Single Sites

    A single-site owner picks the tool that solves their immediate problem. An agency picks a tool that survives 50 client environments, stays maintainable when a developer leaves, and produces no per-execution billing surprises at month end. Those are fundamentally different criteria.

    External platforms like Zapier and Make are good tools. They become expensive and fragile at agency scale for three reasons: billing multiplies per client account, workflow data lives outside the client’s WordPress installation, and you own the integration glue rather than the client.

    If you offboard, the automations break. We have seen agencies inherit sites where the automation layer depended on a personal Zapier account that was cancelled two years earlier.

    If your automation layer breaks the moment someone cancels a subscription they forgot they owned, you did not build a system. You built a liability.

    A self-hosted, WordPress-native tool means the workflow data, execution logs and API credentials stay in the client’s own database. The client owns their automation history.

    You can hand off the site without unravelling a web of external accounts. That is the argument for native tooling, and it is a straightforward one to make to a client who has been burned before.

    The Six Workflows We Deploy on Every Build

    These are the automations that appear in every client proposal. They are ordered by impact. Work through them in this sequence because the first three eliminate the most manual labour, and skipping ahead to number five before number two is configured wastes time on a client site that still has unaddressed gaps.

    1. New User Welcome Sequence

    Every site that accepts registrations needs a welcome email. Without automation, this either does not happen or it happens via a plugin that sends a generic WordPress default. A proper welcome sequence, triggered on User Registered, sends a branded email with the user’s name injected via merge tags and optionally assigns a role or tags the user in a CRM like FluentCRM or ActiveCampaign.

    This is the first workflow we build on every site because it is also the demonstration workflow we show clients. The first workflow walkthrough in the documentation covers the exact setup steps.

    2. Form Lead Routing and Follow-Up

    Forms generate leads. Leads sit in an inbox. Nothing happens.

    This is the most common failure mode we see on inherited sites, and it is entirely preventable. A form submission trigger connects to an email action, a CRM contact creation, and optionally a Slack notification so the account manager knows within 30 seconds that a lead arrived.

    The specific setup depends on which form plugin the client uses. We have documented this for Gravity Forms, Contact Form 7, WPForms, and Fluent Forms.

    The automation shape is identical across all four. Only the trigger node changes.

    3. Post-Purchase Email and CRM Sync

    For WooCommerce clients, the Order Completed trigger fires a confirmation email, tags the customer in the email marketing platform, and optionally enrols them in a post-purchase sequence. Without this, the client’s marketing list and their actual customer list drift apart inside three months. The Mailchimp integration and FluentCRM integration both handle the subscriber sync side of this.

    4. Content Distribution on Publish

    Post Published fires when a new article goes live. The workflow posts a summary to the client’s LinkedIn page, sends the URL to a Google Sheet for the content team’s tracking spreadsheet, and triggers a notification in a Slack channel.

    The client stops manually announcing their own content. The social media integration documentation covers the exact node configuration.

    5. Internal Alert on Failed Payments or Subscription Changes

    For membership and subscription clients, a lapsed payment is a churn event. Without an alert, it stays invisible until someone checks the dashboard.

    A subscription status trigger fires a Slack or email notification to the account manager, giving the client a window to act before the customer churns. The WooCommerce Subscriptions integration and MemberPress integration both support status change triggers.

    6. Client-Facing Report Generation

    This one is less about the WordPress site and more about your care plan. A scheduled trigger running on the first of each month can pull execution data from Krom Automation’s analytics dashboard and push a summary to a Google Sheet, which becomes the basis for a monthly report. We have written about this pattern in more detail in automated WordPress reports without logging in daily.

    What the Standard Stack Costs to Run

    Cost at agency scale is almost never what the pricing page shows. It is what the pricing page shows multiplied by client count, plus the maintenance overhead nobody quotes you.

    ScenarioExternal platform (per client account)Krom Automation Pro (self-hosted)
    10 client sites$490 to $990/year across accounts$369/year, unlimited sites (Enterprise plan)
    30 client sites$1,470 to $2,970/year$369/year, same plan
    50 client sites$2,450 to $4,950/year$369/year, same plan
    Per-execution billing riskYes, spikes on high-traffic monthsNone, no run caps at any tier
    Workflow data ownershipExternal platform, not client’s serverClient’s own database
    Offboarding riskAutomations break if account closesZero, plugin stays active on site

    The external platform estimates above are conservative. They assume basic task volumes. Any client site with a WooCommerce store running a promotion or a membership site onboarding a cohort will push those figures higher in the same month.

    Krom Automation Pro’s Enterprise licence is $369 per year or $799 as a lifetime purchase for unlimited sites. There is no per-task billing at any tier. The free version, available on the WordPress.org plugin directory, includes 16 triggers, 21 actions and 20 ready-made workflow templates with no run caps and no expiry.

    At 30 client sites, a self-hosted automation tool running at $369 per year costs less than one month of a mid-tier external platform subscription. The maths is not close.

    JSON Export and Repeatable Deployment

    The feature that makes Krom Automation practical for agencies is workflow import and export as portable JSON. You build the welcome email workflow once on one client site, export it, and import it on the next site in under two minutes.

    The workflow structure transfers completely. You adjust the sender name and any client-specific field values, then activate.

    This matters because the alternative is rebuilding the same workflow from scratch on every new site, which takes 20 to 45 minutes per workflow depending on complexity. Across six standard workflows and 20 new client builds per year, that is 40 to 90 hours of setup time that disappears with an import workflow. At a $120 hourly rate, that is $4,800 to $10,800 recovered per year, or billed as setup fees rather than absorbed as overhead.

    The workflow settings documentation covers the exact import and export process, including how to handle merge tags that reference client-specific values.

    Building Your Agency Workflow Library

    We maintain a folder of exported JSON files, one per workflow template. The folder is organised by site type: WooCommerce, membership, LMS, lead generation. When a new build starts, we import the relevant set and spend the first session on client-specific configuration rather than structural setup.

    • WooCommerce set: order confirmation, post-purchase CRM sync, failed payment alert, cart recovery follow-up
    • Membership set: registration welcome, subscription renewal reminder, lapsed payment alert, role change notification
    • LMS set: course enrolment confirmation, completion certificate trigger, quiz failure follow-up
    • Lead generation set: form submission routing, follow-up sequence, CRM contact creation, internal Slack alert

    Each set is a ZIP of four to six JSON files. Import takes less time than explaining to a client what automation is.

    Automation as a Billable Service

    There are two ways to recover the cost of your automation infrastructure. The first is treating it as overhead that makes your team faster. The second is charging for it directly.

    The second model is more durable. Automation setup and ongoing management is a service clients understand because they can see what it does.

    A client who receives a monthly report showing 340 automated executions and a 98.2% success rate in the past 30 days has evidence that their care plan is working. That is a retention argument and an upsell argument in the same number.

    Service tierWhat is includedSuggested price rangeKrom Automation cost per site
    Basic care plan6 standard workflows, monthly report$150 to $250/month$0.62/month (Enterprise annual)
    Growth care plan12 workflows including integrations, quarterly review$350 to $600/month$0.62/month
    Automation setup feeInitial build, configuration, testing$500 to $1,500 one-time30 to 90 minutes of time
    Custom workflow buildBespoke automation outside the standard set$200 to $500 per workflow1 to 3 hours of time

    The Krom Automation cost per site figure above assumes the Enterprise annual licence ($369/year, unlimited sites) divided across 50 active client sites. At 30 sites the per-site cost is $1.03/month.

    At 10 sites it is $3.08/month. Even at 10 sites, a basic care plan priced at $150/month covers the tool cost inside three days of the billing cycle.

    What the Analytics Dashboard Tells You (and Why It Matters for Clients)

    Krom Automation’s analytics dashboard shows total executions, active workflow count, estimated time saved, failed execution count and an execution trend chart. The reports page adds date range filtering, per-workflow success rate and CSV export.

    That last one is the client-facing deliverable. Export the month’s execution data, drop it into a report template, and you have a concrete answer to the question every client eventually asks: “What am I actually paying for?” A 98% success rate across 400 executions is a better answer than “we handle your maintenance.”

    Failures matter as much as successes. A workflow failing 15% of the time looks identical to a working one from the outside until you check the execution log. Per-step audit trails mean you can identify whether a failure happened at the trigger, a conditional branch, or a specific action node, and fix it without guessing.

    Most competing tools put per-step logging behind a paid tier. In Krom Automation it is included in the free version.

    A monthly report showing 400 automated executions at 98% success is a better retention argument than any care plan pitch deck you will ever write.

    Where Automation Creates Risk and How to Manage It

    Honest account of the failure modes, because every tool has them and you will encounter all of these if you manage 50 sites.

    Delay Reliability on Low-Traffic Sites

    Delays in Krom Automation run via Action Scheduler, which piggybacks on WordPress Cron. On sites with very low traffic, WP-Cron fires late if nothing visits the site for hours.

    A delay set to 30 minutes can become a delay of 4 hours on a low-traffic client site. The fix is configuring a real server cron job on those sites, which takes under five minutes but needs to be part of your setup checklist.

    Auto-Update Risk on Complex Sites

    Plugin auto-updates and automation are not the same risk category, but they intersect. If a client site has a complex WooCommerce setup and you trigger a workflow on Order Completed, a plugin update that changes the order object structure can break downstream actions.

    We stage every update on a test environment before pushing to production on sites with active automation. This is not an automation-specific risk, but automation makes the consequences of a breaking update more visible and more immediate.

    AI Actions Require API Key Management

    Krom Automation’s AI actions (text generation, content moderation, auto-tagging) require the user to supply their own API key. wpRigel does not charge per AI call and does not mark up tokens.

    The client pays their AI provider directly. For agencies, this means managing API keys per client rather than centrally, which is the right ownership model but adds a setup step to the onboarding checklist.

    The Incoming Webhook Dependency

    Pro’s incoming webhook receiver gives each workflow a unique secret URL with HMAC-SHA256 signature validation. This makes it possible to receive data from external services, payment processors, booking platforms, anything that can send a POST request.

    The risk is that if you rotate the secret or change the workflow, you need to update the sending service. Document these connections explicitly in the client handoff notes.

    The Workflows We Do Not Standardise

    Not everything belongs in the standard stack. These are the categories we handle as custom builds rather than templates, because they require client-specific logic that cannot be generalised cleanly.

    • Billing and churn alerts tied to external payment data: anything that pulls from a payment processor API rather than WooCommerce or MemberPress needs bespoke configuration per client
    • Multi-step lead scoring: assigning points based on behaviour across multiple triggers is workflow logic that differs by industry and sales process
    • LMS completion and certificate workflows: LearnDash and TutorLMS both support completion triggers, but the actions after completion, grade thresholds, group assignments, certificate delivery, vary enough that templating produces workflows that need heavy editing anyway
    • Affiliate program automation: AffiliateWP triggers on registration, referral and payout events, but commission structures differ too much to standardise the action side

    Comparing Tool Categories, Not Just Tools

    The question we get most from other agency owners is whether to use a WordPress-native automation plugin or an external platform. Here is the honest comparison by decision factor, not by feature count.

    Decision factorWordPress-native (Krom Automation)External platform (Zapier/Make)
    Data ownershipClient’s database, alwaysExternal servers, third-party terms
    Billing modelAnnual or lifetime per licenceMonthly, per task or per connection
    Cost at 50 sites$369/year flat$2,450 to $4,950+/year
    Works without internetYes, runs inside WordPressNo, requires external service availability
    WordPress event depthDeep, 16+ native triggers free, 80+ ProShallow, depends on plugin’s Zapier integration
    Client handoffClean, plugin stays with siteRequires account migration or rebuild
    External service connections24 Pro integrations, webhook receiverThousands of app connectors

    External platforms win on breadth of third-party connectors. If the automation you need connects two external services with no WordPress involvement, a native plugin is not the right tool. But if the trigger or the action touches WordPress, a self-hosted tool is faster to configure, cheaper to run across multiple sites, and safer to hand off.

    For the six standard workflows above, every trigger and every action involves WordPress. The choice is straightforward.

    For a detailed comparison of the available options in this category, the agency-focused automation tool roundup covers the full landscape.

    Also from wpRigel

    Commandify is a command palette for the WordPress admin. Press Cmd or Ctrl plus K from anywhere in the dashboard to search posts, manage WooCommerce orders, switch plugins, or jump to any settings screen without clicking through menus. It is the only command palette with real WooCommerce order, product and customer commands built in, which makes it worth deploying on any client site where the owner manages their own store.

    Pollify is a Gutenberg-native poll, survey and quiz plugin. Polls are built directly inside the block editor as native blocks, so there are no shortcodes to paste and no separate interface to switch to. If you manage content-heavy client sites or community sites, it is a straightforward add to the standard plugin set.

    Our Verdict: Who Should Build This Stack and Who Should Not

    If you manage more than ten client sites and you are still handling welcome emails, lead routing and post-publish distribution manually or with a patchwork of single-purpose plugins, the stack described here will recover that time within the first billing month. The JSON export and import workflow alone saves 40 to 90 hours per year on new client builds. The Enterprise licence at $369/year costs less than one billable hour at most agency rates.

    If you manage fewer than five sites and your clients have simple, low-volume needs, the free version on the WordPress.org plugin directory covers the six standard workflows with no cost and no time limit. Start there.

    Who should not build this stack: agencies whose automation needs are primarily between external services with no WordPress involvement. If the client’s critical automations run Salesforce to Slack to HubSpot with no WordPress trigger or action, a WordPress-native tool is the wrong layer. Use the right tool for the job.

    For everyone else, standardise the stack, build the JSON library, and start charging for it. The margin is there.

    See full pricing details for Krom Automation

    Frequently Asked Questions

    Can I use one Krom Automation Pro licence across all my client sites?

    Yes. The Enterprise plan covers unlimited sites at $369 per year or $799 as a lifetime purchase.

    Every Pro feature is included at every plan level. The only difference between plans is the number of site activations.

    Does Krom Automation work without a WooCommerce installation?

    Yes. WooCommerce is optional.

    The WooCommerce-specific triggers and actions only appear if WooCommerce is active. The core triggers covering users, posts, comments and media work on any WordPress site running version 6.2 or higher.

    What happens to client automations if I offboard?

    Nothing breaks. The plugin and all workflow data live on the client’s server. Automations continue running as long as the plugin is active, with no dependency on your account or any external service you control.

    Can I automate client onboarding, from contract signing to site setup?

    Partially, using the incoming webhook receiver in Pro. When a contract is signed in a platform that can send a webhook, Krom Automation receives that payload and can trigger user creation, role assignment, and welcome email sequences on the WordPress side. The steps outside WordPress, such as project management task creation or invoice generation, require the external platform to fire additional webhooks to those services separately.

    Is the workflow simulator safe to use on live client sites?

    Yes. The simulator runs a dry-run pass through the entire workflow with zero side effects.

    No emails are sent, no posts are created, no CRM contacts are modified. It is specifically designed for testing on production environments where a full test execution would have real consequences.

    The wpRigel Team

    September 14, 2026
    User Guide
  • Preparing Your WooCommerce Store for Black Friday

    To prepare your WooCommerce store for Black Friday, start 8 to 10 weeks before the sale and work through four areas in order: infrastructure, automation, checkout, and post-sale follow-up. Most stores that fall over on Black Friday fail at step one. Most stores that lose revenue on Black Friday fail at step four.

    This guide is written for the person who is responsible if the store goes down: the developer, agency lead, or technical co-founder. It covers what breaks under peak traffic, which automation workflows to build before the rush, what to pause during peak hours, and how to turn one-time buyers into repeat customers in the weeks that follow.

    Start reading at least 8 weeks out. If you are inside 4 weeks, jump straight to the checklist, flag the infrastructure gaps, and deprioritise anything that requires a staging rebuild.

    Browse Krom Automation features

    Why WooCommerce Sites Fall Over on Black Friday

    The problem is not traffic volume. The problem is that WordPress and WooCommerce were not built to handle hundreds of concurrent database writes.

    Every order completion triggers a stock update, an order status write, a customer meta update, and a transient flush, all at the same time. On a shared hosting plan, that queue saturates in minutes.

    Three failure patterns account for the majority of Black Friday outages:

    • Database connection exhaustion: MySQL has a connection limit, typically 100 to 150 on shared plans. Concurrent checkout attempts breach that limit and return a 500 error to every user in the queue.
    • WP-Cron pile-up: WordPress Cron runs on page load. Under high traffic, scheduled tasks stack up, fire simultaneously, and compete for the same database resources as real users.
    • Object cache misses: Without a persistent object cache like Redis or Memcached, every page load re-queries the database for the same product data. At 300 concurrent visitors, that is 300 identical queries running in parallel.

    Fix these three before anything else. Every other optimisation is a rounding error by comparison.

    Infrastructure: What to Sort 8 to 10 Weeks Out

    Upgrade your hosting tier before the sale, not during it. Managed WordPress hosts like Kinsta, WP Engine, and Cloudways isolate PHP workers per site and provide a persistent object cache by default. Shared hosting does neither. If your store runs on shared hosting and you expect more than 50 concurrent visitors, the upgrade is not optional.

    Alongside hosting, configure a real server cron to replace WP-Cron. Add this line to your server’s crontab and disable WP-Cron in wp-config.php:

    • Add define('DISABLE_WP_CRON', true); to wp-config.php
    • Set up a system cron job to visit wp-cron.php every 60 seconds
    • Verify it is firing by checking Action Scheduler under WooCommerce Status Scheduled Actions

    A CDN handles static assets and reduces origin server load by 40 to 70 percent on image-heavy product pages. Cloudflare’s free tier covers most stores adequately. Enable it at least 4 weeks out so you can test behaviour at your cache rules before the rush.

    Shared hosting and a Black Friday sale is not a risk. It is a scheduled outage. The only variable is how long it lasts.

    The Pre-Black Friday Checklist

    Work through these in order. Skipping to coupons while your database connection limit is still at 100 is wasted effort.

    Task When Pass condition Risk if skipped
    Upgrade to managed or VPS hosting 8-10 weeks out Isolated PHP workers, Redis available Checkout fails under load
    Replace WP-Cron with server cron 8-10 weeks out Action Scheduler shows consistent fire times Automation and order jobs queue and delay
    Enable persistent object cache (Redis/Memcached) 8 weeks out Cache hit rate above 80% in host dashboard Repeated DB queries, slow pages under load
    Configure full-page caching, exclude cart and checkout 6-8 weeks out Cart page bypasses cache, product pages cached Stale cart data, or no caching benefit at all
    Enable CDN for static assets 6 weeks out Images served from CDN URL in browser dev tools Origin server handles every image request
    Set stock management to “Hold stock for X minutes” 4-6 weeks out WooCommerce Settings Products Inventory Overselling under simultaneous checkout pressure
    Build and test automation workflows 4-6 weeks out Dry-run via workflow simulator, zero errors Manual fulfilment bottleneck, missed follow-ups
    Create and schedule discount coupons 3-4 weeks out Coupons tested on staging with real cart scenarios Wrong discount applied, margin errors
    Run load test on staging environment 2-3 weeks out 500 simulated concurrent users, no 500 errors First real load test happens on Black Friday
    Test checkout end to end on mobile 2 weeks out Full purchase flow completed on iOS and Android Mobile users, now over 60% of BFCM traffic, convert poorly
    Schedule post-sale email sequences 1-2 weeks out Trigger fires on Order Completed, delays verified One-time buyers never return
    Pause non-essential automation during peak Day before Only order and fulfilment workflows active DB contention from background tasks during checkout

    Automation Workflows to Build Before the Rush

    Manual fulfilment does not scale past 50 orders per hour without errors. Krom Automation is a visual workflow builder for WordPress that connects WooCommerce events to automated responses on a drag-and-drop canvas. You build the response once, and it fires automatically every time the trigger fires, whether that is 10 orders or 1,000.

    The free version includes 16 triggers and 21 actions, with the Order Created and Order Completed WooCommerce triggers available at no cost. The workflows below cover the most critical Black Friday automation gaps.

    Workflow 1: Order Confirmation and Coupon Delivery

    Trigger: Order Completed. Action: Send Email using the visual email builder with a personalised thank-you and a 10% return-visit coupon.

    Use merge tags to inject the customer name, order number, and product list dynamically. This replaces the generic WooCommerce confirmation email with something that actually drives a second purchase.

    Workflow 2: Abandoned Checkout Recovery

    Trigger: a form submission or user login event, combined with a 60-minute delay. Action: Send Email referencing the incomplete order. Cart abandonment rates spike during Black Friday as shoppers compare prices across multiple tabs.

    A timed follow-up email, sent automatically rather than manually, recovers 5 to 15 percent of those sessions. See the full breakdown of cart abandonment approaches for WooCommerce for how to choose the right mechanism.

    Workflow 3: Post-Sale Review Request

    Trigger: Order Completed, with a 7-day delay using the delay and scheduling settings. Action: Send Email requesting a review.

    Sending this 7 days after delivery, rather than immediately after purchase, lifts response rates because the product has actually arrived. Schedule this workflow before Black Friday and let it run unattended through December.

    Workflow 4: Low Stock Alert to Slack or Email

    Trigger: Post Updated (stock meta change). Action: HTTP Request to a Slack or Discord channel, or Send Email to the fulfilment team.

    When a product hits a threshold, the relevant person is notified immediately rather than discovering the oversell after the fact. This workflow should stay active during peak hours because it is read-only and generates no database writes of its own.

    Workflow 5: Email List Sync on Order Completion

    Every Black Friday buyer who opts in should be added to your email list immediately. Connect Order Completed to your email platform using the Mailchimp integration, the FluentCRM integration, or the ActiveCampaign integration depending on your stack. Doing this manually after a high-volume sale guarantees contacts are missed.

    A workflow that fires 1,000 times without error is worth more than 10 manual processes done carefully. The manual version always has a bad day eventually.

    To test any of these workflows before the sale, use the built-in workflow simulator, which runs a dry pass with zero side effects. No emails sent, no database writes, no real orders touched. Run each workflow through the simulator at least once before you go live.

    See how Krom Automation compares

    What to Pause During Peak Hours

    Not everything should run during Black Friday. Some workflows generate database writes that compete directly with checkout processes. Pause these for the 24 to 48 hour peak window and re-enable them after the rush.

    • Image regeneration jobs: These are CPU and I/O intensive and should never run during a sale.
    • Scheduled backup plugins: Move the backup window to 3am rather than letting it fire mid-sale. A backup running during peak load can saturate disk I/O and slow every read query.
    • Plugin and theme update checks: Auto-updates during a live sale are high risk. Disable automatic updates for the 72-hour window around Black Friday.
    • Non-essential marketing automation: Pause any workflows unrelated to order processing. Tag cleanup, re-engagement campaigns, and analytics exports can wait 48 hours.
    • Search index rebuilds: If you run WooCommerce Product Search or ElasticPress, do not trigger a full re-index during the sale.

    Use Krom Automation’s workflow settings to pause individual workflows without deleting them. They retain their configuration and execution history and can be re-enabled in a single click.

    Checkout and Mobile: Where Most Stores Lose Money

    Over 60 percent of Black Friday traffic in 2025 came from mobile devices. Most WooCommerce checkout pages were not designed with a mobile keyboard in mind. Address forms with tiny tap targets, multi-step checkouts that reset on back-button, and payment forms that do not trigger the numeric keyboard for card number fields all cost conversions.

    Run a full purchase flow on both iOS Safari and Android Chrome at least 2 weeks out. Check these specifically:

    • Does the coupon field appear without hiding the cart total?
    • Does autofill work for address and payment fields?
    • Does the page reload on payment submission, or does it process inline?
    • Is the “Place Order” button above the fold on a standard phone screen?

    WooCommerce Blocks checkout (the block-based replacement for the classic shortcode checkout) generally performs better on mobile than the legacy template. If you have not migrated, Black Friday preparation is a reasonable moment to test the switch on staging.

    The Post-Sale Retention Problem Nobody Plans For

    Black Friday buyers are the hardest customers to retain. They came for a discount. The stores that convert them to repeat buyers are the ones that start a follow-up sequence before the sale ends, not after they have already gone quiet.

    Plan three post-sale touchpoints, all automated:

    1. Day 1 after delivery: A short email confirming delivery and offering support. Keep it operational, not promotional. This builds trust at the moment it is most fragile.
    2. Day 7 after delivery: A review request, as covered in Workflow 3 above. Include a single product photo and a direct link to the review form.
    3. Day 21 after purchase: A return offer. Not another Black Friday discount. A loyalty-framed offer: “Because you shopped with us during the sale, here is early access to our January collection.” This positions the relationship as ongoing rather than transactional.

    These three emails, built once and scheduled with a delay node in Krom Automation, run automatically through November and December with no manual intervention. The first 7 days automation pattern applies equally well here: the sequence that runs automatically always beats the one that depends on someone remembering to send it.

    The stores that treat Black Friday as a retention event, not just a revenue event, are the ones that still have those customers in February.

    What Does This Cost Across Multiple Sites?

    If you are managing this preparation for multiple client stores, cost scales differently than effort. The table below shows the total cost of running Krom Automation Pro across different agency scenarios over the first two years.

    Sites managed Plan needed Year 1 (annual) Year 2 (annual) Lifetime alternative
    1 site Basic $119 $119 $299 once
    Up to 5 sites Standard $199 $199 $499 once
    Unlimited sites Enterprise $369 $369 $799 once

    Every plan includes every Pro feature. The only difference is site count.

    For an agency managing 20 or more client stores, the Enterprise lifetime plan at $799 covers the entire portfolio with no renewal. The free version of Krom Automation is available on WordPress.org with no trial period and no run caps, which is the right starting point for a single store evaluating the platform.

    For broader context on which automation tools work best across WooCommerce stores, the full comparison of WooCommerce automation plugins covers the main options and where each one fits.

    Also from wpRigel

    Commandify is a command palette for the WordPress admin. Press Cmd or Ctrl plus K to jump anywhere, search orders, products and customers, and run admin actions without clicking through menus.

    It is the only command palette with real WooCommerce depth: order status changes, customer lookups, coupon application and more, all from the keyboard. Useful year-round but particularly valuable during a high-volume sale when speed in the admin matters.

    Pollify is a Gutenberg-native poll, survey and quiz plugin. Polls are built as real blocks inside the editor, so there are no shortcodes to paste and no separate configuration interface. Useful for post-sale satisfaction surveys or product feedback collection in the weeks following Black Friday.

    Our Verdict

    If you are managing a WooCommerce store through Black Friday, the work that matters most is infrastructure hardening and automation setup, in that order. Coupon configuration and email campaigns matter, but they produce no revenue if the checkout is returning 500 errors or the order confirmation is never sent.

    Start with hosting, server cron, and object caching. Build the five core automation workflows in Krom Automation and test each one with the simulator before you go live.

    Pause non-essential background tasks for the 48-hour peak window. Then let the post-sale sequences run unattended through December.

    If you are already inside 4 weeks and have not started, prioritise the checklist items rated “Checkout fails under load” in the risk column. Everything else is secondary. The free version of Krom Automation covers the Order Created and Order Completed triggers and the Send Email action, which is enough to run workflows 1, 2, and 3 without spending anything before you have tested the approach.

    See Krom Automation pricing

    Frequently Asked Questions

    How early should I start preparing my WooCommerce store for Black Friday?

    Start 8 to 10 weeks before the sale for infrastructure changes, and 4 to 6 weeks out for automation and coupon setup. Articles and product landing pages need 8 weeks minimum to index and rank before late November traffic arrives.

    Why does my WooCommerce site slow down or crash during high traffic?

    The most common causes are database connection exhaustion, WP-Cron pile-up under concurrent load, and missing persistent object cache. Fixing all three before the sale removes the majority of crash risk. Managed hosting with Redis and a server cron replacement addresses all of them.

    How do I prevent overselling during the Black Friday rush?

    Enable stock management in WooCommerce Settings Products Inventory and set a “Hold stock for X minutes” value, typically 15 to 60 minutes. This reserves stock during active checkouts and releases it if the order is abandoned, preventing two buyers from completing purchase of the last unit simultaneously.

    What automation workflows are most critical to build before Black Friday?

    In priority order: order confirmation with a return-visit offer, abandoned checkout recovery with a 60-minute delay, email list sync on order completion, low stock alerts to your team, and a 7-day post-sale review request. Build and test all five before the sale rather than during it.

    What should I pause during the Black Friday peak window?

    Pause scheduled backups, image regeneration jobs, plugin auto-updates, search index rebuilds, and any marketing automation unrelated to order processing. These compete for the same database and server resources as live checkout requests. Re-enable them after the 48 to 72 hour peak window closes.

    How do I turn Black Friday buyers into repeat customers?

    Run three automated post-sale touchpoints: a day-one delivery confirmation, a day-seven review request, and a day-21 loyalty offer that is distinct from the original discount. These three emails, built once in a workflow tool and triggered on order completion, cover the full retention arc without manual effort.

    The wpRigel Team

    September 13, 2026
    User Guide
  • How to Connect MemberPress to ActiveCampaign

    MemberPress connects to ActiveCampaign natively through a built-in add-on, available on the Growth license tier and above. No third-party plugin is required for basic list and tag syncing. The native add-on covers new member signup, but it leaves cancellations, expirations, and failed payments entirely unhandled, which is where most membership CRM setups quietly break.

    This guide covers the full MemberPress ActiveCampaign integration: which add-on to install, the exact setup steps, what data syncs and what does not, and how to build the cancellation and expiration logic that the official documentation does not address. We also cover where Krom Automation fits when the native add-on runs out of road.

    If you are connecting a LearnDash site to ActiveCampaign instead, the LearnDash ActiveCampaign integration guide covers that flow separately.

    Browse the full Krom Automation feature list to see how it extends the native MemberPress integration beyond what the add-on handles.

    Which MemberPress Plan Do You Need?

    The ActiveCampaign add-on is locked to the Growth license tier and above. The Basic plan does not include it. If you are on Basic, your options are a plan upgrade, a third-party automation plugin, or a no-code bridge tool like Zapier or Make.

    MemberPress offers two separate ActiveCampaign add-ons, and choosing the wrong one causes real problems downstream:

    • ActiveCampaign Lists add-on: Adds members to a specific ActiveCampaign list when they subscribe to a membership level. Simple, works with standard email campaigns.
    • ActiveCampaign Tags add-on: Applies tags in ActiveCampaign based on membership level. More flexible for segmentation and automation triggers inside ActiveCampaign.

    For most sites running ActiveCampaign, the Tags add-on is the better choice. Tags are easier to use as automation entry points inside ActiveCampaign, and they let you apply multiple tags per member without moving people between lists. The Lists add-on works if your existing ActiveCampaign setup is structured around lists, but migrating away from lists later is painful work.

    Choosing the Lists add-on when your ActiveCampaign account is tag-driven is not a configuration problem. It is a structural mismatch that compounds every time you add a new membership level.

    What Gets Synced: Field-by-Field Breakdown

    The native MemberPress add-on syncs a limited field set. Understanding exactly what lands where prevents surprises when you go to build ActiveCampaign automations and find the data you expected is missing.

    MemberPress Field Where It Lands in ActiveCampaign Add-on Required
    First name Contact first name field Lists or Tags
    Last name Contact last name field Lists or Tags
    Email address Contact email (primary identifier) Lists or Tags
    Membership level name List assignment or tag applied Lists or Tags respectively
    Subscription status Not synced natively Requires Krom Automation or webhook
    Expiry date Not synced natively Requires Krom Automation or webhook
    Transaction amount Not synced natively Requires Krom Automation or webhook
    Payment method Not synced natively Requires Krom Automation or webhook
    Registration date Not synced natively Requires Krom Automation or webhook
    Custom profile fields Not synced natively Requires Krom Automation or webhook

    The native add-on handles contact creation and list or tag assignment at the point of signup. Everything else, including what happens when a subscription lapses, requires additional tooling.

    Step-by-Step Setup: Native Add-On

    These steps apply to both the Lists and Tags add-ons. The menu paths are identical. The only difference is which add-on you install and which field you configure per membership level.

    Step 1: Install the Add-On

    1. Log in to your WordPress admin.
    2. Go to MemberPress > Add-ons.
    3. Search for “ActiveCampaign” in the search field.
    4. Click Install Add-On next to either the Lists or Tags version.
    5. The add-on activates automatically. No separate activation step is needed.

    Step 2: Enter Your ActiveCampaign API Credentials

    1. Go to MemberPress > Settings.
    2. Click the Marketing tab.
    3. Select ActiveCampaign from the “Select a service” dropdown.
    4. Enter your ActiveCampaign API URL. This is your account URL, formatted as https://youraccountname.api-us1.com. Find it in ActiveCampaign under Settings > Developer > API Access > URL.
    5. Enter your ActiveCampaign API Key from the same Developer page.
    6. Click Connect. A green checkmark confirms a successful connection.

    If the Marketing tab is not visible, the add-on did not activate correctly. Return to MemberPress > Add-ons and confirm the status shows “Active” rather than “Install Add-On”.

    Step 3: Assign Lists or Tags per Membership Level

    1. Go to MemberPress > Memberships.
    2. Edit the membership level you want to configure.
    3. Scroll to the ActiveCampaign section in the edit screen. This section appears only after the add-on is active and the API credentials are saved.
    4. For the Lists add-on: select the ActiveCampaign list from the “List” dropdown. One list per membership level.
    5. For the Tags add-on: type the tag name into the “Tag” field. You can enter multiple tags separated by commas.
    6. Click Update to save the membership.
    7. Repeat for every membership level.

    New members who purchase that level will now appear in ActiveCampaign as a contact and receive the list assignment or tag on checkout completion.

    What Does NOT Sync: The Gaps That Break Real Workflows

    This is the section the official documentation skips. The native add-on fires on one event: successful membership signup. It does not respond to anything that happens after that moment.

    Here is what the add-on does not handle:

    • Subscription cancelled: A member cancels their recurring subscription. The tag or list assignment in ActiveCampaign is not removed. ActiveCampaign continues sending that person member-level content.
    • Membership expired: A non-recurring membership reaches its end date. No event fires to ActiveCampaign. The contact remains tagged as an active member indefinitely.
    • Payment failed: A recurring payment is declined. No notification goes to ActiveCampaign, so no dunning sequence can be triggered.
    • Membership upgraded or downgraded: A member moves between tiers. The old tag or list is not removed when a new one is applied, leaving contacts double-tagged.
    • Manual admin expiry: An admin expires a membership from the WordPress backend. No sync fires.
    • Custom profile fields: Registration date, expiry date, transaction amount, and any custom WordPress user meta fields do not sync to ActiveCampaign custom fields.

    A contact tagged as an active member six months after they cancelled is not a minor data inconsistency. It is a compliance risk and a deliverability problem rolled into one.

    These gaps matter most on sites with recurring subscriptions. If your membership model is primarily one-time purchases with no renewal, the native add-on may be sufficient. If you have recurring billing, you need to handle the post-signup lifecycle yourself.

    Handling Cancellations, Expirations, and Failed Payments with Krom Automation

    Krom Automation is a visual workflow automation plugin for WordPress that connects MemberPress events to ActiveCampaign actions on a drag-and-drop canvas. The MemberPress integration documentation covers the full list of available triggers and actions.

    The four CRM events every membership site needs to handle are signup, transaction completed, subscription cancelled, and membership expired. Here is how each maps to a Krom Automation workflow:

    MemberPress Event Krom Automation Trigger Recommended ActiveCampaign Action Why It Matters
    New member signup MemberPress: Member Signup Add contact to list; apply tag “member-active” Entry point for onboarding sequence
    Transaction completed MemberPress: Transaction Completed Update contact field with transaction amount and date Enables revenue-based segmentation
    Subscription cancelled MemberPress: Subscription Cancelled Remove tag “member-active”; apply tag “member-cancelled”; enter win-back automation Stops member content going to non-members
    Membership expired MemberPress: Membership Expired Remove tag “member-active”; apply tag “member-expired”; trigger renewal reminder Prevents expired contacts receiving member-only campaigns

    Each of these is a separate workflow in Krom Automation. The ActiveCampaign integration documentation shows the exact action fields for adding contacts, applying tags, removing tags, and updating custom fields from within a workflow.

    For sites also running WooCommerce Subscriptions alongside MemberPress, the WooCommerce Subscriptions integration documentation covers the equivalent trigger set for subscription lifecycle events.

    Building the Cancellation Workflow

    In Krom Automation, go to Krom Automation > Workflows > Add New. On the canvas, add the MemberPress: Subscription Cancelled trigger.

    Connect it to an HTTP Request action pointed at the ActiveCampaign API, or use the native ActiveCampaign action nodes to remove a tag and apply a replacement. The conditional branching documentation covers how to split the workflow by membership level, so Gold members and Basic members enter different win-back sequences.

    Use merge tags to pull the member’s email address, first name, and membership level name into the action fields dynamically. No hardcoding is required.

    Building the Expiration Workflow

    Add the MemberPress: Membership Expired trigger and connect it to the same tag-removal and tag-application pattern. If you want to fire a re-engagement email 3 days after expiry, add a delay node between the trigger and the email action. Krom Automation runs delays via Action Scheduler, so nothing blocks during page loads and the delay fires accurately regardless of whether anyone visits the site in the interim.

    The new user onboarding automation guide includes a worked example of a multi-step delay sequence that translates directly to a post-expiry re-engagement flow.

    Troubleshooting: Three Real Failure Modes

    Failure 1: The Marketing Tab Does Not Show ActiveCampaign

    This happens when the add-on is listed as installed but not active, or when it was installed before the API credentials were saved. Go to MemberPress > Add-ons and confirm the status reads “Active”. If it reads “Install Add-On”, click to install again.

    After confirming active status, go to MemberPress > Settings > Marketing, re-select ActiveCampaign from the dropdown, re-enter your API URL and key, and save. The credentials must be saved before the per-level configuration fields appear.

    Failure 2: New Members Are Not Appearing in ActiveCampaign

    Three causes account for the majority of cases:

    • The API URL is formatted incorrectly. It must include https:// and end without a trailing slash. The correct format is https://youraccountname.api-us1.com.
    • The list or tag was not saved on the specific membership level being purchased. Go to MemberPress > Memberships, edit the relevant level, and confirm the ActiveCampaign section shows a list or tag value.
    • The contact already exists in ActiveCampaign and the list requires double opt-in confirmation. If double opt-in is enabled on the ActiveCampaign list, contacts appear in ActiveCampaign but show as unconfirmed until they click the confirmation email. Turn off double opt-in for that list, or expect a confirmation delay.

    Failure 3: Tags Are Stacking After a Membership Upgrade

    When a member upgrades from a Basic to a Gold membership, the Gold tag is applied but the Basic tag is not removed. This is a known limitation of the native Tags add-on. The result is a contact tagged as both Basic and Gold, which breaks any segmentation logic in ActiveCampaign that treats these as mutually exclusive.

    The fix requires a workflow that fires on MemberPress: Subscription Expired or a membership change event, removes the previous tag, and applies the new one. This is not possible inside the native add-on.

    Handle it in Krom Automation with a conditional branch that checks the old membership level and removes the corresponding tag before applying the new one. The workflow settings documentation covers how to use the run-once-per-entity setting to prevent duplicate executions if the trigger fires more than once during the upgrade process.

    What to Expect at Scale

    The native add-on processes sync calls synchronously at checkout. On a shared hosting environment with 50 or more simultaneous checkouts, this adds latency to the checkout completion step. It is rarely a visible problem on sites with fewer than 200 concurrent members purchasing at once, but it is worth knowing if you run a large cohort launch.

    Krom Automation processes all actions via Action Scheduler in the background, so the checkout completes immediately and the ActiveCampaign sync fires within the next cron cycle, typically within 60 seconds on a site with regular traffic. The how Krom Automation works documentation explains the background processing model in full.

    For sites running multiple membership levels across 5 or more client sites, Krom Automation’s workflow import and export feature matters. A workflow built once exports as JSON and imports into any other site in under 2 minutes. The native add-on requires manual per-site, per-level configuration every time.

    Background processing is not a luxury feature. On a membership site, a checkout that hangs waiting for an API call is a checkout that sometimes fails.

    Krom Automation Pricing

    Krom Automation is free to download and install, with 16 triggers, 21 actions, and a fully functional visual workflow builder at no cost. The MemberPress triggers and the ActiveCampaign actions are Pro features. Pro plans start at $119 per year for a single site, $199 per year for 5 sites, and $369 per year for unlimited sites.

    Lifetime licences are available at $299, $499, and $799 respectively. Every Pro plan includes every feature, and the difference between plans is site count only.

    For an agency managing 10 client membership sites, the Standard plan at $199 per year works out to under $20 per site per year for full lifecycle automation including cancellations, expirations, and custom field sync. A developer building that logic manually would bill 4 to 6 hours per site. The maths are straightforward.

    Download the free version from the WordPress.org plugin directory to explore the workflow builder before committing to Pro.

    Also from wpRigel

    Pollify is a Gutenberg-native poll, survey, and quiz plugin. Every poll is a real block inside the editor, which means no shortcodes to paste and no separate interface to configure. It is the straightforward way to collect member opinions or run a quiz inside a membership site post.

    Commandify is a command palette for the WordPress admin. Press Cmd or Ctrl plus K to search everything, jump to any screen, and run admin actions without clicking through menus. It is particularly useful on membership sites where admins spend significant time looking up individual member records, because Commandify can find a user by name or email in under 2 seconds from anywhere in the admin.

    Our Verdict

    The native MemberPress ActiveCampaign add-on is worth installing if you are on the Growth plan and your workflow ends at signup. It takes under 10 minutes to configure, it works reliably for new member contact creation, and it requires no additional plugins. That covers roughly 40 percent of what a functioning membership CRM actually needs.

    If your site has recurring subscriptions, if members upgrade or downgrade between levels, or if you need anything to happen in ActiveCampaign when a membership lapses, the native add-on is not enough and you will discover that gap at the worst possible moment. Add Krom Automation alongside it, build the four lifecycle workflows described above, and your MemberPress ActiveCampaign integration will handle the full member journey rather than just the first transaction.

    Sites on the MemberPress Basic plan that cannot access the native add-on should go straight to Krom Automation. It handles the same signup sync plus the full lifecycle without requiring a MemberPress plan upgrade.

    See full Krom Automation pricing and plan details to find the right option for your site count.

    Frequently Asked Questions

    If a member cancels, will their ActiveCampaign tag be removed automatically?

    Not with the native MemberPress add-on. It fires only on signup and does not respond to cancellations, expirations, or payment failures. To remove or swap tags on cancellation, you need a workflow in Krom Automation or a similar automation plugin that listens for the subscription cancelled event and sends the corresponding update to ActiveCampaign.

    Can I sync different ActiveCampaign tags to different MemberPress membership levels?

    Yes. The Tags add-on lets you configure a separate tag per membership level inside the membership edit screen.

    Each level stores its own tag value, so a Gold member and a Basic member receive different tags in ActiveCampaign on signup. The limitation is that the add-on does not remove old tags when a member switches levels, which requires a separate workflow to clean up.

    What happens if a member’s payment fails mid-subscription?

    The native add-on does nothing. The member retains their tag or list assignment in ActiveCampaign while losing access on the MemberPress side, which means they may continue receiving member-level email campaigns despite having lapsed. Handling this properly requires a failed payment trigger connected to an ActiveCampaign update, which is available through Krom Automation’s MemberPress integration.

    Can I use Zapier or Make instead of the native add-on or Krom Automation?

    Yes, and it works for basic signup sync. Zapier and Make can watch for new MemberPress transactions and create or update contacts in ActiveCampaign.

    The trade-off is per-task billing: at 500 member signups per month, a Zapier Starter plan may cover it, but 5,000 monthly events across multiple membership sites pushes into higher tiers quickly. Krom Automation has no per-execution charge at any plan level.

    Does the MemberPress ActiveCampaign integration work with free memberships?

    Yes. The add-on fires on membership signup regardless of whether the membership is paid or free.

    A free membership signup creates the contact in ActiveCampaign and applies the configured list or tag exactly as a paid signup does. The transaction completed trigger in Krom Automation fires only on paid transactions, so build your free-membership onboarding workflow from the signup trigger rather than the transaction trigger.

    The wpRigel Team

    September 13, 2026
    User Guide
  • How to Connect LearnDash to ActiveCampaign

    LearnDash has no built-in ActiveCampaign integration. To connect the two, you need a third-party bridge: either Krom Automation (a native WordPress workflow plugin), WP Fusion, or a middleware service like Zapier. This guide covers all three approaches, gives exact setup steps for Krom Automation, and documents the failure modes that keep most integrations broken for weeks before anyone notices.

    The learndash activecampaign integration matters most at three points in the student lifecycle: enrollment, course completion, and quiz results. Get those three triggers firing reliably and you can automate everything else from upsell sequences to certificate delivery to cohort segmentation in ActiveCampaign.

    The setup is not complicated, but the defaults are wrong in two places and the errors are silent. Read the troubleshooting section before you go live, not after.

    Browse the full Krom Automation feature list to see every LearnDash trigger and ActiveCampaign action available before you start building.

    Which Integration Method Should You Use?

    Three realistic options exist. Each has a different cost structure, a different data depth, and a different maintenance burden. The table below answers the decision, not the feature list.

    MethodYear-one cost (1 site)LearnDash quiz data to AC fields?Tag-based enrollment (AC tag enrolls student)?Self-hosted data?
    Krom Automation Pro$119/yearYes, via Pro triggersYes, via incoming webhookYes, execution logs stay in your database
    WP Fusion~$247/year (Personal)Yes, deep field mappingYes, native featureYes
    Zapier$0 to $240+/year depending on task volumeLimited, depends on Zap structureYes, with a two-step ZapNo, data routes through Zapier servers

    WP Fusion is the deepest native option and worth the price if the integration is the core of your business. Zapier costs scale with task volume, which means a busy course site with 500 completions per month will pay far more than year-one estimates suggest. Krom Automation sits in the middle: native to WordPress, self-hosted, and cheaper at scale because there are no per-task fees at any tier.

    The rest of this guide uses Krom Automation. The conceptual steps for triggers and actions map across all three methods, so the logic applies even if you choose a different tool.

    What Gets Synced: Field Mapping Table

    Before building any workflow, confirm what data is available to pass. A tag applied at the wrong moment with the wrong data is harder to debug than a missing tag.

    LearnDash data pointWhere it lands in ActiveCampaign
    Student email addressContact email (creates or updates contact)
    Student first nameContact field: First Name
    Student last nameContact field: Last Name
    Course titleTag or custom field: e.g. “Enrolled: [Course Name]”
    Course IDCustom field: Course ID (useful for dynamic content)
    Completion dateCustom field: Completion Date (ISO 8601 format)
    Quiz score (percentage)Custom field: Quiz Score
    Quiz pass/fail statusTag: “Passed: [Quiz Name]” or “Failed: [Quiz Name]”
    Lesson titleTag or custom field: e.g. “Completed Lesson: [Lesson Title]”
    Group enrollmentTag: “Group: [Group Name]”

    Quiz score sync to a custom field is the piece most teams discover they needed six weeks after launch, when they want to segment “passed with distinction” from “scraped through.” Map it on day one even if you have no automation planned for it yet. Changing a custom field name in ActiveCampaign after workflows depend on it breaks those workflows silently.

    A tag applied at the wrong moment with the wrong data is harder to debug than a missing tag. Map your fields before you build, not after your first 200 students enroll.

    Setting Up the Integration with Krom Automation

    You need the Krom Automation free plugin plus the Pro add-on active on your site. The LearnDash triggers and the ActiveCampaign actions are both Pro features. The installation guide for Krom Automation Pro covers licence activation if you have not done that yet.

    Step 1: Connect Your ActiveCampaign Account

    1. In your WordPress admin, go to Krom Automation Settings Integrations.
    2. Find the ActiveCampaign card and click Connect.
    3. Enter your ActiveCampaign API URL (found in AC under Settings Developer, formatted as https://youraccountname.api-ac.com) and your API Key.
    4. Click Test Connection. A green confirmation means the credentials are valid and Krom Automation can reach your ActiveCampaign account.
    5. Click Save.

    If the test fails, the most common cause is a trailing space in the API URL or key. Copy the values fresh from ActiveCampaign rather than from a password manager that may have auto-filled incorrectly.

    Step 2: Build the Course Completion Workflow

    1. Go to Krom Automation Workflows Add New.
    2. On the canvas, click the trigger node and select LearnDash: Course Completed.
    3. In the trigger settings panel, choose the specific course from the Course dropdown, or leave it set to Any Course to catch completions across your whole catalogue.
    4. Click the plus icon below the trigger to add your first action.
    5. Select ActiveCampaign: Add Tag to Contact.
    6. In the Email field, insert the merge tag {{learndash.student_email}}. This pulls the completing student’s email from the trigger data automatically.
    7. In the Tag field, type the tag you want applied, for example Completed: Advanced SEO Course. You can also use Completed: {{learndash.course_title}} to generate the tag name dynamically from the course title.
    8. Click Save Workflow and toggle the workflow status to Active.

    The merge tags documentation lists every LearnDash variable available, including course ID, lesson title, quiz score, and group name. Use it as your reference when building the field mapping from the table above.

    Step 3: Add an Enrollment Trigger

    Repeat the workflow creation process with LearnDash: Course Enrolled as the trigger. Apply a different tag, such as Enrolled: {{learndash.course_title}}, and optionally add the student to an ActiveCampaign list using the ActiveCampaign: Add Contact to List action. This list can then be the entry point for your onboarding automation in ActiveCampaign.

    For the full reference of every available LearnDash trigger, including group enrollment, lesson completion, and quiz pass and fail events, see the LearnDash integration documentation.

    Step 4: Sync Quiz Results to Custom Fields

    1. Create a new workflow with the trigger LearnDash: Quiz Completed.
    2. Add the action ActiveCampaign: Update Contact Field.
    3. Set the Email field to {{learndash.student_email}}.
    4. Set the Field Name to the exact API field name from ActiveCampaign, for example quiz_score_advanced_seo. This must match what ActiveCampaign shows under Settings Custom Fields, including case.
    5. Set the Value to {{learndash.quiz_score}} for the percentage score, or use {{learndash.quiz_passed}} for a true/false value.
    6. Add a second action below: ActiveCampaign: Add Tag to Contact. Use conditional branching to apply different tags depending on whether the student passed or failed.

    The conditions and branching documentation explains how to set up the yes/no logic so a pass applies one tag and a fail applies another, all within a single workflow.

    Step 5: Reverse Direction, Enroll a Student When an AC Tag Is Applied

    This direction requires the Incoming Webhook Receiver in Krom Automation Pro. ActiveCampaign sends a webhook when a tag is applied, Krom Automation receives it, and the workflow enrolls the student in the correct LearnDash course.

    1. In Krom Automation, go to Workflows Add New and select Incoming Webhook as the trigger.
    2. Copy the unique webhook URL generated for this workflow.
    3. In ActiveCampaign, go to Automations New Automation and choose the trigger Tag is added. Select the relevant tag.
    4. Add a Webhook action and paste the Krom Automation URL into the URL field. Set method to POST.
    5. Back in Krom Automation, add the action LearnDash: Enroll User in Course.
    6. Map the User Email field using the webhook payload variable {{webhook.contact.email}} and select the target course from the Course dropdown.

    The incoming webhook documentation covers HMAC-SHA256 signature verification, which you should enable for any webhook that triggers course enrollment. Without it, anyone who discovers the URL can enroll arbitrary users.

    Testing Before You Go Live

    Do not test by manually completing a course on a live student account. Use the Workflow Simulator in Krom Automation to do a dry run with zero side effects. It fires the trigger with sample data, walks through every action, and shows you exactly what would be sent to ActiveCampaign without actually sending it.

    After the dry run, create a test WordPress user, enroll them in the course, mark it complete from the LearnDash admin, and check the execution log under Krom Automation Logs. You want to see a green success entry for every action in the workflow. The testing and simulator documentation covers both approaches.

    Testing by completing a real course on a live account is how you discover your automation emails a student three times. Use the simulator first, always.

    What Does NOT Transfer: The Honest List

    Every integration guide covers what works. This section covers what breaks or simply does not exist, because that is the information you actually need before committing to a setup.

    • Historical enrollment data does not sync retroactively. If you have 1,200 existing students, none of their past completions will fire into ActiveCampaign when you activate the workflow. You need a one-time import via CSV or a manual process. Plan for this before you launch a campaign targeting completions.
    • Course progress percentage does not sync natively. LearnDash tracks percentage completion internally, but there is no built-in trigger for “student reached 50% of course.” You can approximate this with lesson completion triggers, but not with a single percentage threshold.
    • Group leader actions do not fire student triggers. If a group leader marks a student’s course as complete from the group leader dashboard, the LearnDash course completion hook does not always fire. Test this specifically if you use group leaders.
    • Certificate URL is not available as a merge tag by default. If you want to email students their certificate link, you need a custom merge tag or a separate plugin that exposes the URL to WordPress hooks.
    • ActiveCampaign deals and pipelines are not accessible from LearnDash triggers. The integration touches contacts, tags, lists, and custom fields. Deal creation requires a separate workflow or a dedicated CRM-level setup.
    • Deleted contacts in ActiveCampaign do not block re-creation. If a student unsubscribes and is deleted from AC, the next enrollment trigger will recreate the contact. This is usually correct behavior but surprises teams who use ActiveCampaign deletions as suppression.

    Troubleshooting: The Three Real Failure Modes

    This is the section that competitors skip. If your learndash activecampaign integration is not working, one of three things is almost always wrong.

    Failure Mode 1: Tags Are Not Appearing in ActiveCampaign

    Check the execution log first. Go to Krom Automation Logs and find the workflow run that should correspond to the completion event.

    If the log shows a success but the tag is missing in ActiveCampaign, the problem is the tag name. ActiveCampaign creates tags dynamically, but if the tag name in your action contains a merge tag that resolved to an empty string, AC receives a blank tag name and silently does nothing.

    Confirm that {{learndash.course_title}} is resolving correctly by checking the log’s detail view, which shows exactly what value each merge tag had at execution time. If it is blank, the trigger fired before LearnDash had attached course data to the hook.

    Failure Mode 2: The Workflow Never Fires at All

    If the log shows zero entries for a workflow that should have triggered, the workflow is either paused or the trigger condition is too narrow. Check two things in order.

    • Open the workflow and confirm the status toggle is set to Active, not Paused.
    • Check the trigger’s Course dropdown. If you selected a specific course and the completion happened in a different course, the trigger correctly did not fire. Set it to Any Course temporarily and test again.

    If the workflow is active and the trigger is set to Any Course and it still does not fire, confirm that LearnDash is marking the course as complete rather than just the final lesson. The two hooks are different and some themes or completion plugins intercept one without firing the other.

    Failure Mode 3: Duplicate Contacts or Duplicate Tags in ActiveCampaign

    Duplicate tags usually mean the workflow is set to run multiple times for the same user. In Krom Automation, open the workflow settings and enable Run Once Per Entity. This prevents the same user from triggering the workflow a second time, which happens when a student is manually re-enrolled or when the LearnDash completion hook fires twice due to a caching plugin clearing transients mid-request.

    Duplicate contacts in ActiveCampaign happen when the same person has multiple WordPress accounts or when the email address passed by the merge tag does not match the case of the existing contact. ActiveCampaign is case-insensitive on email matching, but confirm that {{learndash.student_email}} is returning the account email and not a secondary address from a profile field. The ActiveCampaign integration documentation explains how the contact lookup and upsert logic works.

    Automating the Full Student Journey

    Once the three core triggers are working, enrollment, completion, and quiz results, you can automate the full student experience without touching either platform manually. A realistic workflow for a paid course looks like this:

    1. Enrollment fires: tag applied in AC, student added to onboarding list, welcome sequence starts.
    2. Lesson completion fires (optional, for engagement tracking): progress field updated in AC.
    3. Quiz failure fires: tag applied, support sequence triggered asking if they need help.
    4. Quiz pass fires: score written to custom field, different tag applied.
    5. Course completion fires: enrollment tag removed, completion tag applied, upsell sequence starts for the next course.

    The article on automating new user onboarding covers how to structure the welcome and engagement sequences in more detail, including delay timing between emails.

    If you also sell courses through WooCommerce, the enrollment trigger can be combined with a WooCommerce order completion trigger to ensure students are only enrolled after payment is confirmed. The WooCommerce Subscriptions integration documentation covers how subscription renewals can re-trigger enrollment for cohort-based courses.

    The completion trigger is not the end of the student relationship. It is the most reliable moment you have to start the next one. Most sites waste it with a generic “congratulations” email and nothing else.

    Krom Automation Pricing for This Integration

    The LearnDash and ActiveCampaign integrations are both Pro features. The free version of Krom Automation includes 16 triggers and 21 actions, none of which are LearnDash-specific. Pro starts at $119 per year for a single site or $299 as a one-time lifetime purchase.

    PlanSitesAnnualLifetime
    Basic1$119/year$299
    Standard5$199/year$499
    EnterpriseUnlimited$369/year$799

    Every plan includes every Pro feature: all 24 integrations, 80+ additional triggers, 60+ additional actions, and the incoming webhook receiver needed for the reverse enrollment direction. The only difference between plans is site count.

    There are no per-task fees and no execution caps. See full pricing details or download the free version from the WordPress.org plugin directory to test the canvas before committing.

    Also from wpRigel

    Pollify is a Gutenberg-native poll, survey, and quiz plugin for WordPress. Polls are built as real blocks inside the editor, so there are no shortcodes to paste and no separate admin interface to navigate. It is useful for course sites that want mid-lesson knowledge checks or post-completion satisfaction surveys without adding a separate tool.

    Commandify is a command palette for the WordPress admin. Press Cmd or Ctrl plus K to jump anywhere, search any post or user, and run admin actions without clicking through menus. It is the only command palette with real WooCommerce order, product, and customer commands built in, which makes it worth knowing about if your course site also runs a WooCommerce storefront.

    Frequently Asked Questions

    Does LearnDash have a native ActiveCampaign integration?

    No. LearnDash does not include a built-in ActiveCampaign connection. You need a third-party plugin such as Krom Automation or WP Fusion, or a middleware service such as Zapier, to pass data between the two platforms.

    Will the integration sync past course completions for existing students?

    No. Workflow-based integrations only capture events that happen after the workflow is activated.

    Existing completions will not retroactively sync to ActiveCampaign. You need a one-time manual import or a CSV upload to backfill historical data.

    Can I enroll a student in a LearnDash course automatically when I apply a tag in ActiveCampaign?

    Yes, but it requires the incoming webhook direction. ActiveCampaign sends a webhook when the tag is applied, Krom Automation receives it and runs a workflow that enrolls the user. This needs the Krom Automation Pro incoming webhook receiver and HMAC signature verification configured to prevent unauthorized enrollments.

    What happens if the student has no WordPress account when ActiveCampaign triggers enrollment?

    The enrollment action requires an existing WordPress user. If the student does not have a WordPress account yet, the workflow needs a preceding action: Create User, using the email address from the webhook payload. The Create User action in Krom Automation handles this and will update rather than duplicate if the email already exists.

    How do I know if the workflow is working or silently failing?

    Check the execution log under Krom Automation Logs after the first few real events. Each log entry shows the trigger data, every action that ran, the exact value each merge tag resolved to, and the response from ActiveCampaign’s API. A failure at the API response level shows the error message ActiveCampaign returned, which is almost always either an invalid field name or an expired API key.

    Is quiz score data available in the ActiveCampaign integration?

    Yes. The LearnDash Quiz Completed trigger exposes the score as a percentage, a pass/fail boolean, and the quiz title. You can write the score to an ActiveCampaign custom field and apply different tags depending on the pass/fail result using conditional branching in the same workflow.

    Compare all three Krom Automation plans and see which fits your site count and budget. A 14-day money-back guarantee applies to every plan, so you can test the full LearnDash and ActiveCampaign integration on a real site before committing.

    The wpRigel Team

    September 13, 2026
    User Guide
  • 20 WordPress Automations Most Sites Should Have

    The most common WordPress automations are not exotic. They are the repetitive tasks most site owners handle manually every day: sending a welcome email when someone registers, following up on a form submission, assigning a role after a purchase, notifying the team when an order arrives.

    Krom Automation handles all 20 workflows below in the free version, using a visual drag-and-drop canvas with no code required. This article names the trigger, the action and the outcome for each one, so you can decide which to build first.

    Most guides on WordPress automation start with tools, then work backwards to tasks. This one does the opposite.

    Every item here starts with the problem you are actually trying to solve, then maps it to the trigger and action that solves it. If you want to understand the underlying concepts before diving in, the WordPress Automation Glossary covers every term you will encounter.

    The 20 automations below are grouped by area. Work through them in order if you are starting from scratch. The first five deliver the most impact on almost every site type and take under 30 minutes each to configure.

    Browse the full feature list for Krom Automation to see every trigger and action available before you start.

    Quick Summary

    GroupAutomations coveredFree or Pro
    User onboarding1 to 4Free
    Form and lead handling5 to 8Free + Pro integrations
    WooCommerce order flows9 to 12Free + Pro
    Content and publishing13 to 15Free
    Admin and maintenance16 to 17Free + Pro
    Team and messaging18 to 19Pro
    AI-assisted workflows20Free

    User Onboarding Automations

    New user moments are the highest-leverage point on any membership, community or e-commerce site. A person who just registered is more engaged than they will be 48 hours later, and most sites waste that window by sending nothing or sending a default WordPress notification email.

    1. Welcome Email on Registration

    Trigger: User Registered. Action: Send Email.

    The email goes out within seconds of sign-up, with the user’s first name pulled in via a merge tag so it reads as personal rather than automated. Sites that send a timely welcome email see first-week login rates roughly 3 to 4 times higher than those that send nothing.

    This is the single best first workflow to build. The step-by-step guide for your first workflow walks through the exact setup, including how to add merge tags for the username and login URL.

    2. Onboarding Sequence Over 7 Days

    Trigger: User Registered. Actions: Send Email, then Delay 2 days, then Send Email, then Delay 5 days, then Send Email.

    Three emails across one week covers setup help, a feature highlight and a soft check-in without requiring any manual effort after the workflow is live. The 7-day onboarding sequence guide has a full content template for each email.

    3. Role Assignment After Purchase

    Trigger: Order Completed (WooCommerce). Action: Change User Role.

    A customer who buys a membership product gets promoted from Subscriber to Member automatically, and their access changes the moment the order is marked complete. Doing this manually at any reasonable volume takes 2 to 5 minutes per order and introduces errors when orders arrive overnight.

    4. Password Reset Confirmation

    Trigger: Password Reset. Action: Send Email.

    The default WordPress password reset email is plain, unbranded and gives no reassurance. Replacing it with a branded, friendly confirmation reduces support tickets from users who are not sure the reset worked.

    The registration moment is the highest-engagement window a site ever gets with a new user. Most sites waste it by sending nothing.

    Form and Lead Handling Automations

    Forms generate leads. What happens in the 5 minutes after a form is submitted determines whether that lead converts or goes cold. Manual follow-up at that speed is not realistic, which is why form-to-action automations are among the most common WordPress automations in use.

    5. Instant Reply to Form Submission

    Trigger: Form submitted (Contact Form 7, WPForms, Gravity Forms, Fluent Forms, Elementor Forms or Ninja Forms). Action: Send Email to the submitter.

    A reply landing within 60 seconds signals that the business is responsive, even if a human follows up hours later. See the integration setup for Contact Form 7, WPForms, Gravity Forms, Fluent Forms, Elementor Forms and Ninja Forms.

    6. Add Form Submitter to Email Marketing List

    Trigger: Form submitted. Action: Subscribe to Mailchimp, ConvertKit, MailerLite, MailPoet or ActiveCampaign list. The submitter enters a nurture sequence automatically, without needing the Mailchimp or ConvertKit form embed.

    This matters for sites that want a single form to trigger both the CRM entry and the email list addition. The Mailchimp integration docs cover list selection, tag assignment and double opt-in handling.

    7. Sync Lead to CRM

    Trigger: Form submitted or User Registered. Action: Create or update contact in FluentCRM or ActiveCampaign.

    Lead data reaches the CRM within seconds rather than in a nightly CSV import. For teams using FluentCRM or ActiveCampaign, the integration maps form fields to contact fields automatically.

    8. Internal Notification on High-Value Form

    Trigger: Form submitted (with a conditional branch checking the enquiry type or budget field). Action: Send Email to the sales inbox. Low-value enquiries go to a shared inbox.

    High-value ones get a separate, flagged notification to the right person within 60 seconds of submission. The conditions and branching documentation explains how to set the Yes/No split.

    A lead that gets no reply within 5 minutes is not a warm lead anymore. It is just a name in a database.

    WooCommerce Order Flow Automations

    WooCommerce stores generate at least 6 to 8 touchpoints per order that most store owners handle manually or skip entirely. Automating even 3 of them saves 10 to 20 minutes per order day and removes the variability that comes from human follow-up.

    9. Order Confirmation with Personalised Details

    Trigger: Order Created. Action: Send Email using merge tags to include the order number, product name and estimated delivery window.

    WooCommerce sends its own order confirmation, but it is plain and unbranded by default. A second, branded email with a personal tone improves customer satisfaction scores and reduces “did my order go through?” support queries.

    10. Post-Delivery Follow-Up and Review Request

    Trigger: Order Completed. Action: Delay 7 days, then Send Email asking for a review.

    Seven days gives the customer time to receive and use the product before the ask arrives. This single automation typically generates 3 to 5 times more reviews than hoping customers return voluntarily to leave one.

    11. Coupon for Second Purchase

    Trigger: Order Completed. Action: Create Coupon, then Send Email with the code.

    A unique, expiring coupon included in the post-purchase email drives repeat orders without running a sitewide discount. The coupon is created dynamically for each customer, so it cannot be shared or reused.

    12. Subscription Status Alerts

    Trigger: Subscription renewed, cancelled or payment failed (WooCommerce Subscriptions). Action: Send Email to the customer or update user meta.

    Catching a failed payment within seconds of it happening and sending a clear recovery email recovers a meaningful percentage of otherwise lost recurring revenue. The WooCommerce Subscriptions integration covers all subscription lifecycle triggers.

    Content and Publishing Automations

    Most content automation guides focus on social sharing. The higher-value automations happen before the content is published: auto-tagging, internal classification and status notifications. These are the gaps that no competing guide addresses.

    13. Auto-Tag New Posts with AI

    Trigger: Post Published. Action: AI Auto-Tag. Krom Automation reads the post content and assigns relevant tags automatically, using whichever AI provider you have connected (GPT-4o, Gemini 2.5 or Llama).

    On a site publishing 20 or more posts per month, manual tagging takes 3 to 5 minutes per post and gets skipped half the time. AI tagging is consistent and instant.

    14. Automatic Social Sharing on Publish

    Trigger: Post Published. Action: Post to Facebook, Twitter/X or LinkedIn. The post goes live on social within seconds of publishing, without requiring a separate scheduling tool or manual copy-paste.

    The blog post distribution guide covers how to write a workflow that customises the social caption per platform. The social media integration documentation has the full setup steps.

    15. Notify Team on Post Status Change

    Trigger: Post Status Changed (for example, draft to pending review). Action: Send Email to the editor. Content teams on WordPress rarely have a formal review workflow.

    This automation creates one without adding a plugin or changing the editorial process. An editor gets an email the moment a writer marks a post as pending, including the post title and a direct edit link via merge tag.

    Admin and Maintenance Automations

    No competing guide covers this category, but it is where a surprising amount of admin time disappears. The automations below are not glamorous, but the sites that have them run more cleanly and waste less time on tasks that feel like they should handle themselves.

    16. Log and Notify on Suspicious Login

    Trigger: User Login, with a conditional branch checking the user role or login time. Action: Send Email to the site administrator.

    A standard WordPress site has no built-in alert when an admin account logs in from an unexpected context. Adding a conditional notification for admin logins outside of business hours costs nothing and catches credential compromise faster than any periodic manual audit.

    17. Scheduled Data Export or Report

    Trigger: Schedule (daily, weekly or monthly, set via the Pro Schedule trigger). Action: HTTP Request to an external reporting endpoint, or Send Email with a summary. Rather than logging in to check stats, the report arrives.

    The Schedule trigger documentation covers interval options including custom cron expressions. See also the guide on automated WordPress reports for a practical workflow example.

    Team and Messaging Automations

    WordPress events rarely stay inside WordPress. A new order, a support ticket, a failed payment, a new member signup: these are all events a team needs to know about in real time, in whatever tool they actually use. Routing them to Slack or Discord takes under 5 minutes to configure and eliminates the check-the-dashboard habit entirely.

    18. Slack or Discord Notification on Key Events

    Trigger: Order Created, User Registered, Comment Submitted or any other event. Action: Send message to a Slack channel or Discord server.

    The team sees the event within seconds in the tool they already have open. The messaging integrations documentation covers Slack, Discord, Twilio and Telegram setup.

    19. Log Key Events to Google Sheets

    Trigger: Any event, for example Order Completed or User Registered. Action: Append a row to a Google Sheet.

    Every order, signup or form submission builds a live log that anyone on the team can filter, sort or hand to an accountant without needing WordPress access. The Google Sheets integration documentation shows how to map merge tags to specific columns.

    AI-Assisted Automation

    20. AI Content Moderation on Comment Submission

    Trigger: Comment Submitted. Action: AI Content Moderation, then a conditional branch. Comments that pass go straight to Approved.

    Comments flagged as spam or inappropriate go to Pending for manual review. On a site receiving 50 to 200 comments per week, this workflow reduces moderation time by roughly 60 to 80 percent while keeping a human in the loop for edge cases.

    All three AI actions in Krom Automation (Generate Text, Content Moderation and Auto-Tag) are included free. You supply your own API key and pay your AI provider directly at standard rates. wpRigel does not charge per call or mark up tokens.

    AI moderation that flags for human review, rather than auto-deleting, is the right default. Automated confidence scores are not 100 percent, and a false deletion is worse than a short delay.

    What Does All of This Cost?

    Fourteen of the 20 automations above run on the free version of Krom Automation. The six that need Pro (the Schedule trigger, Slack and Discord messaging, Google Sheets, and the social media integrations) require a paid plan. Here is how the cost stacks up across the realistic decision points.

    ScenarioPlan neededCost, year 1Cost from year 2
    14 free automations only, 1 siteFree$0$0
    All 20 automations, 1 siteBasic annual$119$119/year
    All 20 automations, up to 5 sitesStandard annual$199$199/year
    All 20 automations, unlimited sitesEnterprise annual$369$369/year
    All 20 automations, 1 site, no renewalBasic lifetime$299$0

    Every Pro plan includes every feature. The only variable is how many sites you can activate the licence on. All plans carry a 14-day money-back guarantee.

    What These Automations Do Not Replace

    Krom Automation is WordPress-native, which means the trigger or the action needs to involve your WordPress site. It is not the right tool for automating between two external services with no WordPress involvement. For that use case, a dedicated external automation platform is the better fit.

    Delays in Krom Automation run via Action Scheduler, which depends on WordPress Cron. On very low-traffic sites where no one visits for hours at a time, a delayed action fires late unless you configure a real server cron job. The delay and scheduling documentation explains how to set that up and when it matters.

    The guide on what to automate first is useful if you are looking for a prioritised starting point rather than a full list. It covers which automations deliver the fastest return and which ones to leave until the basics are stable.

    How to Build Your First Workflow

    Every workflow in Krom Automation follows the same pattern: pick a trigger, add one or more actions, set any conditions or delays, then test with the simulator before activating. The step-by-step workflow builder guide walks through each part of the canvas. The workflow simulator runs a dry run with zero side effects, so you can confirm the logic works before any real user triggers it.

    Krom Automation ships with 20 ready-made workflow templates in the free version, covering the most common automations including several from this list. You can import a template, adjust the email copy or conditions to fit your site, and activate it in under 10 minutes.

    • Install the plugin from the WordPress.org plugin directory
    • Open Krom Automation in your WordPress admin and choose a template or start from a blank canvas
    • Select your trigger from the 16 available free triggers
    • Add actions from the 21 available free actions
    • Add a condition branch or delay if the workflow needs one
    • Run the simulator to confirm the logic, then activate

    The overview of how Krom Automation works covers the full mental model if you want to understand triggers, actions and the execution engine before you start building.

    Also from wpRigel

    Pollify is a Gutenberg-native poll, survey and quiz plugin. Polls are built directly as blocks inside the editor, so there are no shortcodes to paste and no separate configuration screen to learn. It fits naturally into any post or page without disrupting the writing workflow.

    Commandify is a command palette for the WordPress admin. Press Cmd or Ctrl plus K to jump anywhere in the dashboard, search posts, users or products, and run admin actions without clicking through menus. It is the only command palette plugin with real WooCommerce order, product and customer management built in.

    Start with the Free Version

    Fourteen of the 20 automations on this list are available in the free version of Krom Automation, with no trial period, no run caps and no features locked behind a paywall. The free plugin covers user onboarding, form follow-ups, WooCommerce order flows, AI auto-tagging, content moderation and team email notifications.

    If you run more than one site or need the Pro integrations for Slack, Google Sheets or social media, see the full plan breakdown to find the right tier. Every plan includes a 14-day money-back guarantee, so there is no risk in testing Pro on a real site before committing.

    Frequently Asked Questions

    Can I use these automations without writing any code?

    Yes. Every workflow in Krom Automation is built on a visual drag-and-drop canvas.

    You pick triggers and actions from a list, connect them with lines, and add conditions or delays using form fields. No PHP, no JavaScript and no shortcodes are involved.

    Do I need WooCommerce installed to use Krom Automation?

    No. WooCommerce is optional. The WooCommerce triggers and actions activate automatically if WooCommerce is present, but the rest of the plugin works on any WordPress site regardless of whether WooCommerce is installed.

    Will these automations slow down my site?

    Workflows run in the background via Action Scheduler, which means they execute outside of page load requests. A visitor browsing your site never waits for a workflow to finish. See the honest answer on automation plugin performance for more detail on how background execution works.

    How do I connect my email marketing tool to these workflows?

    Krom Automation Pro includes direct integrations for Mailchimp, ConvertKit, MailerLite, MailPoet and ActiveCampaign. Each integration lets you subscribe contacts, add tags and trigger sequences directly from a workflow action, without passing data through a third-party connector.

    What happens if an automation fails?

    Krom Automation logs every workflow execution with a full per-step audit trail. Failed executions trigger an email notification to the site administrator and retry automatically with configurable backoff. You can see the full execution history and drill into any failed step from the analytics dashboard.

    Can I test a workflow before it goes live?

    Yes. The built-in workflow simulator runs a complete dry run with zero side effects.

    No emails are sent, no posts are created and no external APIs are called during a simulation. The simulator shows you exactly which path the workflow would take and flags any configuration errors before activation.

    The wpRigel Team

    September 13, 2026
    User Guide
  • WordPress Automation Glossary: Every Term Explained

    This glossary covers every WordPress automation term you are likely to encounter, from the basics like triggers and actions to the technical layer underneath, including webhooks, cron jobs, REST API calls, and conditional branching. Each definition stands alone, so you can jump to any term without reading the rest. If you are building your first workflow or evaluating an automation plugin, these are the words you need to know before you start.

    The vocabulary around WordPress automation borrows from general programming, from SaaS tools like Zapier and Make, and from WordPress’s own hook system. That mix creates genuine confusion because the same word sometimes means different things depending on the context. This glossary untangles those overlaps explicitly.

    We built Krom Automation, a visual workflow automation plugin for WordPress, so we live inside this vocabulary every day. The definitions below reflect how these terms work in practice, not just in theory. Browse the full feature list to see how they apply inside a real plugin.

    Core Concepts: The Vocabulary Every Automation Starts With

    Trigger

    A trigger is the event that starts a workflow. It is the “if this” in the “if this, then that” model. In WordPress, triggers map to real site events: a user registers, a post publishes, a WooCommerce order completes.

    No trigger means no automation runs. The number of distinct triggers a plugin offers determines how much of your site’s activity it can actually respond to. Krom Automation’s free version includes 16 built-in triggers across users, posts, comments, media, and WooCommerce.

    Action

    An action is what happens after the trigger fires. It is the “then that” half. Examples include sending an email, creating a post, changing a user role, or making an HTTP request to an external service.

    A single trigger can chain multiple actions in sequence. The distinction between a WordPress “action hook” (a developer concept) and an automation “action” (a workflow step) confuses beginners, but the two are unrelated in daily use. See the full free actions reference for a complete list of what each action does.

    Workflow

    A workflow is the complete automation: one trigger connected to one or more actions, with optional conditions and delays between them. Some tools call this a “recipe” (Uncanny Automator), a “flow” (FlowMattic), or a “scenario” (Make). The word differs by product but the structure is the same.

    A workflow sits dormant until its trigger fires, then executes top to bottom. How Krom Automation works walks through the trigger-action-workflow relationship in detail.

    Recipe

    Recipe is Uncanny Automator’s term for a workflow. A recipe contains one trigger and any number of actions. Outside Uncanny Automator, most WordPress automation tools use “workflow” instead.

    The concepts are identical. If you see documentation that refers to recipes and you are using a different plugin, read “recipe” as “workflow” throughout.

    The word “recipe” means exactly the same thing as “workflow.” The terminology differs by product, but the confusion it causes is real and completely avoidable.

    Canvas

    A canvas is the visual interface where you build a workflow by placing and connecting nodes. It replaces the older list-based rule editor pattern, where triggers and actions lived in dropdowns stacked vertically. A canvas makes branching logic, delays, and parallel paths readable at a glance.

    Not every automation plugin uses a canvas. List-based editors are still common in simpler tools. Krom Automation uses a drag-and-drop canvas built on ReactFlow with auto layout, which means nodes reposition automatically as you add steps.

    Logic and Control Flow

    Conditional Logic / Conditional Branching

    Conditional logic adds a decision point to a workflow. Instead of every trigger firing the same actions every time, a condition checks a value and routes execution down a Yes path or a No path.

    For example: “if the new user’s role is ‘subscriber’, send welcome email A; if their role is ‘editor’, send welcome email B.” Without conditions, you need a separate workflow for every variation. Conditions and branching in Krom Automation covers how to add Yes/No logic to any workflow step.

    Delay / Delay Scheduling

    A delay pauses execution between steps for a set amount of time. Delays are used to space out a welcome email sequence (send immediately, then again after 3 days, then again after 7 days), to wait for a payment to clear before granting access, or to schedule a reminder before an event. Delay units in Krom Automation include minutes, hours, days, weeks, or a custom number of seconds.

    Delays depend on WordPress Cron to fire on time, so very low-traffic sites may see delays fire late unless a real server cron is configured. See delays and scheduling documentation for configuration details.

    Run Once

    Run once is a setting that prevents a workflow from executing more than one time for the same entity, usually a user or a post. Without it, a workflow triggered by “user login” would run every time that user logs in, which is usually not what you want for a one-time onboarding sequence.

    Run once enforcement is stored per entity in the workflow’s execution log. Krom Automation includes this in the free version.

    Loop

    A loop repeats an action across a list of items. For example: for every subscriber on a list, send a personalised email. Loops are common in more advanced automation platforms and in developer-level WordPress automation.

    In no-code WordPress plugins, looping is less common and is usually handled by Pro tiers when it exists. It is worth checking whether a plugin’s free tier supports loops before building a workflow that requires them.

    Data and Dynamic Values

    Merge Tags / Dynamic Variables

    Merge tags are placeholders that inject live data from the trigger event into any action field. If your trigger is “User Registered” and your action is “Send Email”, a merge tag like {{user_email}} inserts the actual email address of the user who just registered. Without merge tags, every automated email would be identical.

    With them, every execution is personalised to the specific event that fired. Merge tags in Krom Automation lists every available variable and how to use them inside action fields.

    Token

    Token is another word for merge tag, used primarily in Uncanny Automator. A token pulls data from the trigger and makes it available to downstream actions.

    If you see “token” in automation documentation, treat it as a synonym for merge tag. The underlying mechanism is the same: a variable that resolves to a real value at execution time.

    Execution Log

    An execution log records every time a workflow runs, including which trigger fired, which actions executed, whether each step succeeded or failed, and the exact data passed between steps. Execution logs are essential for debugging.

    A workflow that runs silently and produces no output is impossible to diagnose without a log. Krom Automation stores a full per-step audit trail for every execution, which means you can see exactly where a workflow broke and why.

    A workflow that fails silently looks identical to a working one until you check the execution log. Per-step logging is not a premium feature you can skip.

    Payload

    A payload is the data package sent with an event or request. When a webhook fires, it sends a payload, typically formatted as JSON, containing all the details of what happened.

    When you make an HTTP request action, the payload is the body of the request you send to the external service. Understanding payloads matters when connecting WordPress to external APIs, because the structure of the payload determines what the receiving service can do with the data.

    Connections to External Services

    Webhook

    A webhook is an HTTP request sent automatically when a specific event occurs. Instead of your site checking an external service every few minutes to see if anything changed (polling), the external service pushes data to your site the moment it happens (webhook). Webhooks require a receiver URL that accepts the incoming request.

    Krom Automation Pro includes an incoming webhook receiver with HMAC-SHA256 signature verification and 9 security layers. For a deeper explanation of how webhooks work in WordPress specifically, see Webhooks Explained Without the Jargon.

    HTTP Request / API Call

    An HTTP request is how WordPress communicates with external services. When your workflow needs to send data to Slack, update a record in Airtable, or trigger an action in any tool that has an API but no native integration, you send an HTTP request.

    Krom Automation’s free HTTP Request action supports GET, POST, PUT, PATCH, and DELETE methods with JSON response parsing, which means you can connect to any external service with an API without writing code. See how to connect any external service to WordPress for a practical walkthrough.

    REST API

    The WordPress REST API is a built-in interface that lets external applications read and write WordPress data over HTTP. It is the mechanism behind mobile apps, headless WordPress setups, and many automation integrations.

    When a tool says it “uses the WordPress REST API”, it means it sends requests to endpoints like /wp-json/wp/v2/posts rather than loading WordPress pages directly. Krom Automation exposes its own REST API under the krom-automation/v1 namespace, which lets developers trigger workflows, query execution logs, and manage workflows programmatically.

    Integration

    In automation contexts, an integration is a pre-built connection between your WordPress site and a specific external service. Integrations package the authentication, the trigger definitions, and the action definitions for a third-party tool so you do not have to configure raw HTTP requests.

    Krom Automation Pro includes 24 integrations covering forms, e-commerce, CRM, email marketing, LMS, membership, messaging, social media, data storage, productivity, and affiliate tools. Examples include the Mailchimp integration for subscriber sync and the Google Sheets integration for data storage.

    Native vs. SaaS Automation

    Native automation runs on your WordPress server. SaaS automation (Zapier, Make, n8n cloud) runs on a third-party platform and connects to your site via API or webhook. Native automation keeps all data, credentials, and execution logs inside your own database.

    SaaS automation adds a dependency on an external platform and routes your site’s data through it. For sites handling personal data, order information, or customer records, the distinction matters.

    See self-hosted vs. SaaS automation and data privacy for a comparison of the two approaches.

    WordPress-Specific Technical Terms

    Hook (WordPress Core)

    A hook is a WordPress developer concept that lets code interrupt WordPress at a specific point to run custom functions. There are two types: action hooks (which run code at a point in execution) and filter hooks (which modify data passing through). Hooks are what automation plugins use under the hood to detect that a trigger event happened.

    When a user registers, WordPress fires the user_register action hook, and an automation plugin listens for that hook to start a workflow. As a non-developer using an automation plugin, you interact with hooks indirectly through the trigger interface, not directly in code.

    Action Hook vs. Filter Hook

    An action hook lets you run code at a specific moment during WordPress execution. A filter hook lets you modify a value before WordPress uses it. Action hooks are what most automation triggers are built on, because they fire when something happens.

    Filter hooks are used more in theme and plugin development to transform data. If you are configuring an automation plugin and not writing PHP, you will almost never need to distinguish between them. The distinction matters only when you are writing custom trigger or action extensions.

    WP-Cron

    WP-Cron is WordPress’s built-in task scheduler. Instead of a real operating system cron job, WP-Cron runs scheduled tasks the next time any visitor loads a page after the scheduled time. This means that on low-traffic sites, a task scheduled for 9:00 AM might not run until 11:00 AM when the first visitor arrives.

    Automation delays and scheduled workflows rely on WP-Cron by default. For reliable timing, replace WP-Cron with a real server cron that calls wp-cron.php at a fixed interval. Krom Automation uses Action Scheduler on top of WP-Cron, which adds a persistent job queue and retry logic, but the underlying dependency on site traffic still applies.

    Action Scheduler

    Action Scheduler is an open-source job queue library originally built for WooCommerce. It stores scheduled tasks in the database and processes them in the background, separate from page loads.

    This is more reliable than raw WP-Cron for high-volume tasks because it does not lose jobs on a slow page load and supports automatic retry on failure. Krom Automation runs all workflow executions through Action Scheduler, which means nothing blocks while a workflow runs and failed jobs retry automatically with configurable backoff.

    Cron Job (Server Level)

    A cron job is a scheduled task configured at the server operating system level, independent of WordPress. It runs at a precise time regardless of site traffic. A server cron job is the correct fix when WP-Cron timing is unreliable.

    It is configured in the server’s crontab file and typically calls wp-cron.php every minute or every five minutes. If your host does not give you crontab access, most managed WordPress hosts offer a scheduled task feature as an alternative.

    Background Processing

    Background processing means running tasks outside the normal request-response cycle that serves a page to a visitor. Without background processing, every automation action would slow down the page load of whatever triggered it. With background processing, the trigger fires, WordPress queues the job, the page load completes at normal speed, and the workflow executes separately a few seconds later.

    This is why plugins that run automation correctly have no measurable effect on frontend performance. See do automation plugins slow down WordPress for the full answer.

    Workflow Builder Features

    Visual Builder / Drag-and-Drop Canvas

    A visual builder is a graphical interface for constructing workflows by placing and connecting blocks on a canvas, rather than filling in form fields or writing code. Drag-and-drop means you move nodes by clicking and dragging them. Not all automation plugins use a visual builder.

    Many use a vertical list of configured rules, which works for simple linear flows but becomes hard to read when branching logic is involved. Using the visual workflow builder in Krom Automation covers canvas navigation, node placement, and auto layout.

    Node

    A node is a single step on a workflow canvas. Each node represents either the trigger, an action, a condition, or a delay. Nodes connect to each other with lines showing the direction of execution.

    On a branching workflow, a condition node splits into two output lines: one for Yes, one for No. The node-based model makes complex workflows readable because the structure is visible rather than implied by a list order.

    Simulator / Dry Run

    A simulator lets you test a workflow without actually executing its actions. It walks through the workflow logic using test data and shows you what would have happened at each step: which path a condition would have taken, what value a merge tag would have resolved to, which action would have fired.

    Dry run testing prevents the classic problem of discovering a workflow error by watching it send 500 emails to real users. Testing workflows with the simulator explains how to set up and read a dry run result.

    Import / Export

    Workflow import and export lets you save a complete workflow as a portable file, typically JSON, and restore it on another site. This is useful for agencies deploying the same automations across client sites, for backing up workflows before making changes, and for sharing workflow templates with other users. Krom Automation supports import and export as JSON in the free version, with no licence restriction on the number of workflows you can export.

    A workflow you cannot export is a workflow you cannot back up. Import/export is not a nice-to-have feature once you have more than three active workflows.

    Execution Analytics

    Execution analytics summarise how your workflows are performing over time. Useful metrics include total executions, success rate, failed execution count, and execution trend over a date range. Per-workflow breakdowns show which automations run most often and which fail most often.

    Without analytics, a workflow failing 15 percent of the time looks identical to a healthy one. Krom Automation’s analytics dashboard is included free and covers all of those metrics. The reports page adds date range filtering and CSV export.

    Plan and Licensing Terms

    Free vs. Pro

    Most WordPress automation plugins offer a free version on WordPress.org and a paid Pro version with additional triggers, actions, and integrations. The division matters because the free version determines what you can build without paying anything. Krom Automation’s free version includes 16 triggers, 21 actions, 20 workflow templates, and AI actions with no paywall.

    Pro adds 80+ additional triggers, 60+ additional actions, 24 integrations, and 101 additional templates. See the free vs. Pro feature comparison for the exact breakdown.

    Per-Task Billing

    Per-task billing charges you a fee for each automation execution, rather than a flat annual or lifetime licence. Zapier and Make both use this model: you buy a number of “tasks” or “operations” per month, and every action in every workflow consumes one.

    A busy site can exhaust a monthly allowance quickly. Native WordPress automation plugins, including Krom Automation, charge a flat licence fee with no per-execution billing at any tier.

    Annual vs. Lifetime Licence

    An annual licence grants access to the plugin and updates for one year and requires renewal to continue receiving updates. A lifetime licence grants permanent access and updates for a one-time payment.

    Lifetime licences carry more upfront cost but lower long-term cost. Krom Automation offers both, with annual plans starting at $119 for one site and lifetime plans starting at $299 for one site.

    Site Activation / Site Licence

    A site activation is a single installation of a Pro plugin on one WordPress site. A licence covers a specific number of activations. A 5-site licence lets you install the Pro version on up to 5 different WordPress installs.

    Krom Automation’s Standard plan covers 5 sites for $199 per year or $499 lifetime. The Enterprise plan covers unlimited sites for $369 per year or $799 lifetime.

    Also from wpRigel

    Pollify is wpRigel’s Gutenberg-native poll, survey, and quiz plugin. Polls are built as real blocks inside the editor, so there are no shortcodes to paste and no separate admin interface to learn. If you run a site that collects audience feedback, it fits directly into the writing workflow you already use.

    Commandify is a command palette for the WordPress admin. Press Cmd or Ctrl plus K to jump to any page, search any content, and run admin actions without clicking through menus. It is the only command palette plugin with genuine WooCommerce depth: orders, products, and customers are all first-class commands, not an afterthought.

    What to Build First

    If this glossary is your starting point, the most useful next step is building one workflow before exploring every feature. The classic starting workflow is a welcome email triggered by user registration: one trigger, one action, one merge tag.

    Your first workflow: send a welcome email when a user registers walks through every step. After that, the what to automate first on a WordPress site guide covers which automations make the biggest practical difference, in the order that makes sense to tackle them.

    The free version of Krom Automation is available on the WordPress.org plugin directory with no trial period, no run caps, and no features held back from non-paying users. Download it free and build your first workflow today.

    When you are ready to add integrations like FluentCRM, LearnDash, or Slack and Telegram messaging, Pro plans start at $119 per year. See full pricing details and compare the three plans side by side.

    Frequently Asked Questions

    What is the difference between a hook and a trigger in WordPress automation?

    A hook is a WordPress developer concept used in PHP code to listen for events inside WordPress core. A trigger is the user-facing term in automation plugins for the same underlying event.

    When you select “User Registered” as a trigger in Krom Automation, the plugin is listening to the user_register hook under the hood. You interact with triggers, not hooks, unless you are writing custom extensions in PHP.

    Is a recipe the same as a workflow?

    Yes. Recipe is the term Uncanny Automator uses for what most other automation plugins call a workflow.

    Both describe the same structure: one trigger connected to one or more actions, with optional conditions and delays. The word is product-specific, not a technical distinction.

    What is the difference between an action hook and a filter hook in WordPress?

    An action hook runs code at a specific moment during WordPress execution without changing any output. A filter hook modifies a piece of data before WordPress uses it.

    In the context of automation plugins, action hooks are the mechanism most triggers are built on, because they fire when something happens. As a non-developer using a plugin’s interface, you will almost never need to distinguish between them.

    Does WP-Cron affect automation delays and scheduled triggers?

    Yes. WP-Cron only fires when a page is loaded on your site, so on low-traffic sites a delay or scheduled trigger may run later than intended.

    The fix is to disable WP-Cron in wp-config.php and add a real server cron job that calls wp-cron.php every minute. Most managed WordPress hosts offer a scheduled tasks interface as an alternative to direct crontab access.

    What is the difference between per-task billing and a flat licence?

    Per-task billing charges a fee for every automation execution, so a site that runs 10,000 workflow actions per month pays proportionally more than one running 100. A flat licence charges a fixed annual or lifetime price regardless of how many workflows run. Native WordPress automation plugins like Krom Automation use flat licensing, while SaaS platforms like Zapier and Make use per-task billing.

    What is a merge tag and where do I use one?

    A merge tag is a placeholder you insert into an action field that resolves to live data from the trigger event at execution time. For example, placing {{user_first_name}} in an email subject line inserts the actual first name of whoever triggered the workflow. Merge tags work in any text field inside an action, including email subjects, email bodies, post titles, and HTTP request payloads.

    The wpRigel Team

    September 12, 2026
    User Guide
  • Automated WordPress Reports Without Logging In Daily

    Automated WordPress reports let you pull site data on a schedule and deliver it by email, so you never have to log in just to check a number. With Krom Automation, you build the report once as a workflow, set a daily, weekly, or monthly schedule, and the digest arrives in your inbox automatically. The free version covers a surprising amount; the Schedule trigger that makes this possible is a Pro feature, starting at $119 per year for a single site.

    Most WordPress site owners spend 20 to 40 minutes per week logging in, pulling numbers, and copying them somewhere useful. That is not reporting.

    That is manual data collection, and it compounds badly when you manage more than one site. A properly configured automation does the same job in zero minutes of your time.

    This guide covers three practical setups: a daily order digest for WooCommerce stores, a weekly performance summary for content sites, and a monthly export for records or clients. Each section includes the exact workflow structure, the merge tags that pull live data, and the honest caveats about what the automation can and cannot fetch on its own.

    Browse the full Krom Automation feature list to see what triggers and actions are available before you build.

    Why “Just Log In” Is Not a Reporting Strategy

    Logging in to check a number is a context switch. Research on interruption costs puts the recovery time at 20 to 25 minutes per interruption. If you log in to check orders twice a day, you are spending close to an hour recovering from the interruptions, not counting the time inside the dashboard itself.

    The deeper problem is consistency. A manual check happens when you remember.

    An automated report happens whether you remember or not. When something breaks, a daily digest that goes quiet is a louder signal than an alert you set and forgot to configure.

    A manual check happens when you remember. An automated report happens on schedule, which means a quiet report is itself information.

    Existing solutions split into two camps that do not overlap. Traffic and analytics tools send GA-based email reports. Maintenance and care plan tools send uptime, backup, and update reports.

    Almost nothing sends a single digest combining order activity, content performance, and site health into one email. That gap is exactly what a custom Krom Automation workflow fills.

    How the Schedule Trigger Works

    The Schedule trigger fires a workflow at a fixed interval rather than in response to a site event. You configure it once and it runs on its own from that point forward. The available intervals are hourly, daily, weekly, monthly, a custom interval you define, or a one-time future date.

    This is a Krom Automation Pro feature. The free version’s 16 triggers are all event-based, meaning something on the site has to happen before a workflow runs. Scheduled reporting requires the Pro version because the trigger needs to fire on a clock, not on a user action.

    One important technical note: Krom Automation executes workflows via Action Scheduler, which runs in the background and never delays page loads. But Action Scheduler itself depends on WordPress Cron to know when to fire. On a very low traffic site where no visitor arrives for several hours, the scheduled time can drift.

    If precision matters, configure a real server cron to call wp-cron.php directly. Your host’s control panel or the WP-CLI documentation covers how to do this.

    Setup 1: Daily WooCommerce Order Digest

    A daily order digest tells you how many orders came in, what their total value was, and whether any are sitting in a status that needs attention. This is the report most WooCommerce store owners check manually every morning. It takes about 3 minutes to read and 20 minutes of logging in and clicking to produce without automation.

    The workflow structure is straightforward:

    1. Trigger: Schedule trigger, set to daily at a time you will actually read it. 7 AM local time works well for most store owners.
    2. Action: Send Email, addressed to your own address or a shared operations inbox.
    3. Email body: Use merge tags to pull the current date, and write the digest template once. The email content is fixed; what changes each day is the data the tags inject.

    What the free WooCommerce actions cover: creating coupons and updating order status. For pulling aggregate order counts and totals into an email body, you are working with the HTTP Request action to call the WooCommerce REST API, or using the Google Sheets integration to log and retrieve running totals. Both approaches are documented and work without custom code.

    The most practical entry point for most store owners is a daily email that reports on individual order events that fired in the last 24 hours, using the Order Created and Order Completed triggers as separate workflows that log to a shared spreadsheet, and the Schedule trigger that reads that sheet and emails a summary. That three-workflow chain takes about 45 minutes to configure and runs indefinitely without maintenance.

    A three-workflow chain that took 45 minutes to configure will outperform a daily manual check indefinitely. The setup cost is a one-time expense.

    Setup 2: Weekly Performance Summary for Content Sites

    A weekly performance summary answers a different set of questions than a daily order digest. You want to know which posts published, how many comments arrived, how many users registered, and whether any post was deleted or changed status unexpectedly. This is the content site equivalent of a Monday morning briefing.

    The workflow structure for a weekly summary:

    1. Trigger: Schedule trigger, set to weekly. Monday morning at 8 AM gives you the previous week’s activity as a start-of-week read.
    2. Logging workflows: Separate event-based workflows running in the background all week. Each time a Post is Published, a User Registers, or a Comment is Approved, a logging action fires and writes the event to a Google Sheet or sends a silent HTTP request to an endpoint you control.
    3. Summary action: The weekly schedule workflow reads those accumulated logs and emails a formatted digest.

    For merge tags that inject live data into the email, see the merge tags documentation. Tags can pull post titles, user display names, comment content, and timestamps into any email field without code.

    The free version’s 16 triggers include Post Published, Post Updated, Post Deleted, Post Status Changed, User Registered, Comment Submitted, and Comment Approved. All of these fire events you can log throughout the week. The Schedule trigger (Pro) then fires the summary email that collects them.

    If your content site uses forms for leads or feedback, the Gravity Forms integration and WPForms integration let you log form submissions into the same weekly digest, giving you a unified view of content activity and audience engagement in a single email.

    What Each Report Type Costs You to Build

    Report type Krom plan needed Annual cost Setup time (one-off) Weekly time saved
    Daily order digest Pro Basic $119/year 45 to 60 minutes 20 to 30 minutes
    Weekly content summary Pro Basic $119/year 30 to 45 minutes 15 to 20 minutes
    Monthly CSV export Pro Basic $119/year 60 to 90 minutes 30 to 60 minutes
    All three combined Pro Basic $119/year 2 to 3 hours total 65 to 110 minutes/week

    At 65 to 110 minutes saved per week, the $119 annual cost pays back in the first 3 to 6 weeks. Every week after that is clear profit on time. A freelancer billing at $50 per hour recovers that cost in roughly 2.5 hours of recovered time.

    Setup 3: Monthly Export for Records or Clients

    A monthly export serves two audiences: site owners who want a permanent record, and agencies who send deliverables to clients. The goal is a structured summary that arrives on the first of every month without anyone assembling it by hand.

    The most robust approach combines two tools. During the month, event-based Krom Automation workflows log every significant event to a Google Sheet using the Sheets integration. On the first of each month, a Schedule trigger fires a workflow that sends an email to the client or records address with a summary of the logged data and a link to the live sheet for the full detail.

    For agencies who need a more polished output, the visual email builder in Krom Automation Pro lets you design a block-based email template that looks professional without touching HTML. You build the template once and the monthly schedule workflow uses it every time.

    What a monthly report should include depends on the site type, but the most useful reports cover all three categories that existing tools split across separate products:

    • Commerce activity: orders created, orders completed, total revenue for the period, new customers
    • Content activity: posts published, comments approved, new user registrations, media uploads
    • Site events: password resets, user role changes, any post deletions or status changes that look unexpected

    Combining all three in one email is the gap none of the major reporting tools fill. GA-focused report tools give you traffic.

    Maintenance report tools give you uptime and updates. A Krom Automation workflow gives you the events that actually happened on your site, structured exactly the way you want them.

    Which Approach Fits Which Situation

    Your situation Best approach Why
    WooCommerce store, one site Daily digest via Schedule trigger Catches order issues before end of business without logging in
    Content blog, one or two authors Weekly summary via Schedule trigger Weekly rhythm matches editorial cadence; daily is too frequent
    Agency managing 5 client sites Monthly export per site, Google Sheets as log One workflow template imported to each site, consistent output
    Membership site Weekly digest including MemberPress events Subscription starts, cancellations and expirations need a regular check
    LMS or course site Weekly digest including LearnDash completions Course completion rates are a key health metric; weekly is actionable
    Multi-site network Schedule trigger per site, outputs to shared Sheet One Sheet aggregates all sites; single email covers the whole network

    Extending Reports with Integrations

    Krom Automation Pro includes 24 integrations that can feed data into or out of your report workflows. The most useful for reporting purposes are email marketing platforms and messaging tools.

    If your team uses Slack, the messaging integrations let you send your daily digest to a Slack channel instead of or alongside email. A #daily-orders channel that posts automatically each morning is often more actionable than an email that gets buried. The same workflow structure applies: Schedule trigger fires, action sends the message to the Slack channel.

    For membership sites using MemberPress, the MemberPress integration exposes signup, subscription, expiry, and payment events. Logging these throughout the month and summarising them in a monthly report gives you a churn and growth picture without building custom database queries.

    For course sites, the LearnDash integration covers enrollment, completion, quiz results, and group triggers. A weekly digest that shows new enrollments and completions for the previous 7 days is a two-workflow build: one to log events as they happen, one to summarise them on schedule.

    What Automated Reports Cannot Do (And What to Do Instead)

    Automated WordPress reports built in Krom Automation work with WordPress events. They log and report what happens on the site. They do not pull data from Google Analytics, Google Search Console, or external advertising platforms unless you route that data into WordPress first via a webhook or REST API call.

    • Google Analytics traffic data requires either the GA API via HTTP Request action or a separate GA reporting plugin. Krom Automation can include a GA report link in your digest email, but it does not fetch pageview counts natively.
    • Server uptime and backup status come from your hosting provider or a dedicated monitoring tool. These are not WordPress events and Krom Automation does not monitor them.
    • Plugin and theme update status is visible in the WordPress dashboard but is not exposed as an event trigger in Krom Automation. A dedicated maintenance reporting plugin is the right tool for that specific need.
    • WP-Cron reliability on low-traffic sites means scheduled workflows can fire late. For a daily digest, 20 to 30 minutes of drift is usually acceptable. For anything time-critical, configure a real server cron.

    The honest position: Krom Automation covers WordPress site activity reporting comprehensively. It does not replace a dedicated analytics platform or a server monitoring tool. Used alongside those tools, it fills the gap they leave around actual site events.

    Krom Automation covers what happened on your WordPress site. For what happened to your server or in Google Analytics, use tools built for those specifically.

    How to Build Your First Scheduled Report in Krom Automation

    If you have not built a workflow before, start with the step-by-step workflow builder guide. The visual canvas is built on ReactFlow with auto layout, so adding nodes and connecting them takes the same drag-and-drop actions whether you are building a simple two-step workflow or a branching report chain.

    The fastest path to a working scheduled report:

    1. Install Krom Automation free from the WordPress.org plugin directory and activate Pro alongside it.
    2. Open the workflow builder and drag a Schedule trigger onto the canvas.
    3. Set the frequency, daily, weekly, or monthly, and the exact time you want the email to arrive.
    4. Connect a Send Email action and write your digest template. Use merge tags for any dynamic field.
    5. Use the workflow simulator to run a dry test with zero side effects before enabling the workflow.
    6. Enable the workflow and check your inbox at the scheduled time.

    For the logging step (capturing events throughout the day or week), read the full triggers reference to see exactly which events fire and what data each one carries. That data is what your merge tags pull into the summary email.

    Also from wpRigel

    Pollify is wpRigel’s Gutenberg native poll, survey, and quiz plugin. Polls are built directly inside the block editor as real blocks, so there are no shortcodes to paste and no separate interface to learn. If you want to collect structured audience feedback alongside your site activity reports, Pollify pairs naturally with Krom Automation workflows that log responses.

    Commandify is a command palette for the WordPress admin. Press Cmd or Ctrl plus K to jump anywhere in the dashboard, search every post, page, user, and order, and run admin actions without clicking through menus.

    It is the only command palette with real WooCommerce order, product, and customer commands built in. If you are going to log in less often because your reports come to you automatically, Commandify makes the time you do spend in the admin dramatically faster.

    The Verdict: Who Should Build Automated Reports and Who Should Not

    Automated WordPress reports via Krom Automation make sense if you are logging into WordPress daily or weekly just to check numbers, if you manage more than one site, or if you send any kind of periodic update to a client or stakeholder. The setup time is a one-time cost. The time saving recurs every day or week indefinitely.

    Skip this approach if your primary need is Google Analytics traffic reporting or server uptime monitoring. Those require dedicated tools, and Krom Automation is not the right replacement for them.

    Also skip it if your hosting provider does not support real server cron and your site gets fewer than 20 visitors per day. WP-Cron drift will make your daily digest unreliable.

    For everyone else: the $119 Pro Basic plan covers one site, every Pro feature, and every future update. Download the free plugin from the WordPress.org plugin directory to explore the builder before upgrading, then add the Schedule trigger when you are ready to put reports on autopilot.

    See full pricing details and compare all three plans before you decide.

    Frequently Asked Questions

    Does the free version of Krom Automation support scheduled reports?

    No. The free version includes 16 event-based triggers but not the Schedule trigger. Scheduled reports require Krom Automation Pro, which starts at $119 per year for one site.

    Can I send the automated report to multiple email addresses?

    Yes. The Send Email action accepts multiple recipients. You can send the same digest to your own address and a client or team inbox in the same workflow step.

    Will my scheduled workflow fire on time if the site has low traffic?

    Not reliably on a very low traffic site using the default WP-Cron setup. Configure a real server cron job to call wp-cron.php at regular intervals. Your hosting control panel or a WP-CLI command handles this in a few minutes.

    Can I include Google Analytics data in my automated report email?

    Not natively. Krom Automation reports on WordPress site events. You can include a link to your GA dashboard or a GA summary report in the email, but fetching live GA metrics requires a call to the Google Analytics API via the HTTP Request action or a separate analytics plugin.

    How do I test a scheduled report workflow without waiting for the scheduled time?

    Use the workflow simulator. It runs a dry test of the entire workflow with no side effects, so you can verify the email content and merge tag output before the first real trigger fires.

    Can I export the report data as a CSV instead of receiving an email?

    The most practical approach is to log events to Google Sheets throughout the period using the Sheets integration, which gives you a live CSV-ready dataset at any time. The monthly Schedule trigger can then send an email with a link to the sheet rather than trying to attach a file directly.

    The wpRigel Team

    September 12, 2026
    User Guide
Previous Page
1 2 3 4 … 10
Next Page
wprigel logo

wpRigel builds innovative WordPress plugins for developers, marketers and agencies. Be with us, get more users for your business and increase conversion using our powerful tools.

  • x.com icon
  • linkedin icon

Products

  • Pollify
  • Commandify
  • Krom Automation (Now Live 🎉)

Company

  • Affiliate Program
  • About Us
  • Contact Us
  • Privacy Policy

Resources

  • Docs
  • Blog
  • Support Area
  • Refund policy

Comparisons

  • Commandify vs CommandUI
  • Pollify vs CrowdSignal
  • Krom Automation vs others

Changelogs

  • Commandify Changelog
  • Pollify Changelog
  • Krom Automation Pro Changelog

wpRigel 2026. All Rights Reserved

  • Terms of use
  • Privacy Policy
  • Cookie Policy