# Campagnes

### Wat kun je ermee?

**Voorbeelden:**

* Stuur een nieuwsbrief naar alle bezoekers van het afgelopen jaar
* Mail bezoekers uit een specifieke regio over een nieuwe voorstelling in hun buurt
* Stuur een bedankmail naar alle donateurs
* Heractiveer bezoekers die al lang geen kaarten meer hebben gekocht

***

### Hoe werkt het?

Het campagne systeem bestaat uit **3 stappen**:

1. **Selectie maken:** Kies je doelgroep (bijvoorbeeld "alle bezoekers uit Amsterdam")
2. **Template kiezen:** Selecteer een e-mail template met je boodschap
3. **Versturen:** Direct versturen (ad-hoc) of inplannen voor later (scheduled)

**Belangrijk:**

* Campagnes worden verstuurd in **batches van 250 emails** tegelijk (voor stabiliteit)
* Je kunt maximaal **10.000 ontvangers** per campagne hebben
* Alle campagnes respecteren automatisch opt-outs en privacy instellingen

***

### Campaign Types

#### 1. Ad-hoc Campagnes (Direct Versturen)

**Wat is het:** Een campagne die **direct** wordt verstuurd zodra je deze activeert.

**Wanneer gebruiken:**

* Dringende mededelingen
* Last-minute aanbiedingen
* Reacties op actualiteit
* Eenmalige nieuwsbrieven

**Voordeel:** Binnen enkele minuten in de inbox

***

#### 2. Geplande Campagnes (Scheduled)

**Wat is het:** Een campagne die op een **specifieke datum/tijd** wordt verstuurd.

**Wanneer gebruiken:**

* Nieuwsbrieven met vaste planning (elke maand op de 1e)
* Marketing campagnes met strategische timing
* Voorverkoop aankondigingen
* Seizoensgebonden acties

**Voordeel:** Automatisch versturen op het juiste moment

***

### Campagne Aanmaken

#### Stap 1: Ga naar Campagnes

Navigeer in het dashboard naar **E-mail > Campagnes**.

#### Stap 2: Nieuwe Campagne

Klik op **+ Nieuwe Campagne**.

#### Stap 3: Configuratie

| Veld              | Uitleg                                           |
| ----------------- | ------------------------------------------------ |
| **Campagne Naam** | Interne naam (bijv. "Nieuwsbrief December 2025") |
| **Template**      | Selecteer een e-mail template                    |
| **Selectie**      | Kies je doelgroep (zie Selecties maken)          |
| **Versturen**     | Kies: Nu (ad-hoc) of Later (geplande tijd)       |

***

### Selecties Maken

**Selecties** bepalen **wie** de campagne ontvangt. Dit zijn SQL-based regels die je doelgroep definiëren.

#### Selectie Voorbeelden

**Alle bezoekers van het afgelopen jaar:**

```sql
Bezoekers die in de afgelopen 12 maanden tickets hebben gekocht
```

**Bezoekers uit een specifieke regio:**

```sql
Bezoekers met postcode beginnend met "10" (Amsterdam)
```

**Bezoekers zonder abonnement:**

```sql
Bezoekers die wel tickets kochten maar nog nooit een passe-partout
```

**Bezoekers met specifieke tag:**

```sql
Bezoekers met tag "vriend" of "donor"
```

**Inactieve bezoekers:**

```sql
Bezoekers die > 12 maanden geleden voor het laatst tickets kochten
```

#### Selectie Regels Ophalen

Selecties worden opgeslagen in **Google Cloud Storage** en opgehaald via de Report Builder API.

**Beschikbare selecties:**

* Organisatoren kunnen selecties laten maken door support
* Selecties zijn herbruikbaar voor meerdere campagnes
* Selecties kunnen gecombineerd worden (AND/OR logic)

**Let op:** Technische kennis van SQL is handig voor custom selecties. Neem contact op met support voor hulp.

***

### Email Templates

Campagnes gebruiken **email templates** die je van tevoren aanmaakt.

#### Template Aanmaken

