Ücret modeli
Aboneler ilk 30 dakikayı ücretsiz kullanır, sonrası dakikası 2 TL. Tek seferlik kullanıcılar açılış için 10 TL ve dakikası 1,5 TL öder. Bu yüzden abonelerin çoğu yolculuğu 0 TL'dir ve gelir tek seferlik kullanıcılardan gelir; ama aboneler sistemi düzenli kullanır.
Sıklık segmentleri
Kullanıcıları yolculuk sayısına göre NTILE ile dörde böl: en sık kullanan %25 çoğu zaman yolculukların yarısından fazlasını yapar. Bu, Pareto benzeri bir yoğunlaşmadır.
Derinleş: Ücret modeli davranışı değiştiriyor mu?
Fiyatlandırma yalnızca geliri değil davranışı da şekillendirmek için tasarlanır. Pedal İzmir'in modelinde iki teşvik var:
- Abonelik ilk 30 dakikayı ücretsiz yapar. Amaç kısa, sık ve düzenli kullanımı (işe gidiş, son kilometre) teşvik etmektir.
- Tek seferlik kullanımda açılış ücreti (10 TL) kısa yolculuğu görece pahalı kılar ve kullanıcıyı aboneliğe yönlendirir.
Bu tasarımın iki öngörüsü veriyle sınanabilir: (1) aboneler 30. dakikanın hemen altında yığılmalı, (2) abonelerin yolculukları tek seferliklerden kısa olmalı.
WITH t AS (
SELECT user_id, ROUND((julianday(ended_at) - julianday(started_at)) * 1440) AS dk
FROM bk_trips
WHERE ended_at IS NOT NULL
AND ROUND((julianday(ended_at) - julianday(started_at)) * 1440) BETWEEN 20 AND 40
)
SELECT CASE WHEN t.dk < 25 THEN '20-24' WHEN t.dk < 30 THEN '25-29'
WHEN t.dk < 35 THEN '30-34' ELSE '35-40' END AS dakika,
SUM(CASE WHEN u.user_type = 'abone' THEN 1 ELSE 0 END) AS abone,
SUM(CASE WHEN u.user_type = 'tek seferlik' THEN 1 ELSE 0 END) AS tek_seferlik
FROM t JOIN bk_users u ON u.user_id = t.user_id
GROUP BY CASE WHEN t.dk < 25 THEN '20-24' WHEN t.dk < 30 THEN '25-29'
WHEN t.dk < 35 THEN '30-34' ELSE '35-40' END
ORDER BY dakika;
Sonuç beklentiyi doğrulamıyor. Abonelerde 25–29 dakika aralığında 3.412, 30–34 aralığında 3.483 yolculuk var: sınırın altında yığılma yok. Ortalama süre de iki grupta neredeyse aynı (abone 29,2, tek seferlik 29,4 dakika). Bu veride ücret modeli süre davranışını değiştirmiyor. Bu da bir bulgudur: ya kullanıcılar ücret kuralını bilmiyor ya da 30 dakikayı aşan ücret onları caydıracak kadar yüksek değil. Uygulamada kalan süreyi gösteren bir sayaç, fiyat değişikliğinden önce denenebilecek ucuz bir müdahaledir.
“Ya şöyle olsaydı?” analizi
Fiyat kararlarında en sık istenen sorgu senaryo hesabıdır: mevcut yolculukları başka bir tarifeyle yeniden fiyatlamak. Örneğin bütün tek seferlik kullanıcılar abone olsaydı, onların yolculuklarından gelen gelir ne kadar düşerdi? Bu hesabı yaparken davranışın değişmeyeceğini varsaydığını unutma. Abone olan kullanıcı daha sık bisiklete biner.
| Hata | Sonuç | Doğrusu |
|---|---|---|
| Kapanmamış yolculukları ücretsiz saymak | Ücretsiz oranı şişer | fare NULL'dır; COUNT(fare) paydası |
| 116 bin satırı önce birleştirip sonra özetlemek | Yavaş sorgu | Önce kullanıcı başına özetle, sonra 6 bin kullanıcıyla birleştir |
| Gelir payını yolculuk payıyla karıştırmak | “Aboneler kârsız” yanılgısı | İkisini yan yana göster; abonelik ücreti bu tabloda yok |