Learn-skills.dev webflow-browser-api

Control Webflow Analyze and Optimize from JavaScript via the Browser API. Use when managing tracking consent, integrating CMPs (OneTrust, TrustArc), tracking experiment variations, setting custom visitor attributes, or personalizing user experiences.

install
source · Clone the upstream repo
git clone https://github.com/NeverSight/learn-skills.dev
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/NeverSight/learn-skills.dev "$T" && mkdir -p ~/.claude/skills && cp -r "$T/data/skills-md/224-industries/webflow-skills/webflow-browser-api" ~/.claude/skills/neversight-learn-skills-dev-webflow-browser-api && rm -rf "$T"
manifest: data/skills-md/224-industries/webflow-skills/webflow-browser-api/SKILL.md
source content

Webflow Browser API

The Browser API is a JavaScript interface exposed via the global

wf
object on all Webflow sites with Analyze and Optimize enabled. It requires no manual installation. Use it to manage consent, track experiments, and personalize user experiences.

Key Concepts

  • Global
    wf
    object
    — Automatically available on all sites with Analyze or Optimize enabled
  • wf.ready()
    — All Browser API calls must be wrapped in this readiness callback. See
    references/wf-ready.md
  • Consent management — Three methods to manage tracking consent:
    getUserTrackingChoice()
    ,
    allowUserTracking()
    ,
    denyUserTracking()
  • Variations — Track experiment results via
    onVariationRecorded()
    and forward to analytics tools
  • Custom attributes — Set visitor attributes via
    setAttributes()
    for audience targeting and result filtering (Enterprise only)

API Methods

MethodDescription
wf.ready(callback)
Execute code after the Browser API loads
wf.getUserTrackingChoice()
Returns
"allow"
,
"deny"
, or
"none"
wf.allowUserTracking(options?)
Opt user into tracking
wf.denyUserTracking(options?)
Opt user out of tracking
wf.onVariationRecorded(callback)
Register a callback for variation events
wf.setAttributes(scope, attributes)
Set custom visitor attributes

Important Notes

  • The Browser API is only available on sites with Webflow Analyze or Optimize enabled
  • Custom JavaScript attributes (
    setAttributes
    ) are only available on Enterprise sites
  • Always wrap all API calls inside
    wf.ready()
    to prevent calls before initialization
  • Place scripts in
    <head>
    custom code for earliest possible execution

Reference Documentation

Each reference file includes YAML frontmatter with

name
,
description
, and
tags
for searchability. Use the search script in
scripts/search_references.py
to find relevant references.

Getting Started

Consent Management

Optimize

Searching References

# List all references with metadata
python scripts/search_references.py --list

# Search by tag (exact match)
python scripts/search_references.py --tag <tag>

# Search by keyword (across name, description, tags, and content)
python scripts/search_references.py --search <query>

Scripts

  • scripts/search_references.py
    : Search reference files by tag, keyword, or list all with metadata