1. Ga naar **E-mail > Templates**
2. Klik op **+ Nieuwe Template**
3. Geef de template een naam (bijv. "Nieuwsbrief Template")
4. Ontwerp je email met HTML/CSS of gebruik de editor
5. Gebruik **merge variabelen** voor personalisatie

#### Merge Variabelen

Gebruik deze codes in je template om ze automatisch te vervangen met klantgegevens:

| Variabele       | Betekenis                             |
| --------------- | ------------------------------------- |
| `%FIRSTNAME%`   | Voornaam van de ontvanger             |
| `%LASTNAME%`    | Achternaam                            |
| `%EMAIL%`       | E-mailadres                           |
| `%SALUTATION%`  | Aanhef (bijv. "Beste Jan")            |
| `%COMPANYNAME%` | Jouw organisatie naam                 |
| `%UNSUBSCRIBE%` | Link om uit te schrijven (verplicht!) |

**Voorbeeld:**

```html
<SUBJECT>Nieuwsbrief December - %COMPANYNAME%</SUBJECT>

Beste %FIRSTNAME%,

Bedankt voor je interesse in ons theater!
We hebben spannend nieuws voor je...

[Jouw boodschap hier]

Groeten,
Het team van %COMPANYNAME%

<a href="%UNSUBSCRIBE%">Uitschrijven</a>
```

#### Subject in Template

Je kunt de **onderwerpregel** direct in de template zetten:

```html
<SUBJECT>Je persoonlijke nieuwsbrief</SUBJECT>

[Rest van de email...]
```

Alles tussen `<SUBJECT>` en `</SUBJECT>` wordt gebruikt als onderwerpregel.

Zie ook: E-mail Templates Aanpassen

***

### Campagne Versturen

#### Direct Versturen (Ad-hoc)

1. Maak campagne aan
2. Kies **Nu versturen**
3. Klik op **Versturen**
4. De campagne wordt direct in batches verstuurd

**Timing:**

* Eerste batch start **binnen enkele seconden**
* Batches van 250 emails per keer
* Totaal duurt \~1-5 minuten voor 1000 ontvangers

***

#### Inplannen (Scheduled)

1. Maak campagne aan
2. Kies **Later versturen**
3. Selecteer **datum en tijd**
4. Klik op **Inplannen**
5. De campagne wordt automatisch verstuurd op het gekozen moment

**Timing:**

* Campagne wordt **exact** op de gekozen tijd verstuurd
* Je kunt meerdere campagnes inplannen
* Geplande campagnes kun je annuleren (tot het moment van versturen)

***

### Batch Processing

Campagnes worden verstuurd in **batches** om de mailserver niet te overbelasten.

**Hoe het werkt:**

* Elke batch bevat **250 emails**
* Batches worden sequentieel verstuurd (niet parallel)
* Tussen batches zit een kleine vertraging (queue processing)

**Voorbeeld:**

```
Totaal ontvangers: 1000
Batches: 4 (250 + 250 + 250 + 250)
Geschatte duur: 3-5 minuten totaal
```

**Waarom batches?**

* Voorkomt memory issues
* Voorkomt timeouts
* Beschermt tegen spam-flagging
* Geeft betere stabiliteit

***

### Duplicate Preventie

Het systeem voorkomt dat je **per ongeluk** dezelfde campagne twee keer verstuurt.

**Controle bij aanmaken:** Als je een campagne aanmaakt met **exact dezelfde**:

* Template
* Selectie
* Naam
* Tijdstip

...dan geeft het systeem een **foutmelding** en voorkomt versturen.

**Let op:** Dit geldt alleen voor **geplande campagnes**. Ad-hoc campagnes kunnen in theorie duplicaat zijn (verschillende naam = nieuwe campagne).

***

### Beperkingen

#### Maximum Ontvangers

**Maximaal 10.000 ontvangers per campagne.**

**Waarom?**

* Beschermt tegen te grote campagnes
* Voorkomt mailserver overbelasting
* Dwingt gefocuste targeting

**Oplossing als je meer wilt versturen:**

* Splits je selectie in meerdere campagnes
* Neem contact op met support voor bulk campagnes

#### Minimum Ontvangers

