# Daruj Pesničku — Deň matiek 2026 (Meta Ads brief)

**Kampaň**: `DP-MD-2026`
**Cieľ konverzie**: Purchase (Pixel `726470267162105`)
**Ad Account**: `act_440928078189790` (EUR)
**Pripravené**: 2026-04-26 · **Launch target**: 2026-05-01 · **MD = nedeľa 10.5.**

---

## 1) Kontext + dôležité termíny

| Dátum | Čo |
|---|---|
| 27.4. | Brief schválený, creative work spustený |
| 28.4. | Pixel Test Events overené v Events Manager (Purchase + InitiateCheckout doručené s eventID) |
| 30.4. | Creative assets hotové (3 varianty × 3 formáty) |
| **1.5. (štv)** | **Kampaň LIVE** (9 dní pred MD) |
| 7.5. 20:00 | **Hard deadline pre balík Srdcovka (24h delivery)** |
| 8.5. 22:00 | Hard deadline pre Spomienka (48h delivery) |
| 10.5. 09:00 | Posledná hodina pre Odkaz (6h express) — vypnúť ads |
| 10.5. 23:00 | Kampaň END, retargeting OFF |

Cenové balíky (z `objednavka.html`):
- **Spomienka** 19,90 € — 48h, 1 kolo úprav
- **Srdcovka** 39,90 € — 24h, 2 kolá úprav
- **Odkaz navždy** 79,90 € — 6h express, neobmedzené úpravy

## 2) Stratégia — z Vianoce 2025 learnings

Z minulej `Vianoce final` kampane (80 €/deň, OUTCOME_SALES, SK only):
- **Advantage+ Sales** štruktúra fungovala (1 ad set, Meta AI optimalizuje audience)
- **Žiadne manual interest targeting** — Meta na Pixel signáloch nájde lepšie publikum než my ručne
- Pixel má teraz **Purchase signál z Vianoce → môžeme spraviť 1 % lookalike**

**Pre MD používame rovnakú architektúru:**
- **1 kampaň** (Advantage+ Shopping Campaigns / OUTCOME_SALES)
- **1 ad set** s 3 ads na rotation
- Conversion event: **Purchase** (nie ViewContent ani AddToCart — chceme platiacich)
- Bid strategy: **Lowest cost** (žiadny cap; Meta optimalizuje)

## 3) Audience (1 ad set)

| Field | Value |
|---|---|
| Geo | SK (location_types: home, recent) |
| Age | **25-55** (užšie než Vianoce 18-65 — kupcovia darčekov pre mamu, nie všetci) |
| Gender | **All** (testy ukazujú že synovia kupujú rovnako často ako dcéry) |
| Detailed targeting | **VYNECHAŤ** — len Advantage Audience expansion ON |
| Custom audience EXCLUDE | Pixel "Purchase last 90d" (existujúcich zákazníkov nepriťahujem znova) |
| Lookalike INCLUDE | 1 % SK lookalike z Pixel "Purchase last 365d" |

**Pozn.**: Lookalike vytvoríme **dnes** aby Meta mal čas na spracovanie (24-48h refresh).

## 4) Creative — 3 ad varianty na A/B

### Variant A — emocionálny príbeh ("hero")
- **Primary text** (úvodný odsek nad obrázkom):
  > Mama si nemusí pamätať každý darček. Ale pesničku, kde znie *jej meno* a *váš príbeh*, si pustí znova a znova.
  >
  > Pošlite nám pár viet o nej. Do 24 hodín máte personalizovanú pesničku len pre ňu — MP3 aj lyric video. Od 19,90 €.
- **Headline (nad CTA)**: „Personalizovaná pesnička pre mamu"
- **Description**: „Doručenie do 24 hodín · Garancia vrátenia peňazí"
- **CTA button**: `Objednať`

### Variant B — racionálny / "darček-checklist"
- **Primary text**:
  > Kvety zvädnú. Čokoládu zje. Pesničku si pustí o desať rokov.
  >
  > Personalizovaná pesnička pre mamu — jej meno, váš príbeh, MP3 + lyric video. Do 24 hodín. Od 19,90 €.
- **Headline**: „Originálna pesnička pre mamu — do 24 hodín"
- **Description**: „3 balíky od 19,90 € · 100 % garancia"
- **CTA**: `Objednať`

