Digital Marketing Academy · Lektion

Kohorte- og tragtforespørgsler

Besvar spørgsmål om fastholdelse.

Lektion 4 af 413 trin

Kohorte- og tragtforespørgsler er en gratis Digital Marketing Academy-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Digital Marketing Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Digital Marketing Academy-kurset indeholder 4 lektioner i alt.

Hvad er en kohorte?

En kohorte er en gruppe brugere, der deler en starthændelse, som regel den måned hvor de tilmeldte sig. Når du følger hver kohorte over tid, får du et retvisende billede af fastholdelsen.

Aggregerede målepunkter skjuler kundefrafald, mens kohorter viser, om nye brugere faktisk bliver hængende.

SELECT user_id,
       DATE_TRUNC('month', signup_date) AS cohort_month
FROM users;

Definition af kohorten

Det første trin er at mærke hver bruger med sin kohorte. DATE_TRUNC runder tilmeldingsdatoer ned til måneden, så brugerne grupperes ensartet.

Gem dette som en genanvendelig byggesten til alt det, der følger.

SELECT DATE_TRUNC('month', signup_date) AS cohort_month,
       COUNT(*) AS cohort_size
FROM users
GROUP BY 1
ORDER BY 1;

Aktivitetsperioder

Fastholdelse måler aktivitet i månederne efter tilmelding. Beregn perioden som forskellen mellem en ordres måned og kohortens måned.

Periode 0 er tilmeldingsmåneden, periode 1 er den følgende måned osv.

SELECT o.user_id,
       (DATE_PART('year', o.order_date) - DATE_PART('year', u.signup_date)) * 12
       + (DATE_PART('month', o.order_date) - DATE_PART('month', u.signup_date)) AS period
FROM orders o
JOIN users u ON u.user_id = o.user_id;

Opbygning af et fastholdelsesgitter

Kombinér kohortemåned og periode, og tæl derefter antallet af forskellige aktive brugere i hver celle. Resultatet er den klassiske fastholdelsestrekant.

Hver række er en kohorte, og hver kolonne er antal måneder siden tilmelding.

SELECT DATE_TRUNC('month', u.signup_date) AS cohort,
       DATE_PART('month', AGE(o.order_date, u.signup_date)) AS period,
       COUNT(DISTINCT o.user_id) AS active
FROM users u
JOIN orders o ON o.user_id = u.user_id
GROUP BY 1, 2;

Fastholdelsesrate

Rå antal er svære at sammenligne på tværs af kohorter med forskellig størrelse. Dividér antallet af aktive brugere i hver periode med kohortens oprindelige størrelse.

En vinduesfunktion henter størrelsen i periode 0 ind på hver række til beregningen af forholdet.

SELECT cohort, period,
       active * 1.0 / FIRST_VALUE(active) OVER (
         PARTITION BY cohort ORDER BY period
       ) AS retention
FROM cohort_activity;

Hvad er en tragt?

En tragt følger brugere gennem ordnede trin: besøg, tilmelding, læg i kurv og køb. Forskellen mellem trinnene viser, hvor du mister brugere.

Tragta­nalyse gør vage klager over "lav konvertering" til et konkret trin med frafald.

SELECT step, COUNT(DISTINCT user_id) AS users
FROM events
WHERE step IN ('visit', 'signup', 'cart', 'purchase')
GROUP BY step;

Optælling af hvert trin

Betinget aggregering tæller brugere på hvert trin i én gennemgang. FILTER tæller forskellige brugere, der nåede hvert trin.

Én forespørgsel, én række og hele tragten på én gang.

SELECT
  COUNT(DISTINCT user_id) FILTER (WHERE step = 'visit') AS visits,
  COUNT(DISTINCT user_id) FILTER (WHERE step = 'signup') AS signups,
  COUNT(DISTINCT user_id) FILTER (WHERE step = 'purchase') AS buyers
FROM events;

Konverteringsrater for trin

Det interessante tal er forholdet mellem på hinanden følgende trin. Hvis du dividerer hvert trin med det foregående, kan du se det største frafald.

Konvertér til et decimaltal, så heltalsdivision ikke reducerer din rate til nul.

SELECT signups * 1.0 / NULLIF(visits, 0) AS visit_to_signup,
       buyers * 1.0 / NULLIF(signups, 0) AS signup_to_buy
FROM funnel_counts;

Ord­nede tragte med tidsstempler

En streng tragt kræver, at trinnene sker i den rigtige rækkefølge. Forbind hvert trin med det næste, men kun når dets tidsstempel er senere.

Det forhindrer, at et køb, der skete før den matchende tilmelding, bliver talt med.

SELECT COUNT(DISTINCT v.user_id) AS visited,
       COUNT(DISTINCT p.user_id) AS purchased
FROM events v
LEFT JOIN events p
  ON p.user_id = v.user_id
  AND p.step = 'purchase'
  AND p.event_time > v.event_time
WHERE v.step = 'visit';

Tragt efter kanal

Hvis du opdeler tragten efter kanal for kundetilgang, kan du se, hvilke kilder der sender brugere, som faktisk konverterer, ikke kun klikker.

Gruppér de betingede optællinger efter kanal for at sammenligne kvaliteten på tværs af kilder.

SELECT channel,
       COUNT(DISTINCT user_id) FILTER (WHERE step = 'visit') AS visits,
       COUNT(DISTINCT user_id) FILTER (WHERE step = 'purchase') AS buyers
FROM events
GROUP BY channel;

Fra indsigt til handling

Kohorter fortæller dig, om fastholdelsen forbedres fra udgivelse til udgivelse, mens tragte fortæller dig, hvilket trin du skal rette først.

Sammen flytter de marketing fra at rapportere, hvad der skete, til at diagnosticere hvorfor og hvor du bør investere næste gang.

Hurtigt tjek

Din tragt tæller brugere ved besøg, tilmelding og køb. Hvad viser forholdet mellem på hinanden følgende trin?

Opsummering

Kohorter grupperer brugere efter startmåned og følger fastholdelsen over perioder ved hjælp af DATE_TRUNC og AGE. Tragte tæller forskellige brugere ved hvert ordnet trin og sammenligner forholdet mellem på hinanden følgende trin.

Du har nu de avancerede værktøjer til udelukkende i SQL at diagnosticere fastholdelse og konvertering.

Gratis at komme i gang

Lær Digital Marketing Academy med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
63
Lektioner
239

Ofte stillede spørgsmål

Er lektionen “Kohorte- og tragtforespørgsler” gratis?

Ja — alle 3 lektioner i læringssporet Digital Marketing Academy, inklusive “Kohorte- og tragtforespørgsler”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Digital Marketing Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Kohorte- og tragtforespørgsler”?

Besvar spørgsmål om fastholdelse. Du øver dig i Digital Marketing Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Digital Marketing Academy?

Der kræves ingen tidligere erfaring. Digital Marketing Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.

Hvor lang tid tager lektionen “Kohorte- og tragtforespørgsler”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Digital Marketing Academy-lektion?

Ja. Alle Digital Marketing Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Hvorfor marketingfolk lærer SQL
  2. SELECT, WHERE, GROUP BY
  3. Sammenføj marketingtabeller
  4. Kohorte- og tragtforespørgsler
← Tilbage til Digital Marketing Academy