Social Strategies Overview
A Social Strategy is your master plan for social media activity. It defines your target audience, competitive landscape, personas, recommended platforms, editorial calendar, and KPIs. Once built, strategies feed directly into campaigns so AI-generated content stays on-brand and intentional.
⚠️ Plan Required: Strategy creation is rate-limited per plan. External Influencer role members cannot create strategies.
The Strategies List
Navigate to Strategies in the sidebar to see all your strategies.

Toolbar
| Control | Description |
|---|---|
| Search | Filters by strategy name or description (live filter) |
| Filter by Status | Dropdown — All, Draft, Active, Paused, Completed |
| Sort | Recently Updated · Recently Created · Name A–Z · Name Z–A · Progress |
| Grid / List toggle | Grid (card layout, 1–4 columns responsive) or List (compact rows) |
| + Create Strategy | Opens the name dialog; disabled for External Influencer role or when plan limit is reached |

Strategy Card (Grid View)
Each card shows:
- Name — with a spinning loader if the strategy is currently being AI-processed
- Description — derived from
core_feature_benefitorunique_selling_propositionform fields - Status badge — colour-coded (see statuses below)
- Tags — up to 3 visible, with "+N more" overflow badge
- Campaigns count — number of campaigns linked to this strategy
- Progress / Tasks (shown only while AI processing is active) — overall % and completed/total steps
- Updated timestamp — relative (e.g. "2 hours ago")
- ⋮ Actions menu — Edit, Duplicate, Delete (Delete disabled while processing; Stop Processing option appears when active)


Strategy List Item (List View)
Same data in a single horizontal row: name + status badge, description (1-line truncated), campaigns count, updated timestamp, ⋮ menu.

Strategy Statuses
| Status | Badge Colour | Icon |
|---|---|---|
| Draft | Grey | Edit pencil |
| Active | Green | Trending up |
| Completed | Blue | Check circle |
| Paused | Yellow | Alert circle |
Creating a Strategy
- Click + Create Strategy.
- Enter a Strategy Name in the dialog and press Enter or Create.
- The system creates the strategy via the API and navigates to
/strategies/[id]/create(the guided creation wizard — same UI as the edit page with 7 tabs).

The Strategy Editor (7 Tabs)
Opening a strategy (click a card, or Edit from the ⋮ menu) navigates to /strategies/[id]/edit. The editor has a sticky 7-tab bar across the top:

A Save Changes button in the header is enabled only when unsaved changes exist and no AI job is running. Navigating away with unsaved changes triggers a confirmation dialog.
If an ongoing AI job (audience fetch or persona generation) is detected on load, a Resume / Stop dialog appears.
Tab 1 — Business Goals
Core business information used as input for all subsequent AI-generations.
| Field | Description |
|---|---|
name | Product / service name |
business_name | Company name |
corefeaturebenefit | Main value proposition |
uniquesellingproposition | What differentiates the brand |
price_value | Pricing tier / value statement |
city | Primary city |
country | Country |
landmark_vicinity | Specific area / landmark |
geo_radius | Target radius — 25km, 50km, global, or specific_locations |
specific_locations | Array of locations (shown when georadius = specificlocations) |
strategy_type | e.g. Brand Awareness, Lead Generation |
business_model | b2c or b2b |
startdate / enddate | Strategy period |
An AI Generate action on this tab triggers the full AI pipeline and auto-navigates to the Target Audience tab when complete.

Tab 2 — Target Audience
AI-generated audience insights split into 8 sub-sections, each displayed as a TagGroup (chip-style editable tags):
- Demographics — age, gender, income, education
- Geographic — regions, city types
- Psychographic — values, lifestyle, interests
- Behavioral — purchase habits, brand loyalty, usage patterns
- Technographics — devices, tech adoption level
- Needs & Pain Points — customer problems this brand solves
- Media Consumption — platforms used, content formats preferred, peak hours
- Competitive Environment — how the audience views competitors
Fetch Audience Insights button triggers a multi-stage async job (progress bar with stage labels displayed in real time). Requires at minimum a business name and a valid geo configuration. If a job is interrupted, the editor offers to resume on next open.

Tab 3 — Competitive Analysis
Displays competitor profiles fetched via AI research.
- Requires
locationandgeo_radiusfrom Business Goals. - Analyse Competitors button starts an SSE-streamed job; a live progress bar shows current competitor name, research index, and keywords being processed.
- Each competitor card shows: name, description, social platforms, strengths, weaknesses, and estimated social following.
- Competitors list is editable after generation.

Tab 4 — Platform Selection
Shows recommended social platforms based on the Target Audience data.
- Platforms displayed as selectable cards (toggle on/off).
- Get AI Recommendations button fetches suggestions from the audience insights; requires all 8 Target Audience sections to have content.
- Selected platforms are saved to
recommendedPlatforms[]on the strategy.

Tab 5 — Personas
AI-generated buyer personas derived from the Target Audience data.
- Generate Personas button starts an async job with progress tracking: shows current persona type, completed count / total, estimated time remaining, and a progress bar.
- Each persona card renders details such as name, age, occupation, goals, frustrations, social media behaviour, and trust triggers.
- Persona generation can be resumed if interrupted (stored in
localStorageaspersona_job_[strategyId]). - Requires all 8 Target Audience sections to have content.

Tab 6 — Editorial Calendar
A calendar of content opportunities (holidays, events, seasonal moments) relevant to the strategy's location and date range.
- Fetch Calendar button triggers a location-aware AI job; progress shown with total events / processed count.
- Events are normalised to:
id,title,date,description,type,category,content_opportunity. - An Add Event action allows manual entries.
- Requires a valid geo configuration and
start_date/end_date.

Tab 7 — KPIs
Define measurable targets across three KPI groups:
Reach & Awareness
- Impressions, Reach, Follower Growth, Share of Voice, Brand Mentions
Engagement
- Likes, Comments, Shares, Saves, Engagement Rate, Video Views, Watch Time, Click-Through Rate
(Additional KPI groups may exist — set the overall timePeriod for which these targets apply)
Each KPI field is a free-text number input. Tab progress reaches 100% when KPIs are filled in.

Deleting a Strategy
From the ⋮ menu → Delete opens a confirmation dialog.
- If an active AI job exists for the strategy, a warning is displayed listing current job stages.
- Delete is disabled while AI processing is running (the option shows "Cannot delete while processing").
- Confirming calls
DELETE /strategies/[id]and refreshes the list.

Tab Progress Tracking
Each tab tracks a tabProgress percentage (0–100). The overall strategy progress shown on the card is:
progress = floor( completedTabs / totalTabs × 100 )
where a tab is "completed" when its tabProgress = 100. The total tab count defaults to 7.
Strategy → Campaign Link
When creating a campaign you select a strategy. The campaign AI then uses the strategy's personas, platforms, tone, and audience data to generate posts automatically.