### Variant C — urgency / FOMO (zapnúť až 4-6.5.)
- **Primary text**:
  > Posledné 3 dni do Dňa matiek. Stihnete originálnu pesničku, ak objednáte teraz.
  >
  > Stačí pár viet o vašej mame. My spravíme zvyšok — MP3 + lyric video doručíme do 24 hodín. Od 19,90 €.
- **Headline**: „Stihnite Deň matiek — pesnička za 24h"
- **Description**: „Express 6h od 79,90 € · Garancia"
- **CTA**: `Objednať`

### URL + UTM (pre všetky varianty)
```
https://darujpesnicku.sk/objednavka.html?utm_source=meta&utm_medium=paid_social&utm_campaign=md2026&utm_content={variant}
```
Variant: `hero` / `checklist` / `urgency`

## 5) Visuálne assets — máme 11 PNG obrázkov

Stiahnuté zo zdielaného Nextcloud share (2026-04-25) do
`/home/serverosobny/preview-stack/sites/DarujPesničku/campaigns/assets/2026-mothers-day/`.

### Mapovanie na ad varianty

**Variant A — emocionálny / hero**
- **Primary**: `daruj-pesnicku.png` (1408×768) — staršia žena so slúchadlami držiaca telefón, hot take *"Darček, ktorý ju rozplače šťastím."* — text je **už zapečený v PNG**, ide rovno do creative
- Alternative: `daruj-pesnicku-den-matiek-original-darcek-pre-nu.png` — vnučka objímajúca starú mamu, *"Poďakujte jej za všetko. Darujte spomienku, ktorá nikdy nezovšednie."*
- No-text fallback (na flexibilitu): `daruj-pesnicku-den-matiek-original-darcek.png` (1424×752) — žena v obývačke, žiadny overlay

**Variant B — racionálny ("kvety zvädnú")**
- **Primary**: `daruj-pesnicku-den-matiek-original-darcek-nezvadne.png` (1424×752) — split kompozícia *"Kvety zvädnú. Pieseň ostane."* — **zhoda 1:1 s briefovým copy**, použiť priamo

**Variant C — urgency / "ste ďaleko"**
- **Primary**: `daruj-pesnicku-den-matiek-darcek.png` (1408×768) — kombinácia mladého muža v cudzom meste + mamy doma, *"Povedzte jej 'Ďakujem' hudbou. Aj keď ste ďaleko, pieseň vás spojí."* — **silný hook pre slovákov v zahraničí** (ČR, AT, DE — relevant audience pre import)

### Doplnkové obrázky (carousel / secondary slots / retest)
- `daruj-pesnicku-den-matiek-original-darcek-jednoducho.png` — *"Stačí nám váš príbeh. My z neho zložíme nezabudnuteľnú pieseň."* CTA: "Ako to funguje?" — **process explainer**, dobrý pre cold audience ktorá rozmýšľa "ale ako sa to robí?"
- `daruj-pesnicku-den-matiek-original-darcek-pre-mamu.png` — flat-lay s "Pre moju mamu" kartou + vinyl + slúchadlá + ružové kvety, **aestetic shot bez text overlay** — dobrý pre Stories/Reels covers
- `daruj-pesnicku-den-matiek-original.png` (**1024×1024 — JEDINÝ 1:1 square**) — drevený box s QR + bouquet, tichý lifestyle shot
- `daruj-pesnicku-den-matiek-original-darcek-den-.png` — ruka držiaca kartičku s QR
- `daruj-pesnicku-den-matiek.png` — mikrofón + noty (profi/produkt angle, slabé emocionálne)
- `daruj-pesnicku-den-matiek-original-darcek-rozplace.png` — mama s dieťaťom; **POZOR**: cieli mladých rodičov, nie primárny MD segment (deti dospelých matiek). Použiť len v lookalike test.

### ✅ 9:16 visuály — vygenerované (Imagen 4 Fast)

3 chýbajúce 9:16 verzie pre Reels/Stories vyrobené 2026-04-26 cez Google Imagen 4
(`imagen-4.0-fast-generate-001`, paid Gemini project KEY_1):

