How campaigns, strategies & approvals link up
The model behind the workflow — and where every piece sits in relation to the others.
This is a concept page — not a how-to. It explains how the three most-used objects in Stratogizer (campaigns, strategies, approvals) relate to each other. Once you've got this mental model, the rest of the platform stops feeling like a collection of separate features and starts feeling like one coherent system.
Workspaces hold companies. Companies hold campaigns. Campaigns hold strategies. Approvals wrap up the strategies in a campaign at a point in time. That's the whole hierarchy.
The picture
The hierarchy at a glance
Workspace
└─ Company (brand)
├─ Brand context (logo, system prompt, files)
└─ Campaign (one objective)
├─ Strategy run (one AI generation)
├─ Strategy run
├─ Strategy run
├─ Campaign documents (brief, references)
└─ Approval (one review cycle, links every strategy run in the campaign)
└─ Per-strategy-run feedbackWhat each object is
The roles of the three main objects
Campaign
A campaign is one objective and all the work that supports it. It's the unit you manage day-to-day in the Campaigns view. It has a status (Draft → Pending review → Approved → Archived), an assigned team, and a journey indicator.
Campaigns belong to companies. They can't span companies (a campaign for Brand A is fully separate from a campaign for Brand B). Inside a workspace you can have as many campaigns per company as you want.
Strategy run
A strategy run is one AI generation. When you click Generate at the end of any wizard (Paid Media Strategy, Channel Plan, Implementation Plan, Organic Social Strategy), Stratogizer creates a strategy_run record, kicks off the n8n workflow, polls for completion, and stores the resulting markdown.
Strategy runs belong to a campaign. A typical Paid Media campaign ends up with three runs (one per module). A regenerate-and-tweak cycle adds more. The runs are linked by lineage — every regenerate knows which run it descended from.
Approval
An approval is one review cycle on a campaign at a point in time. When you Send for approval, an approval record is created, bundled with the strategy runs that were in the campaign at that moment. The reviewer reviews that bundle.
If the reviewer approves, the cycle ends. If they request revisions, the cycle ends with that outcome and a new cycle starts when you re-submit. Every cycle is preserved — you can audit a campaign's full review history.
How they link
The connections that matter
- Strategy → Campaign — every strategy run is attached to exactly one campaign. You can't have orphan strategy runs.
- Campaign → Company — every campaign is attached to exactly one company. The company's brand context (logo, system prompt, brand files) is inherited by every strategy run inside.
- Approval → Campaign — every approval is attached to one campaign. The approval bundle contains all strategy runs in the campaign at submission time.
- Per-strategy feedback → Approval + strategy run — when a reviewer leaves notes on specific strategy runs, those notes are linked to both the approval cycle and the specific run they're commenting on.
- Run lineage — when you "edit and regenerate" a strategy, the new run is linked to the original via parent_run_id. You can see the whole lineage chain in Strategy History.
Why this matters
Practical consequences
- You don't approve a single strategy — you approve a campaign. Every strategy run inside is part of the approval bundle.
- Brand context is set per company, not per campaign. Change the system prompt and every future campaign for that brand inherits the change.
- Approval history isn't just "approved or not" — it's the full back-and-forth, useful for auditing what changed between v1 and v3 of a strategy.
- Deleting a campaign cascades through everything attached to it (strategy runs, documents, approvals). Stratogizer warns you with exact counts before doing it.
Related: Submit a strategy for approval, Approving, requesting revisions & feedback, Strategy history.