Who this applies to
Content before consent is shown only in buffer mode (the default). For more on consent modes, see Consent Modes and Cookie Banner Setup.Full consent means the visitor allowed both analytics and marketing. A visitor who allowed only one of the two sees the same thing as a visitor who hasn’t consented.
What’s shown before consent and what isn’t
There’s one rule: a campaign shows before consent if everything it needs is on the current page. If it needs the visitor’s history, their profile, or data stored in the browser, it waits for consent.
Conditions that wait for consent are checked the moment the visitor clicks Accept — no page reload needed.
Here’s how a delay works before and after consent:
- “Product X page” + 30-second delay — no consent needed. The pop-up shows 30 seconds after the page opens.
- “Previously viewed product X” + 30-second delay — the 30 seconds count from when the page opened, and the browsing history is checked when the visitor clicks Accept. If 30 seconds have already passed by then, the pop-up shows right after Accept.
Cart and progress bars
The same rule applies to the cart: a campaign shows before consent if everything it needs is on the current page.- “$X left until free shipping” text in a pop-up or block On Shopify, it works before consent. The total comes from the store’s cart right on the page, and nothing is stored or sent. For example, with $15 in the cart and a $99 threshold, the bar reads “$84 more to unlock Free Shipping.” On other sites, it waits for Accept. The total comes from the data your site passes to the tracker, and the tracker doesn’t hand it over before consent. If the visitor declines, the pop-up or block doesn’t show.
- Cart targeting conditions (“cart has products,” “cart total ≥ X,” “cart contains product Y”) wait for consent on every site, including Shopify. They use Maestra Platform’s own cart data, which exists only for visitors who’ve consented.
-
Templates with a list of cart products
Before consent, they’re shown with an empty cart on every site, including Shopify. To avoid an empty block, add the “cart has products” condition to the campaign. It waits for consent, so the pop-up won’t show before Accept — and after Accept, it shows with the products.
The exception is sites that put the cart on the page themselves in
window.PopMechanicCartData. If the template reads the cart from there, the list is filled before consent too.
Lead generation forms and recommendations
Lead generation forms — embedded, pop-up, and quizzes — are shown and can be submitted before consent.- A customer profile is created from the email or phone number. It holds only what the visitor entered and the subscription consent they gave in the form.
- Location by IP and the DeviceUUID aren’t passed, even if they’re set up in the form settings.
- The new profile isn’t linked to this visitor’s browsing history.
- Two kinds of forms wait for consent: forms that update an existing customer (edit mode), and every lead generation form if your site has bot protection enabled.
If a widget has a fallback preset from the top rows of the table (bestsellers, for example), the widget shows with that preset. If every preset in the widget depends on history, the widget doesn’t show before consent.
A/B tests
Site personalization campaigns with an A/B test or a control group wait for consent. To show a visitor the same variant every time, Maestra Platform has to remember them — and that takes a DeviceUUID, which isn’t assigned until the visitor clicks Accept.- This covers A/B tests inside a campaign, control groups, and campaigns included in a global A/B test.
- Test results stay accurate, but they describe only visitors who consented. In regions with a consent banner, not every visitor accepts, so fewer visitors take part in the test and it may need more time.
- Exception: campaigns that run on your site but aren’t named in any variant of the global A/B test. Before consent, Maestra Platform doesn’t know which variant the visitor will land in. So campaigns named in variants wait for Accept, while unnamed campaigns show to everyone before consent — even to visitors who won’t see them after Accept. This happens in two cases:
- The test has a variant with all campaigns selected. For example, variant A has all campaigns, and variant B has only X and Y. Campaign Z isn’t named in either variant. After Accept, visitors in variant B don’t see it, but before Accept, everyone does.
- The test has a control group. After Accept, visitors in the control group don’t see any campaigns, but before Accept, they see every unnamed one.
Reports and attribution
Contacts submitted through a form by visitors who haven’t consented (the Leads metric) are counted in the report, but their impressions and clicks aren’t. Visitors who’ve consented are counted in full. Here’s how that shows up in Reports → Website personalization (the Revenue and Lead generation tabs):
A few more things to know:
- Orders reach the customer profile through your store integration. It runs on Maestra Platform’s servers and doesn’t depend on cookies on your site.
- Email and SMS revenue is attributed as usual, by message.
- Flows based on site behavior (product view, abandoned cart on the site) don’t fire for visitors who never consent.
- The A/B test report is built only from visitors who consented.
After consent and after decline
If the visitor consents, tracking turns on right on the same page, without a reload:- Pop-ups and widgets already on screen stay put and don’t show again.
- Campaigns on hold (with history-based conditions or A/B tests) start being checked.
- The page the visitor landed on (UTM parameters, referrer) is sent to Maestra Platform, so the visit source isn’t lost.
- Whatever was shown before consent isn’t added to the report retroactively.
How to prepare campaigns and check them on your site
To make sure an important campaign shows to every visitor:- Target only by page, time, device, and triggers (delay, scroll, exit intent).
- Don’t use an A/B test or a control group.
- Don’t use a JavaScript condition. In particular, remove any homemade consent checks (through
customerPrivacy, for example): Maestra Platform checks consent itself. - Make sure the lead generation form creates a customer rather than editing an existing one.
- Give the recommendation widget a fallback preset that doesn’t need history (bestsellers or similar products).
1
Open your site without answering the banner
Open your site in a private window from a region where the cookie banner shows (or through a VPN). Don’t answer the banner.
2
Check that the content shows
Make sure the pop-up, block, or widget you need appears.
3
Check cookies and session storage
In developer tools, open Application → Cookies: there shouldn’t be a
maestraDeviceUUID cookie. Session Storage should hold only maestraLanding and popmechanic.last-shown-….4
Click Accept
maestraDeviceUUID and maestraConsent appear, and campaigns that were waiting for consent start being checked.