**Minimaal 1 ontvanger.**

Het systeem controleert of je selectie **minstens 1 resultaat** oplevert. Anders krijg je een foutmelding.

***

### Test Campagnes

Voordat je een campagne naar duizenden mensen stuurt, kun je eerst **testen**.

#### Test Versturen

1. Maak je campagne aan (zonder te versturen)
2. Klik op **Test Campagne**
3. Vul een **test emailadres** in
4. De email wordt **direct** naar dit adres verstuurd
5. Controleer of alles correct is

**Wat te controleren:**

* Onderwerpregel correct?
* Merge variabelen goed ingevuld?
* Afbeeldingen laden?
* Links werken?
* Layout ziet er goed uit (desktop + mobiel)?
* Uitschrijflink werkt?

**Let op:** Test emails gebruiken **dummy data** voor merge variabelen (geen echte klantgegevens).

***

### Campaign Status Tracking

Elke campagne heeft een **status** die je kunt volgen.

#### Campaign Statussen

| Status         | Betekenis                                    |
| -------------- | -------------------------------------------- |
| **Geplanned**  | Campagne is ingepland, nog niet verstuurd    |
| **Processing** | Campagne wordt momenteel verstuurd (batches) |
| **Completed**  | Campagne volledig verstuurd                  |
| **Failed**     | Er is iets misgegaan tijdens versturen       |

#### Campaign Log

Voor elke campagne wordt bijgehouden:

* Aantal ontvangers
* Aantal verstuurd
* Aantal gefaald (bounces, drops)
* Job ID (voor technische tracking)
* Timestamp van aanmaken
* Timestamp van versturen

**Toegang tot logs:** Neem contact op met support voor inzage in campagne statistieken.

***

### Email Delivery Tracking

Nadat emails zijn verstuurd, kun je de **delivery status** volgen.

#### Email Statussen

| Status        | Betekenis                                                  |
| ------------- | ---------------------------------------------------------- |
| **Sent**      | Email is verstuurd door ons systeem                        |
| **Delivered** | Email is aangekomen bij de ontvanger                       |
| **Bounce**    | Email kon niet worden afgeleverd (adres bestaat niet)      |
| **Dropped**   | Email is geweigerd (spam filter, opt-out, etc.)            |
| **Opened**    | Ontvanger heeft de email geopend (indien tracking enabled) |
| **Clicked**   | Ontvanger heeft op een link geklikt                        |

***

### Opt-Outs & Privacy

Het systeem respecteert **automatisch** privacy instellingen.

#### Automatische Filters

**Campagnes worden NIET verstuurd naar:**

* Bezoekers die zich hebben **uitgeschreven** (opt-out)
* Email adressen die eerder als **spam** zijn gemarkeerd
* Email adressen met **hard bounces** (bestaat niet)
* Email adressen op de **blacklist**

#### Opt-Out Link Verplicht

**Elke campagne MOET** een uitschrijflink bevatten:

```html
<a href="%UNSUBSCRIBE%">Uitschrijven</a>
```

**Waarom verplicht?**

* Wettelijke verplichting (AVG/GDPR)
* Voorkomt spam-klachten
* Respecteert privacy van bezoekers

Zie ook: Privacy & AVG

***

### Best Practices

#### 1. Segmenteer je Doelgroep

Stuur **gerichte** emails naar **relevante** mensen:

**Goed:**

```
Selectie: Bezoekers die comedy shows bezochten
Campagne: Nieuwe comedy voorstelling aankondiging
```

**Slecht:**

```
Selectie: Alle bezoekers ooit
Campagne: Nieuwe comedy voorstelling
(Irrelevant voor mensen die alleen ballet zien)
```

#### 2. Personaliseer je Berichten

Gebruik merge variabelen om emails persoonlijker te maken:

**Goed:**

```
Beste %FIRSTNAME%,

Omdat je vorig jaar [Event] hebt bezocht...
```

**Minder goed:**

```
Beste bezoeker,

Wij willen je iets vertellen...
```

#### 3. Test Altijd Eerst

Stuur **altijd** een test email voordat je de campagne live zet.

