AutoROICalc for WooCommerce
AutoROICalc for WooCommerce creates consent-aware customer-journey records and authoritative server-side order-performance records. Use it to compare paid orders, turnover, profit, refunds, products, languages, and marketing sources in AutoROICalc reports.
The plugin deliberately separates browser journey signals from financial records. Product views, add-to-cart actions, and checkout starts can be captured in the browser; purchases are reported only after WooCommerce confirms payment or reaches an eligible order status.
Install and Connect
- Install and activate WooCommerce.
- In WordPress, open Plugins → Add New Plugin.
- Search for AutoROICalc for WooCommerce, install it, and activate it.
- Follow the guided setup under WooCommerce → AutoROICalc.
- Connect an existing AutoROICalc account, create an account, or enter a service token manually.
- Enable reporting and complete the setup checklist.
- Open WooCommerce → Settings → AutoROICalc for detailed record configuration.
The guided connection creates a restricted service token for this installation and does not store the entered AutoROICalc password. For managed installations, see WordPress plugin configuration.
Choose What to Track
Customer-journey records
Enable any combination of:
- Product views
- Successful or submitted add-to-cart actions
- Checkout starts
Each event has its own record type, description, tags, and debounce window. Journey-event tags extend the global WooCommerce tags. Product breakdowns can identify the viewed product, the validated product added to the cart, or all products in the basket or checkout.
Product names, IDs, variation IDs, SKUs, and quantities are resolved by WooCommerce on the server. Visitor-supplied descriptive product data is not trusted.
Logged-in administrator and store-manager journey activity is excluded by default so store maintenance does not distort reporting.
Order-performance records
For an eligible paid order, the plugin can create:
| Record | Default meaning |
|---|---|
| Paid-order count | One completed transaction |
| Turnover | Configurable order or product revenue |
| Profit | Revenue basis minus configured product costs |
| Refund count | One WooCommerce refund operation |
| Refund adjustment | Negative revenue and optional profit values |
| Full-refund transaction adjustment | -1 when the order becomes fully refunded |
Every category can be configured to fit an existing AutoROICalc model. Use stable types, descriptions, and tags so reports remain comparable over time.
When Orders Are Reported
Order reporting runs asynchronously after WooCommerce confirms payment or the order reaches Processing or Completed status. Creating a checkout order alone does not report revenue.
The plugin stores returned AutoROICalc record IDs and delivery markers in private WooCommerce order metadata. Normal payment callbacks, webhooks, status transitions, or retries therefore do not resend records already accepted by AutoROICalc.
Failed asynchronous delivery is retried up to three times. After repeated failure, the order receives a concise note and technical details are written to the WooCommerce log with source autoroicalc-for-woocommerce.
Turnover and Profit Configuration
Choose a revenue basis that matches the reporting model:
- Final order total
- Product net sales
- Operating net revenue based on product sales plus fees and shipping
For profit reporting, select the catalog metadata field containing numeric per-unit cost of goods. The settings screen discovers product and variation metadata and presents available keys in a searchable list.
Variable products use the variation cost when present and fall back to the parent product. When a cost is missing, choose whether to:
- Skip the profit record
- Treat missing cost as zero
- Send a visibly marked partial calculation
Tax is excluded from the plugin's profit calculation. Confirm the selected revenue basis and cost metadata against the store's accounting convention before relying on profit reports.
Refund Reporting
Refunds preserve the original sale for auditability and create new adjustment records:
- Negative turnover based on the refunded value
- Negative profit adjustment when profit tracking is enabled
- One refund-count record
- A
-1order-count adjustment only when the order becomes fully refunded
Returned product quantities reverse their configured cost of goods in the profit adjustment. Refunds retain the original order's captured marketing sources and stored checkout language.
Sources and Tags
Select one of these source strategies:
- Captured — use consent-aware UTM and referrer attribution from the customer session.
- Fixed — use only administrator-defined source values.
- Combined — combine captured and fixed source values.
Configure a fallback for orders without captured attribution. Captured source labels follow a familiar source / medium convention, including (direct) / (none), google / organic, google / cpc, and referral domains.
Global tags apply across WooCommerce records. Journey-event and metric-specific tags can add context such as product-view, checkout, transaction, turnover, profit, or refund.
Product and Language Breakdowns
Enable structured product breakdowns to make WooCommerce data available to AutoROICalc Breakdown widgets. Depending on the record, product items can include:
- Product and variation IDs
- Product name and SKU
- Quantity
- Revenue
- Cost
- Profit
- Journey-event context
Order breakdowns include up to 50 items. Journey breakdowns use the viewed or added product and the current basket or checkout contents where applicable.
Enable Page language breakdowns under WooCommerce → Settings → AutoROICalc → Structured order data to add a website_language breakdown. WPML supplies the displayed language when available; otherwise the WordPress locale is used.
At checkout, the detected language is stored in private order metadata. Asynchronous order records and later refunds therefore retain the language in which the purchase was made.
Raw non-customer order context and structured product breakdowns can be enabled independently. This means you can create product or language breakdowns without storing the optional raw order context.
Privacy, Consent, and Cookies
Start with Tracking and Consent for a plain-language explanation of anonymous counting, runtime gates, and connecting your consent manager.
The Consent category choices for journey events are Analytics, Marketing and No runtime consent gate. No runtime consent gate skips that event's consent check; it does not make tracking anonymous. Browser storage, attribution and product/cart event details may still be used. WooCommerce journey tracking does not offer anonymous event counting. The separate Event Tracking plugin provides Tracking mode → Anonymous event counting for supported page elements.
Journey consent and captured checkout attribution are separate. In required consent mode, checkout attribution requires Analytics even when journey events use No runtime consent gate. Version 1.5.0 enforced the cookie-writing condition in the browser, but trusted existing source cookies on the server. Version 1.5.1 added the server-side check and removes stale attribution from orders updated without analytics consent. Consent mode → Consent is managed by the site explicitly bypasses the internal checks; administrator-defined fixed sources do not require captured visitor attribution.
The plugin does not transmit customer names, email addresses, postal addresses, payment details, customer notes, or checkout form contents.
Depending on configuration, records can include event type, page path, language, product information, quantities, order and refund identifiers, status, currency, item count, payment-method identifier, financial values, calculated costs and profit, tags, and marketing sources.
When attribution consent is available, the arc_sources first-party session cookie makes captured sources available during checkout. Journey debounce state is kept in browser session storage. An explicit denied consent event removes the source cookie.
The default consent mode waits for an analytics signal before storing captured attribution:
window.AutoRoiCalc.setConsent({
analytics: true,
marketing: false
});
A consent manager can also dispatch an autoroicalc:consent event. Both interfaces immediately refresh WooCommerce source capture and eligible journey tracking. Withdrawing analytics consent removes the checkout source cookie; withdrawing all relevant categories also clears stored sources and the capture timeout so a new grant can capture immediately.
In required mode, checkout requires an Analytics grant in the arc_consent cookie before attaching captured sources, and clears stale attribution on the order being updated when consent is missing or denied. Journey requests require their configured Analytics or Marketing category on the server; signed configuration alone does not establish consent. Explicit No runtime consent gate and Consent is managed by the site settings retain their existing overrides. Paid-order and refund reporting remain separate server-side flows. Select Consent is managed by the site only when the site has already established an appropriate consent or other lawful basis.
Recommended Validation
Before relying on production reports:
- Place a test order using a test payment method.
- Confirm that the order reaches Processing or Completed status.
- Wait for the asynchronous action to run.
- Confirm the configured count and value records in AutoROICalc.
- Inspect sources, tags, currency, product breakdowns, and language.
- Create a partial refund and verify its negative adjustments.
- Complete the remaining refund and verify the
-1transaction adjustment. - Confirm that retries or repeated status changes do not duplicate accepted records.
Use WooCommerce → Status → Logs and select the autoroicalc-for-woocommerce source when delivery fails.
Use Both WordPress Plugins
Install Event Tracking for WordPress alongside the WooCommerce plugin when you also need:
- Gutenberg or Elementor interaction tracking
- General forms or WordPress registration tracking
- Custom CSS selector events
- Authenticated AutoROICalc reports in the WordPress Dashboard
Keep WooCommerce product views, cart activity, checkout starts, orders, and refunds in the WooCommerce plugin to avoid duplicate ecommerce events.
Uninstall Behavior
Settings and local connection data are retained by default. Enable cleanup before uninstalling if those settings should be removed.
Uninstalling does not delete previously delivered AutoROICalc records or revoke an installation token. When Event Tracking is also installed, the shared local service token is retained. Revoke unused tokens from Integrations in AutoROICalc.