Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.upstackdata.com/llms.txt

Use this file to discover all available pages before exploring further.

The Short Version

Before any event reaches Meta, Upstack’s Health & Wellness container runs it through a sanitization layer that strips out product names, URLs, SKUs, and any other content that could contain health or wellness keywords. Meta still gets everything it needs for attribution and optimization — event type, value, currency, and user identifiers — but none of the content that causes flags.

Why Sanitization Is Necessary

Meta’s Health & Wellness flagging system doesn’t just look at your domain once and make a decision. It continuously evaluates the data your pixel sends. Every event that arrives at Meta carries metadata — and that metadata can contain the keywords, product names, and URLs that trigger or reinforce the flag. Here’s what a typical unsanitized Purchase event looks like when sent to Meta:
Example: Unsanitized event payloadevent_name: Purchaseevent_source_url: https://yourstore.com/checkout/thank-youcontent_ids: [“sup-ashwagandha-60ct”]content_name: “Organic Ashwagandha Supplement - 60 Capsules”content_category: “Supplements > Adaptogens”value: 59.99 | currency: USD
Look at what’s embedded in that payload: the product is called “Organic Ashwagandha Supplement,” the category is “Supplements > Adaptogens,” and the content ID contains “sup-ashwagandha.” Every one of these fields is a signal to Meta’s automated systems that this store sells health and wellness products.

What Gets Stripped

Upstack’s sanitization layer removes or neutralizes the following fields before any event is sent to Meta:

Product Names (content_name)

Any text that identifies what the customer bought or viewed. This is the most common source of flaggable keywords — product titles like “Collagen Peptides Powder” or “Vitamin D3 5000 IU” are exactly what Meta’s classifiers look for. Before: "content_name": "Organic Ashwagandha Supplement - 60 Capsules" After: Field removed entirely.

Product IDs and SKUs (content_ids)

Even encoded or abbreviated product identifiers can contain flaggable terms. A SKU like CBD-TINCTURE-30ML or a product ID like probiotic-daily-60 carries the same signal as the full product name. Before: "content_ids": ["sup-ashwagandha-60ct"] After: Field removed entirely.

Product Categories (content_category)

Category paths often contain the broadest and most obvious health/wellness terms: “Supplements,” “Vitamins,” “Health,” “Wellness,” “CBD,” etc. Before: "content_category": "Supplements > Adaptogens" After: Field removed entirely.

Page URLs (event_source_url)

The URL where the event occurred is replaced with a URL from the clean alias domain. This prevents Meta from seeing paths like /products/organic-turmeric-capsules or /collections/immune-support. Before: "event_source_url": "https://yourstore.com/products/organic-ashwagandha" After: "event_source_url": "https://youraliasdomain.com/"

What Still Gets Sent

After sanitization, the event that reaches Meta looks like this:
Example: Sanitized event payloadevent_name: UPSTACK_HW_6117d13bevent_source_url: https://youraliasdomain.com/user_data: hashed email, hashed phone, fbclid, fbp, IP, user agentvalue: 59.99 | currency: USD
Here’s what each remaining field does:
  • event_name — Mapped to a custom H&W event. Tells Meta what action occurred without using flagged standard event names.
  • event_source_url — The alias domain URL. Meta’s bot can visit this domain and see a compliant page.
  • user_data — Hashed email, hashed phone, Facebook click ID, browser ID, IP address, and user agent. These are the identity signals Meta uses to match the event to a user. They contain no product or health information.
  • value and currency — The monetary value of the conversion. Essential for ROAS optimization and value-based bidding.

Why This Level of Scrubbing Is Necessary

You might wonder: “Can’t we just rename the products or change the URLs?” In practice, partial measures don’t hold up: Meta’s classifiers are broad. They don’t just look for the word “supplement.” They flag terms like “capsules,” “extract,” “daily,” “formula,” “blend,” and dozens of other words common across health product catalogs. Trying to rename everything to be compliant is a losing game. The flag is persistent. Once a domain is flagged, Meta’s systems are primed to look for health-related content from that source. Even mildly suggestive terminology can reinforce the classification. Clean scrubbing removes the ambiguity entirely. You can’t control every surface. Product data shows up in URLs, page titles, meta tags, structured data, Open Graph tags, and more. The browser pixel can read all of these. Server-side sanitization is the only way to ensure nothing slips through. Future-proofing. If you add a new product line or a new employee adds products with flaggable names, the sanitization layer catches it automatically. You don’t need to audit every SKU before launching.

How Sanitization Interacts with Other Components

Data sanitization doesn’t work alone — it’s one piece of the four-part H&W solution:
  • Server-side-only tracking ensures the browser pixel never sends unsanitized data directly to Meta.
  • Data sanitization cleans the event payload before it leaves Upstack’s servers.
  • Domain aliasing replaces the flagged domain in the event_source_url field.
  • Custom event mappings replace standard event names with non-flaggable custom names.
All four layers work together. If you removed sanitization but kept the other three, product data in the event payload could still trigger a re-flag. If you kept sanitization but sent from the flagged domain, Meta’s domain-level restrictions would still apply.

What You Need to Do

Nothing — sanitization is handled automatically by Upstack’s Health & Wellness container. There is no configuration required on your end.
Note on product-level reporting: Since product IDs and names are stripped, you won’t see per-product conversion breakdowns in Meta Ads Manager. You can still get this data from Shopify analytics, the Upstack dashboard, or third-party attribution tools like Triple Whale (which receives unsanitized data since it’s not sending to Meta).

Related Articles