Open Semantic Marketing Model

The open standard for marketing's decision layer

OSMM makes the decision work of marketing — strategy, audience, briefs, journeys, measurement — machine-readable, so your people, your systems, and your AI agents all operate from one shared structure.

Open source · Apache 2.0 + CC BY 4.0 Vendor-neutral AI-ready Machine + human readable

What is OSMM

Open Semantic Marketing Model — a shared structure for the decisions that drive marketing.

OSMM is an open standard for the canonical objects and relationships that define the decision work of modern marketing — from strategy and audience through campaign, creative, delivery, and measurement.

It is not a platform or vendor framework. It is a shared structure that lets your stack, your people, and your AI agents operate against a common definition of the work — and improve that definition over time, as the system learns.

The problem we're solving

Marketing spent billions on MarTech. The work still runs on slides and spreadsheets.

The platforms multiplied — automation, CDPs, orchestration, MMM. But the decision work that drives them stayed unstructured, living in Word docs, decks, and PDFs. That was an inefficiency tax in a pre-AI world. In an AI-native one, it becomes the ceiling that decides whether AI scales or stalls — agents can't reason reliably over free-text briefs and PDF strategy decks.

× Marketing today

  • Briefs and strategy live in Word, decks, and PDFs
  • No shared schema across teams or business units
  • Every team reinvents its own templates and taxonomy
  • AI grounded on free text — unreliable, bespoke per workflow
  • N-to-N integration debt between proprietary tools

With OSMM

  • Typed, machine-readable objects with required fields
  • One shared schema and end-to-end lineage
  • Reusable context across teams and campaigns
  • Reliable agent grounding on structured context
  • Native interoperability — define once, reference everywhere

Make the decisions machine-readable

Every marketing decision is trapped in a document. OSMM sets it free.

A persona in a 40-slide deck. An audience in a saved segment nobody else can see. A brief in a Word doc in someone's inbox. Each is a real decision your team already made — locked in a format no other system, and no AI agent, can reliably read. OSMM turns each one into a small, typed object: a person reads it at a glance, an agent acts on it directly.

The creative brief

Today A Word doc emailed to the agency
↓ as an OSMM object
{
  "object_type": "creative_brief",
  "brief_id": "BR-201",
  "campaign_id": "CMP-1001",
  "audience_id": "AUD-101",
  "core_proposition": "Win back lapsed members with a seasonal offer",
  "status": "approved"
}

The customer persona

Today A 40-slide research deck from two years ago
↓ as an OSMM object
{
  "object_type": "persona",
  "persona_id": "PER-101",
  "name": "Deal-savvy value seeker",
  "motivations": ["stretch the budget", "not overpay"],
  "objections": ["fears quality drops with price"],
  "language": ["worth it", "no-brainer"]
}

The target audience

Today A saved segment plus a spreadsheet
↓ as an OSMM object
{
  "object_type": "audience",
  "audience_id": "AUD-101",
  "persona_id": "PER-101",
  "definition": "Lapsed members, 90+ days inactive",
  "includes": ["prior_purchases >= 1", "email_opt_in = true"],
  "excludes": ["active_subscription = true"],
  "est_size": 48200
}

The customer journey

Today Sticky notes on a Miro board
↓ as an OSMM object
{
  "object_type": "journey",
  "journey_id": "JNY-winback",
  "audience_id": "AUD-101",
  "goal": "Reactivate lapsed members",
  "entry_trigger": "inactivity_days = 90",
  "stages": ["re-engage", "offer", "convert"],
  "channels": ["email", "paid_social", "sms"]
}

The brand design standard

Today A 60-page brand guidelines PDF
↓ as an OSMM object
{
  "object_type": "brand_context",
  "brand_id": "BRD-101",
  "facet": "design",
  "palette": { "navy": "#0f1b35", "mint": "#34c6a4" },
  "typography": ["IBM Plex Sans", "IBM Plex Mono"],
  "logo_clearspace": "1x cap height",
  "min_logo_px": 24
}

The brand tone and voice

Today A slide nobody applies the same way twice
↓ as an OSMM object
{
  "object_type": "brand_context",
  "brand_id": "BRD-101",
  "facet": "voice",
  "voice": ["plain-spoken", "confident", "no hype"],
  "avoid": ["jargon", "exclamation marks"],
  "say": "Here's what changed.",
  "do_not": "Revolutionary breakthrough!"
}

Notice the IDs. The brief points to a campaign and an audience; the audience points to a persona; the journey points to the same audience; the design standard and the tone of voice are one brand object read two ways. Follow the pointers and an AI agent walks the whole chain — without you re-pasting a single document. That is what "a machine-readable decision layer" means in practice.

Off the shelf, ready to install

You don't write these by hand. A Claude plugin builds them for you.

OSMM ships as an installable Claude plugin — 18 builder skills that turn the decks, docs, and spreadsheets you already have into structured objects. Install it once, hand Claude a persona deck, and say "turn this into an OSMM object." The right builder runs, asks a couple of clarifying questions, and writes the file. You review it — you never touch JSON.

  1. Add the marketplace. Point Claude at the OSMM repo — open-semantic-marketing-model/osmm. In Claude Cowork it's a few clicks in the Plugins tab; in Claude Code it's one command.
  2. Install & authorize the plugin. All 18 builders, the JSON Schemas they validate against, and the worked examples come with it.
  3. Start building. Feed a builder real source material — Context objects first, work products next — and review what it writes back.

18 builders, five categories

ContextBusiness, Brand, Product, Persona, Audience
Work productStrategy, Campaign, Journey, Creative, Content, Offer, Measurement, Experience
MeasurementPerformance Measurement
LearningCustomer Insight, Optimization Recommendation
ArtifactsCreative Brief composer

Who it's for

Five ways into OSMM

Get involved

An open standard, built in the open

OSMM is developed on GitHub under a maintainer-led model. The schemas, definitions, and documentation are free and open. Wave 1 — the activation core — is the current focus.

How it works

Five kinds of objects, one connected chain

OSMM organizes marketing's decision work into five object categories, connected by an explicit chain from strategy to ROI — and a learning loop that feeds results back into context, so every campaign starts smarter than the last.

01

Context

Durable business intelligence — business, brand, audience, persona, keywords. High-read, slow-changing.

02

Work products

The decisions that today live in documents — strategy, brief, journey, messaging framework.

03

Configuration

The operational logic that makes the work executable at runtime.

04

Measurement

Performance data structured for analysis. Append-only.

05

Learning

Insights that update the context layer — the part that makes the system compound.

The canonical lineage
Strategy Campaign Audience Offer Creative Channel Measurement ROI

↻ Learning loop: measurement updates context (persona, audience, brand, keywords) — so the graph is a cycle, not a pipeline.

{
  "object_type": "creative_brief",
  "brief_id": "BR-201",
  "campaign_id": "CMP-1001",
  "audience_id": "AUD-101",
  "core_proposition": "Reactivate lapsed members with a seasonal offer",
  "deliverables": ["CRT-401", "CRT-402"],
  "approval_chain": ["USR-cmo", "USR-legal"],
  "status": "approved"
}

Get in touch

Building toward AI-native marketing?

Whether you want to adopt OSMM, become a design partner, or talk through what a shared marketing object model means for your operating model — we'd like to hear from you.