Det är viktigt att beräkna konverteringsfrekvens för varje företag. Så här beräknar du konverteringsfrekvens i MySQL. Du kan också använda den här frågan för trattanalys i PostgreSQL, SQL Server och Oracle.
Hur beräknar man omvandlingsfrekvens i MySQL?
Låt oss säga att du har 3 bord
registreringar (user_id, date_joined) – innehåller alla användare som har registrerat sig på din webbplats
shopping_cart (user_id, product_id, date_added) – innehåller alla användare som har lagt till minst en produkt i sin kundvagn, tillsammans med sina varukorgsartiklar.
köp (user_id,product_id,date_purchased,purchase_amount) – innehåller alla användare som har köpt minst 1 produkt, tillsammans med varje produkts pris.
För att beräkna omvandlingsfrekvensen har vi endast visat nödvändiga kolumner i våra tabeller, de kan alltid innehålla fler kolumner.
Vi vill mäta konverteringsfrekvensen vid två punkter i vår konverteringstratt
- När användare lägger till minst en vara i kundvagnen – % av användare som har lagt till minst en vara i kundvagnen
- När användare köper minst 1 vara – % av användare som har köpt minst 1 vara
Bonus Läs:Hur man beräknar retentionsgrad i MySQL
Först beräknar vi det totala antalet registreringar, till exempel de senaste 30 dagarna.
mysql> select count(*) as signups from signups where date_joined > now() - interval 30 day; +---------+ | signups | +---------+ | 2130 | +---------+
Bonusläsning:Hur fyller man i saknade datum i MySQL?
Därefter beräknar vi det totala antalet användare som lagt till minst en vara i sin kundvagn under de senaste 30 dagarna
mysql> select count(distinct user_id) as carts from shopping_carts where date_added > now() - interval 30 day; +---------+ | carts | +---------+ | 416 | +---------+
Se till att du använder distinkt i ovanstående fråga, för att endast räkna unika användare
Därefter beräknar vi antalet användare som har köpt minst en vara under de senaste 30 dagarna.
mysql> select count(distinct user_id) as purchases from purchases where date_purchased > now() - interval 30 day; +----------+ |purchases | +----------+ | 136 | +----------+
Bonus Läs:Hur man beräknar månadsförsäljning i MySQL
Nu när vi har de tre siffrorna kan vi använda dessa frågor på flera sätt. Om du bara vill beräkna procentandelar för konverteringsfrekvens, är här SQL-frågan för att beräkna konverteringsfrekvens för att skapa en kundvagn
mysql>select (select count(distinct user_id) from shopping_carts where date_added > now() - interval 30 day) / (select count(*) as signups from signups where date_joined > now() - interval 30 day) * 100 as 'Shopping Cart conversion'; +--------------------------+ | Shopping Cart conversion | +--------------------------+ | 19.53 | +--------------------------+
och för inköp
mysql> select (select count(distinct user_id) as purchases from purchases where date_purchased > now() - interval 30 day) / (select count(*) as signups from signups where date_joined > now() - interval 30 day) * 100 as 'Purchase conversion'; +---------------------+ | Purchase conversion | +---------------------+ | 6.38 | +---------------------+
Bonusläsning:SQL-fråga för att jämföra produktförsäljning per månad
Om du vill skapa en omvandlingstratt, så här är den kombinerade frågan för att få alla 3 ovanstående räkningar i en enda tabell
mysql>select 'signups' as `funnel stage`, count(*) as `number of users` from signups where date_joined > now() - interval 30 day UNION select 'carts' as `funnel stage`,count(distinct user_id) as `number of users` from shopping_carts where date_added > now() - interval 30 day UNION select 'purchases' as `funnel stage`,count(distinct user_id) as `number of users` from purchases where date_purchased > now() - interval 30 day +-------------+-----------------+ |funnel stage | number of users | +-------------+-----------------+ | signups | 2130 | | carts | 416 | | purchases | 136 | +-------------+-----------------+
För att beräkna konverteringsfrekvens kan du enkelt rita dessa siffror på ett kolumndiagram eller trattdiagram med hjälp av ett diagramverktyg. Här är ett exempel på ovanstående data plottad i ett kolumndiagram med Ubiq.
Här är ett exempel på samma data plottad med hjälp av en konverteringstratt med Ubiq.
Om du vill skapa diagram, instrumentpaneler och rapporter från MySQL-databasen kan du prova Ubiq. Vi erbjuder en 14-dagars gratis provperiod.