| Súbor (1080×1920) | Variant | Štýl |
|---|---|---|
| `DP-MD-2026_hero_9x16_v1.png` | A — emocionálny hero | Staršia žena s bielymi slúchadlami, warm cardigan, smartphone, slza šťastia, cozy obývačka s rodinnými foto |
| `DP-MD-2026_checklist_9x16_v1.png` | B — "kvety zvädnú" | Split: zvädnuté ruže (top) vs. žiariace neonové srdce z gold-pink častíc + music notes (bottom) |
| `DP-MD-2026_distance_9x16_v1.png` | C — urgency / "ste ďaleko" | Split: mladý muž s telefónom v európskom meste pri súmraku (top) vs. stará mama na lavičke pod jabloňou počúvajúca cez slúchadlá (bottom), prepojené hudobnými notami |

**Pokrytie po generovaní:**

| Pomer | Stav | Pokrytie |
|---|---|---|
| 1.91:1 (~1408×768) | ✅ 9 obrázkov | Feed, Right Column, Audience Network |
| 1:1 (1080×1080) | ⚠️ 1 obrázok | Feed základ — možno doplniť (Imagen vie aj 1:1) |
| **9:16 (1080×1920)** | ✅ **3 obrázky (1 per variant)** | Reels + Stories pokryté |

**Žiadny text v 9:16 obrázkoch** — Meta Primary Text + Headline + CTA fields dodá copy
dynamicky pri uploade, vyhne sa AI mispelling SK textu a zlepší Meta Text Overlay compliance.

**Generation skript**: `/tmp/gen_md_visuals.py` (a `_retry.py`) — re-runable kedykoľvek pre v2 alebo iné formáty.

### Required pre Meta-compliance
- Meta odporúča **<20% text** v obrázku (heuristic, už nie je strict block, ale CTR drop ak prekročí). 4 obrázky majú väčšie text overlay — overiť pri uploade Meta Text Overlay Tool.
- Logo Daruj Pesničku — chýba na všetkých assetoch. Buď pridať pre brand recognition, alebo nechať tak (text "Daruj Pesničku" je v Page name a Primary text).

### Pomenovanie pri uploade do Meta
```
DP-MD-2026_{variant}_{ratio}_{revision}
napr.: DP-MD-2026_hero_1x91_v1
       DP-MD-2026_checklist_1x1_v1
       DP-MD-2026_distance_1x91_v1
```

## 6) Budget plán — LOW-BUDGET TEST MÓD

**Lifetime cap**: **60 €** (zhoduje sa s `META_LIFETIME_BUDGET_CAP_EUR` v `.env`)
**Daily cap**: **8 €/deň max** (zhoduje sa s `META_DAILY_BUDGET_CAP_EUR`)

**Ramp plán (low-budget test):**
| Deň | Daily | Lifetime cumul. | Akcia |
|---|---|---|---|
| 1.5. (štv) | **3 €** | 3 € | Launch test deň — overiť Pixel Purchase, Meta policy review, no broken funnel |
| 2-3.5. | **5 €** | 13 € | Prvé reálne impressions, sledovať CTR |
| 4-5.5. | **5 €** | 23 € | Decision deň: ak je aspoň 1 Purchase → pokračovať; ak 0 → pauza + debug |
| 6.5. | **8 €** ak ROAS ≥ 2 | 31 € | Zapnúť variant C (urgency) |
| 7-8.5. | **8 €** | 47 € | Hlavné dni pred 24h deadline (7.5. 20:00) |
| 9-10.5. | **8 €** | 63 € → cap | Final push, Meta auto-stop pri 60 € |
| 10.5. 23:00 | OFF | ≤ 60 € | End |

### ⚠️ Realita low-budget Meta Ads

Meta optimalizačný algoritmus potrebuje **~50 conversion events/týždeň** aby vyšiel z learning phase. Pri 5 €/deň a CPA 15 € je realita ~2-3 conversion/týždeň → **algoritmus nikdy nedosiahne plnú optimalizáciu**.