**Checklist:**

* [ ] Subject duidelijk?
* [ ] Merge variabelen werken?
* [ ] Call-to-action helder?
* [ ] Links werken?
* [ ] Mobiel responsive?
* [ ] Uitschrijflink aanwezig?

#### 4. Timing is Belangrijk

Kies het **juiste moment** om te versturen:

**Goede tijden:**

* Dinsdag t/m donderdag (betere open rates)
* 10:00 - 11:00 uur of 14:00 - 15:00 uur
* Niet in het weekend (tenzij evenement gerelateerd)

**Vermijd:**

* Maandagochtend (volle inbox)
* Vrijdagmiddag (mensen zijn al weekend-mode)
* Late avond (emails verdwijnen in de lijst)

#### 5. Niet Te Vaak

Vermijd **campagne vermoeidheid**:

**Aanbevolen frequentie:**

* Nieuwsbrief: Maximaal 1x per maand
* Event announcements: Ad-hoc (bij nieuwe shows)
* Promoties: Maximaal 2x per maand

**Te vaak = meer opt-outs.**

#### 6. Monitor je Resultaten

Vraag support om **statistieken**:

* Open rate (hoeveel % opent je email?)
* Click rate (hoeveel % klikt op links?)
* Opt-out rate (hoeveel % schrijft zich uit?)

**Benchmark:**

* Open rate > 20% = goed
* Open rate < 10% = verbetering nodig
* Opt-out rate > 2% = mogelijk te vaak / niet relevant

***

### Veelgestelde Vragen

#### Kan ik een campagne annuleren?

**Ja**, maar alleen **geplande campagnes** die nog niet zijn verstuurd. Neem direct contact op met support.

#### Kan ik zien wie de email heeft ontvangen?

**Ja**, support kan je een lijst geven van ontvangers en hun delivery status.

#### Wat gebeurt er bij bounces?

Email adressen die **hard bouncen** (niet bestaan) worden automatisch gemarkeerd en krijgen geen volgende campagnes meer.

#### Kan ik attachments toevoegen?

**Nee**, campagne emails ondersteunen geen attachments (vanwege spam-risico). Gebruik links naar downloads.

#### Werkt HTML in mijn templates?

**Ja**, je kunt volledige HTML emails maken met CSS styling.

#### Kan ik afbeeldingen gebruiken?

**Ja**, maar **host ze extern** (bijv. op je website) en gebruik `<img src="https://...">` tags.

#### Hoe voorkom ik spam filters?

* Gebruik geen SPAM-gevoelige woorden ("GRATIS", "KLIK HIER")
* Zorg voor uitschrijflink
* Stuur niet te vaak
* Houd je aan privacy regels
* Test je email met spam checkers

#### Kan ik campagnes combineren met Mailchimp?

Het VoordeMensen CRM systeem is **apart** van Mailchimp. Je kunt beide gebruiken, maar ze synchroniseren niet automatisch.

Zie ook: Mailchimp Koppeling

***

### Troubleshooting

#### "Selectie is te groot" foutmelding

Je selectie heeft meer dan 10.000 ontvangers.

**Oplossing:**

* Verfijn je selectie criteria
* Splits in meerdere campagnes
* Neem contact op met support

#### "Geen rijen gevonden in selectie"

Je selectie criteria leveren 0 resultaten op.

**Oplossing:**

* Controleer je selectie regels
* Test met bredere criteria
* Vraag support om te helpen debuggen

#### "Duplicate campaign" foutmelding

Je probeert exact dezelfde campagne nogmaals aan te maken.

**Oplossing:**

* Wijzig de campagne naam
* Kies een andere tijd
* Check of de campagne al bestaat

#### Campagne lijkt niet verstuurd

**Check:**

1. Is de campagne status "Completed"?
2. Kijk in de campaign log (vraag support)
3. Check email delivery status van ontvangers
4. Controleer spam folders van test ontvangers

#### Merge variabelen werken niet

**Check:**

1. Gebruik je de juiste syntax? (`%FIRSTNAME%` met %)
2. Zijn de variabelen beschikbaar in je template?
3. Test met een test email
