openai-ads-conversions-setup

Instrument repositories with OpenAI Ads Measurement Pixel and Conversions API tracking.

5.3k|765|Updated Mar 4, 2026
One-click install
npx skills add https://github.com/openai/plugins --skill openai-ads-conversions-setup
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: openai-ads-conversions-setup
Source: https://github.com/openai/plugins/tree/main/plugins/openai-ads-conversions/skills/openai-ads-conversions-setup
Command: npx skills add https://github.com/openai/plugins --skill openai-ads-conversions-setup

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

Adding advertising conversion tracking to a codebase is error-prone: secrets leak into client bundles, Pixel and server events double-count, and events fire on clicks instead of confirmed conversions. This Skill guides Codex through safely instrumenting or extending repositories with the OpenAI Ads Measurement Pixel and Conversions API (CAPI), producing small reviewable diffs and a structured setup report.

Core Features & Use Cases

  • Pixel and CAPI instrumentation: Adds browser Pixel initialization, server-side CAPI event dispatch, and shared event_id deduplication for Pixel+CAPI setups.
  • Safety-first verification: Ships static helper scripts that detect exposed CAPI secrets, unsupported event names, legacy payload fields, and unsafe validate_only defaults.
  • Incremental reruns: Inventories existing OpenAI Ads and other ad platform integrations (Meta, Google, TikTok, Segment) to extend existing helpers instead of duplicating them.
  • Use Case: An advertiser asks Codex to add conversion tracking to a Next.js checkout flow; the Skill instruments order_created via CAPI with oppref attribution, adds the Pixel with consent gating, verifies with the helper scripts, and produces a deployment-ready setup report.

Quick Start

Use the openai-ads-conversions-setup skill to add OpenAI Ads Pixel and Conversions API tracking to this repository and produce a setup report.

Frequently Asked Questions about openai-ads-conversions-setup

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add OpenAI Ads conversion tracking to my website?

Run this Skill against your repository to instrument the OpenAI Ads Measurement Pixel in browser code and the Conversions API on your server. It detects your framework, finds confirmed conversion boundaries like checkout success, and produces a small patch plus a setup report.

How do I deduplicate Pixel and Conversions API events?

Use the same Pixel ID, event name, and event_id in both the browser Pixel call and the CAPI request. The Skill prefers stable existing IDs such as order IDs or payment intent IDs, and its verify script can check dedupe markers with --require dedupe.

Can I use the OpenAI Ads Pixel in a mobile or native app?

No, the Measurement Pixel is browser JavaScript only. For mobile, native, or backend-only surfaces, the Skill skips Pixel and instruments CAPI-only from a trusted server conversion boundary when one exists.

How do I keep my Conversions API key out of client code?

Store the CAPI key in a server-only env var or secret manager, never in public-prefixed variables like NEXT_PUBLIC_*. The bundled verify_capi_secret_not_exposed.py script scans your repo for leaked secret references in browser-visible files.

What events does OpenAI Ads conversion tracking support?

Supported standard events include page_viewed, contents_viewed, items_added, checkout_started, order_created, lead_created, registration_completed, appointment_scheduled, subscription_created, and trial_started. Custom events are allowed only with a valid custom_event_name when no standard event fits.

Why should conversion reporting not block checkout?

CAPI failures must never fail or slow core flows like checkout or signup. The Skill wraps event construction and dispatch in a non-blocking catch boundary, preferring existing background-task or queue patterns, so reporting errors are logged without affecting users.