**Čo to znamená:**
- ✅ Pixel signál sa naučí, kampaň môže fungovať na warm audience (lookalike z Vianoce)
- ✅ Odhalí sa, či kreatíva + landing + checkout flow funguje end-to-end
- ⚠️ ROAS bude variabilnejší ako pri 30+ €/deň
- ⚠️ Ak po 5 dňoch nie je 0 Purchase, pravdepodobne *nie je* problém v rozpočte ale v audience/kreatíve/funneli — debug treba urobiť osobne

**Ak chceš full optimization později**: po MD 2026 bilancovanie → keď bude pixel signál bohatší (Vianoce + MD spolu), spustiť 30+ €/deň pre Vianoce 2026 dá oveľa lepšie výsledky.

## 7) KPI + decision rules

| Metrika | Target | Akcia ak nesplní |
|---|---|---|
| CTR (link click) | ≥ 1.5 % | < 1.0 % po 2 dňoch → pauznúť variant |
| CPC | ≤ 0.40 € | > 0.60 € → preveriť audience |
| CPM | ≤ 6 € | > 10 € → preveriť creative quality score |
| **CPA (Purchase)** | **≤ 15 €** | > 20 € po 4 dňoch → scale down |
| **ROAS** | **≥ 2.0** | < 1.0 po 4 dňoch → kompletný stop, debug |
| Pixel Match Quality | ≥ 7/10 | < 5 → pridať CAPI server-side |

**Win condition pre scale**: ROAS > 2.5 + min 5 Purchase v 48h → +50 % budget.

## 8) Pre-launch checklist

- [ ] Timezone fix LA→BA (ak Meta dovolí — pravdepodobne lock kvôli Vianoce histórii)
- [ ] Billing card pridaná na ad account
- [ ] Pixel premenovaný v Events Manager: „Daruj Pesnicku - Vianoce" → „Daruj Pesničku — Web"
- [ ] **Test Events** v Events Manager: vykonať 1 testovací Purchase a overiť, že prišiel s `eventID` (CAPI dedup)
- [ ] Lookalike audience „LAL 1% SK — Purchase 365d" vytvorené (24-48h pred launch)
- [ ] Custom audience „Existing buyers — Purchase 90d" vytvorené (na exclusion)
- [ ] Creative assets nahrané (3 varianty × 3 ratios = 9 súborov)
- [ ] (Voliteľné) Instagram account linknutý k FB stránke + token rozšírený o `instagram_basic`
- [ ] (Voliteľné) Conversions API server-side endpoint (Pixel je client-side; CAPI zlepší match quality, ale nie blocker)

## 9) Otvorené rozhodnutia (čaká na user)

1. **Visuály** — kto ich pripraví? Možnosti:
   - (a) Existujúce fotky z Vianoce kampane (zostali v Meta, môžeme reusenúť)
   - (b) AI generované cez Replicate/Midjourney (max 1 deň práce)
   - (c) Krátke video z telefónu (mama + dieťa, 6-8s, autentické > leštené)
2. **Variant C (urgency)** — chce sa to vôbec? FOMO funguje, ale niektoré značky to neradia. Default = ÁNO, zapnúť 4.5.
3. **Lookalike z Vianoce buyerov** — počet je možno malý (Vianoce mali ~20-50 transakcií podľa amount_spent 4853 €). Ak < 100 events → lookalike nemusí byť reliable, padneme na čistý Advantage+ bez LAL.

---

## Status / Next step

**Status (2026-04-26 11:00)**:
- ✅ Brief napísaný + 3 ad varianty so SK copy
- ✅ Meta MCP deployed (`127.0.0.1:8084`), tokens v `.env`
- ✅ Pixel + GDPR consent už wired v `cookie-consent.js`
- ✅ Existujúce 11 PNG visuals zmapované na varianty (Variant B má dokonca priamy PNG match z user uploadu)
- ✅ Chýbajúce 3 × 9:16 (Reels/Stories) vygenerované cez Imagen 4 Fast
- ✅ Budget znížený na low-budget test mód: 8 €/deň cap, 60 € lifetime

**Next step**:
1. User overí 3 vygenerované 9:16 obrázky → schváli alebo požiada o re-gen
2. User: timezone fix (ak Meta dovolí) + billing card pridaná
3. Spustím cez MCP: lookalike audience z Vianoce Purchase + custom exclude existujúcich
4. Setup kampane DP-MD-2026 v draft móde (NIE active) → user finálne klikne "Publish"
