Meta’s Advantage+ Shopping Campaigns require 50 Purchase events per ad set per week to exit the learning phase (OptiFOX, 2026). A quote-request WooCommerce store generates exactly zero Purchase events per week. That’s not a tracking gap. It’s a structural exclusion from the optimisation engine entirely — and it applies to Google Smart Bidding, Meta Advantage+, and every other automated bid strategy built on the assumption that every ecommerce site fires Purchase at checkout. If your B2B or wholesale WooCommerce store runs on quote requests and your ads dashboard shows zero conversions, your store isn’t broken; the ad platforms were built assuming you don’t exist.
And Every Ad Platform Was Built Assuming You Don’t Exist
Global B2B ecommerce is projected to reach $36 trillion by 2026 (eMarketer, 2026). A meaningful slice of that volume runs on WooCommerce with a “Request a Quote” button where an “Add to Cart” button would otherwise be. The B2B Request a Quote plugin ecosystem — YITH, B2BKing, WebToffee, Addify, WPExperts, and the official WooCommerce B2B plugin — serves thousands to tens of thousands of active installations collectively (WordPress.org plugin directories, 2026), all implementing the same pattern: the customer submits a quote inquiry, the store owner responds with a price, and the deal closes over email or phone days or weeks later.
Every single one of those stores runs on a conversion model that ad platforms treat as an absence of conversion. 80% of marketers value attribution for better ROI and budget decisions (HubSpot via FunnelKit, 2025) — but for a quote-request store, there is no attribution signal flowing back from a won quote to the original ad click. The data the team is trying to act on does not exist.
What “Quote Request” Actually Means in WooCommerce
The plugins vary, but the shape is the same. On the store side, the standard WooCommerce checkout is either replaced or supplemented with an “Add to Quote” button. Customers build a cart of products, submit a quote inquiry form, and wait for the merchant. On the merchant side, the quote arrives as a custom post type or a specialised WooCommerce order in a non-standard status — “Quote Requested”, “Under Review”, “Quote Sent”, “Accepted”, “Rejected”.
This architecture exists for good reasons. Wholesale pricing is negotiated. Industrial products require spec verification. Custom-quote workflows include shipping logistics, MOQs, and payment terms that don’t fit a credit-card checkout. Quote-request isn’t a workaround — it’s the native commercial reality of how B2B transacts.
What the plugins don’t do is tell the merchant what to do about paid advertising. The WooCommerce Marketplace documentation for B2B Request a Quote goes into extensive detail on workflow UX and zero detail on ad-platform conversion tracking. The 15-plugin comparison guides from WebToffee and similar sites stay entirely inside the feature-matrix frame. The merchant is left to figure out why Google Ads Manager shows zero conversions despite an active quote pipeline generating real revenue.
You may be interested in: The Calendly Iframe Is a One-Way Mirror: Why Your WordPress Service Site Is Losing Every Google Ads Click
Why Your Ad Platforms Report Zero Conversions
The standard WooCommerce + Google Ads integration wires purchase events to ad-platform conversion endpoints. No purchase, no conversion. Meta’s default pixel and CAPI integration does the same — it watches for the Purchase event fired by the WooCommerce checkout completion and forwards it to Meta’s auction infrastructure. When the store replaces checkout with a quote form, the event pipeline the plugins were wired for goes silent.
The downstream consequences compound. In March 2025, Meta removed detailed targeting options and made Advantage+ Sales Campaigns the default engine for ecommerce advertisers, with 65% of US advertisers running Advantage+ as their primary growth tool by 2026 (Insider Intelligence, 2026). Advantage+ is a learning system. It optimises by watching which impressions produce Purchase events and bidding harder on those profiles. For a quote-request store, there are no Purchase events to watch. The algorithm has nothing to train on, and it bids accordingly.
Google Smart Bidding hits the same wall. Target CPA and Maximise Conversions both require volume of conversion events to calibrate; Target ROAS requires values attached to those events. Feed the algorithm zero events and it drifts to a default bidding posture that is nobody’s actual strategy.
You may be interested in: Your WooCommerce Affiliate Program Is Paying Commission on Sales Your Google Ads Already Claimed
The Two-Event Architecture
Quote-request stores need two conversion events, not one. The first signals volume at the moment of inquiry. The second signals value at the moment of win. Both are server-side. Both carry the original click ID through the funnel.
Event 1 — quote_submitted as a Lead Event
At the moment the customer submits the quote form, capture a server-side event that represents the inquiry as a trackable lead. On Meta, this is the Lead standard event via CAPI, optionally with an estimated_value for value-based bidding. On Google, it’s a submit_lead_form conversion action fired via the Google Ads Offline Conversions API with the estimated quote value.
Volume-based ad platforms optimise on this event. Meta Advantage+ for Leads uses Lead events the same way Advantage+ Shopping uses Purchase events. Google’s Maximise Conversions strategy treats submit_lead_form as first-class. The 50-event-per-week learning threshold is now reachable because a store generating 20 quote submissions per week across campaigns can hit it.
Critically, the quote submission carries the visitor’s gclid (Google click ID) and fbclid (Facebook click ID) from the landing-page session into the WooCommerce quote record. Without these identifiers stored on the quote, the second event becomes impossible.
Event 2 — quote_accepted as an Offline Conversion Upload
Days or weeks later, the merchant marks the quote as Accepted or Won in WooCommerce admin. At that status change, fire a second server-side event to the ad platforms’ offline conversion APIs, carrying the stored gclid/fbclid and the final quote value. On Google, this is the Google Ads Offline Conversions API. On Meta, it’s an Offline Event via CAPI.
This second event is what closes the loop. The ad platform can now match the won quote to the original ad click that produced the inquiry, regardless of how many days passed between them. Smart Bidding and Advantage+ stop optimising on volume alone and start optimising on actual revenue. The learning system finally has the signal it was designed to learn from.
The two-event model maps cleanly to WooCommerce’s native order-status system. Quote plugins typically surface status transitions via WordPress action hooks, which means the server-side pipeline can listen directly — no CRM required, no Zapier chain, no manual export.
You may be interested in: Why GA4 Data-Driven Attribution Silently Fails Small WooCommerce Stores
WooCommerce Hook Names for the Major Quote Plugins
The specific hook depends on which quote plugin the store runs. The major ones:
- B2B Request a Quote (official WooCommerce) — quote submission typically triggers a standard WooCommerce order in a custom “Quote Requested” status; listen for
woocommerce_order_status_changedwith the matching status transition. - YITH Request a Quote — fires
yith_ywraq_quote_request_mail_senton submission; status-change hooks depend on whether quotes are stored as orders or custom post types. - B2BKing — uses its own custom post type with a dedicated action system; the plugin exposes filters and actions for quote lifecycle events.
- WPExperts Quote for WooCommerce — extends the order system; listen on order status transitions.
- Addify Request a Quote — similar order-system extension with documented hooks for submission and approval.
In every case, the pipeline needs two hook listeners: one for the submission (Event 1) and one for the status change to Accepted/Won (Event 2). The WooCommerce order-status system is stable across all these plugins because they all extend it — which is why the server-side pipeline can be plugin-agnostic.
The Server-Side Implementation
Transmute Engine™ is a first-party Node.js server running on the store’s own subdomain (e.g., data.yourstore.com) that listens for WooCommerce quote-status hooks via the inPIPE WordPress plugin, then fires the two-event pipeline: Lead event at submission, Offline Conversion at acceptance — both to Meta CAPI, Google Ads Offline Conversions, and any other configured destination simultaneously. Because the gclid and fbclid are captured at landing and stored on the quote record, the second event can fire weeks later with full click-ID attribution intact. The quote’s native WooCommerce order status is the CRM; the pipeline reads it directly.
Key Takeaways
- Quote-request stores are structurally excluded from standard ad-platform optimisation. No Purchase event means no signal for Meta Advantage+, Google Smart Bidding, or any other automated bid strategy — all of which assume a checkout-style conversion model.
- The fix is a two-event pipeline, not a single event. Fire a Lead event at quote submission (volume signal), then an Offline Conversion at quote acceptance (value signal). Both server-side. Both carrying the original click ID.
- Click ID capture is non-negotiable. The gclid and fbclid from the original landing-page session must be stored on the WooCommerce quote record or the offline conversion upload becomes impossible.
- Major quote plugins (YITH, B2BKing, WPExperts, Addify, WooCommerce B2B) handle the quote workflow but not the ad-tracking consequence. The server-side pipeline sits outside the plugin layer and listens on WooCommerce’s native order-status hooks, making it plugin-agnostic.
- With the two-event architecture in place, Meta Advantage+ and Google Smart Bidding work normally for quote-request stores. The 50-events-per-week learning threshold becomes reachable because the Lead event counts as volume, and the offline conversion gives the algorithm the revenue signal it trains on.
Frequently Asked Questions
Google Ads by default counts WooCommerce Purchase events as conversions. Quote-request stores don’t fire Purchase events — the customer submits a quote form instead of checking out. The result is a zero-conversion account even when the quote pipeline is actively generating revenue. The fix is firing a server-side lead event at quote submission, then uploading an offline conversion to Google Ads when the quote is accepted.
Not directly. Advantage+ Shopping Campaigns require 50 Purchase events per ad set per week to exit the learning phase, which a quote-request store structurally cannot hit. The workaround is to fire the quote submission as a high-value Lead event via Meta CAPI with an estimated order value, and then a second offline conversion event (via CAPI) when the quote is marked as Won in WooCommerce.
Capture the gclid from the original landing page and attach it to the WooCommerce quote record. When the quote status changes to Accepted/Completed, fire a server-side call to the Google Ads Offline Conversions API with the original gclid and the final quote value. This closes the loop between the ad click and the won quote, even when weeks pass between them.
Two events, not one. First: a Lead event (Meta) or submit_lead_form (Google) at the moment the quote form is submitted, with an estimated order value for volume-based bidding. Second: an offline conversion upload with the actual quote value when the quote is marked as Won. The two-event model gives the ad platform both the volume signal and the value signal it needs.
No. B2B Request a Quote, YITH Request a Quote, B2BKing, WPExperts Quote for WooCommerce, Addify, and the official WooCommerce B2B plugin all handle the quote workflow thoroughly and handle ad tracking not at all. Every one of them leaves the ad-platform signal flow as an exercise for the merchant, which is why so many B2B WooCommerce sites run paid ads on zero-conversion accounts.
Audit the link between your WooCommerce quote submissions and your ad-platform conversion events this week. If your Google Ads or Meta Ads Manager shows zero conversions despite an active quote pipeline, the gap is structural and fixable. Start at seresa.io/product.
