Koszty AWS i liczba użytkowników: bilans WattLog.pro
Od kwietnia zapłaciłem AWS 168 dolarów za utrzymanie WattLog.pro, darmowej aplikacji do treningu na trenażerze. W tym czasie konto założyło 25 osób, a jazdę w aplikacji nagrały dwie. Jest sezon trenażerowy i spodziewałem się więcej. Od kilku tygodni wątpię, czy ten projekt ma sens, więc policzyłem wszystko, co da się policzyć.
Po co to zbudowałem
Zacząłem od oszczędności i z ciekawości. Przez wiele miesięcy jeździłem na Zwifcie i płaciłem za niego 20 dolarów miesięcznie. Ten wirtualny świat nie był dla mnie. Czasem czułem się jak w grze, czasem miałem po prostu za dużo bodźców. Na początku brakowało mi też kondycji na ich plany treningowe i swobodne jazdy. Potem uszkodził mi się pas HRM i wtedy pierwszy raz spróbowałem vibe codingu.
Chciałem krok po kroku zrozumieć trening kolarski i swoje możliwości, a przy okazji rozwijać się jako programista. Przez wiele lat pracowałem w IT jako QA i od dawna marzyłem o tym, żeby coś zbudować samemu. Blog miał być prostą bazą odpowiedzi na pytania, które sam miałem na początku jazdy na szosie: po co pulsometr, po co miernik mocy, czym są strefy, dlaczego po tygodniu jazdy po 50–60 km dziennie czułem się tak źle, choć ta mania bardzo mi się podobała. Artykuły piszę z pomocą AI, sprawdzam i poprawiam je sam.
WattLog.pro miało być też moją odskocznią od bezrobocia i sposobem, żeby mieć co robić każdego dnia.
Kto się rejestruje
Pierwsze zwykłe konto pojawiło się w lipcu. We wrześniu konto założyło 9 osób, w październiku 15.
Źródło rejestracji znam tylko wtedy, gdy link miał parametr. Piętnaście kont go nie ma, osiem przyszło ze strony wattlog.pro, dwa prosto z artykułów. Na blogu jest 370 polskich artykułów (1126 stron we wszystkich językach). Część osób mogła przyjść z bloga przez stronę główną, więc nie wiem, ile naprawdę dał blog.
Co widzi Google
Search Console pokazuje, co dzieje się, zanim ktoś trafi do aplikacji. Od 26 kwietnia do 29 października strony WattLog.pro wyświetliły się w Google 43 232 razy i dostały 548 kliknięć (CTR 1,27%). Ruch rośnie: 9 kliknięć w czerwcu, 83 w lipcu, 206 w październiku.
Tylko że ci czytelnicy prawie nie zakładają kont. Najwięcej kliknięć, 226, dostały strony po niemiecku, a niemiecki wybrało jedno konto z 25. Dwanaście kont nie ma ustawionego języka, więc nie wyciągam z tego mocnych wniosków. Strony polskie dostały 122 kliknięcia, angielskie 95, niderlandzkie 58.
Artykuły o sprzęcie i serwisie dostały najwięcej: 144 z 501 kliknięć na blogu, na przykład o paście montażowej do karbonu albo o tym, kiedy najlepiej kupić rower. Lepiej wypadają teksty dla właścicieli pedałów mocy. Najlepsze z nich, o instalacji i ładowaniu Favero Assioma i niemiecki tekst o balansie lewa/prawa, mają CTR od 3 do 8% i pozycje między 5 a 8. Ich wersje w innych językach wypadają słabiej. Jedno z dwóch kont z bloga przyszło właśnie z artykułu o pedałach mocy i należy do największych w bazie.
| Najczęściej klikane adresy | Kliknięcia | Wyświetlenia | CTR | Pozycja |
|---|---|---|---|---|
| Strona główna | 23 | 243 | 9,47% | 5,5 |
| NL: lista kontrolna, rower szosowy a nadwaga | 19 | 627 | 3,03% | 7,9 |
| PL: instalacja pedałów Favero Assioma | 16 | 466 | 3,43% | 5,9 |
| DE: balans lewa/prawa w pomiarze mocy | 16 | 206 | 7,77% | 6,4 |
| DE: pasta montażowa do karbonu | 13 | 1584 | 0,82% | 8,5 |
Google ukrywa rzadkie zapytania: z 1000 zapytań w eksporcie tylko 6 ma kliknięcia, więc nie wiem, czego dokładnie szukali ludzie. Nikt nie szuka nazwy: „wattlog” pojawiło się w wynikach 4 razy przez pół roku. Nie wiem też, ile kliknięć kończy się kontem, bo poza Search Console nie mam żadnej analityki.
Co się dzieje po rejestracji
Osiemnaście z 25 kont nie ma ani jednej jazdy, ani nagranej, ani zaimportowanej. Trzynaście z nich założono ponad tydzień temu, więc nie mogę tego tłumaczyć tym, że jeszcze nie zdążyli.
Siedem kont ma jakąkolwiek jazdę. Pięć osób wrzuciło swoją historię ze Stravy lub plików TCX, razem 591 jazd, i potem żadna nie nagrała nowej jazdy. Dwie pozostałe nagrały w aplikacji razem cztery jazdy. Poza mną i moimi kontami testowymi w aplikacji nie jeździ prawie nikt.
Ile kosztuje utrzymanie aplikacji na AWS
Od kwietnia do października AWS kosztował 168,22 USD: 136,76 USD za usługi i 31,46 USD VAT. Nie mam żadnych kredytów ani zniżek. Płacę z własnej kieszeni, a projekt nic nie zarabia.
Najdroższy był czerwiec, 36 USD z VAT. W maju, czerwcu i lipcu płaciłem za kredyty CPU instancji t3, razem 26,73 USD, czyli prawie jedną piątą rachunku. W sierpniu wyłączyłem je, żeby obniżyć koszt, i rachunek z VAT spadł do 18 USD. Minus: kiedy kredyty się skończą, procesor zwalnia do poziomu bazowego, więc serwer może mieć mniej zapasu mocy, gdy ktoś akurat jedzie.
| Rachunek za październik | USD |
|---|---|
| Serwer EC2 (t3.small, wyłączany nocą 23:00–06:00) | 10,76 |
| Publiczny adres IPv4 | 3,67 |
| S3: kafelki mapy tras (jeden plik całej planety, ok. 138 GB) | 3,40 |
| Dysk serwera (EBS) | 2,40 |
| Route 53 (strefy DNS) | 1,05 |
| Secrets Manager | 0,79 |
| Pozostałe (Cost Explorer, CloudFront) | 0,11 |
| Razem netto | 22,19 |
| VAT 23% | 5,10 |
Płacę 3,40 USD miesięcznie za mapę całego świata, a jeżdżę po Europie. Kafelki tylko dla Europy to około 48 GB zamiast 138 GB i około 2 USD oszczędności miesięcznie. Jeszcze tego nie zrobiłem. Nie kupiłem też instancji zarezerwowanej, bo nie wiem, czy projekt przetrwa rok.
Koszty poza AWS
| Pozycja | Kwota |
|---|---|
| Claude Code, plan Pro | 20 USD miesięcznie |
| Apple Developer Program (aplikacja na iOS) | 99 USD rocznie |
| Domena wattlog.pro, 15.04.2026–14.04.2027 | 23,37 zł brutto (19 zł + 23% VAT) |
| Google Pixel 8a, żeby testować na prawdziwym Androidzie | 1699 zł |
| Zwift Click V2, żeby obsłużyć ten kontroler | 13,75 EUR z przesyłką |
| Pedały Favero Assioma PRO MX-1 i Upgrade Kit do MX-2, pierwszy w życiu miernik mocy | 3748 zł (1949 zł + 1799 zł) |
Miało być taniej niż Zwift za 20 USD. Dziś abonament, konto Apple i AWS to razem około 50 USD miesięcznie netto. Sprzęt kupiłem jednorazowo, za około 5,5 tys. zł, z czego ponad dwie trzecie to pedały. Te kupiłem głównie dla siebie, do treningu, a przy okazji służą do testów.
Czasu nie liczyłem. Bywały tygodnie, w których siedziałem przy komputerze po 3–4 godziny dziennie, od sierpnia mniej, więc wychodzi coś jak pół etatu. Do tego osobne godziny testów z trenażerem i innymi urządzeniami.
Co poszło nie tak
- Budowałem głównie dla siebie: tryb ERG, mostek Bluetooth, obsługę pedałów mocy i Zwift Click. Korzystam z tego prawie tylko ja.
- Nigdy nie zapytałem osób bez jazdy, co je zatrzymało.
- Napisałem dużo treści, nie mierząc, czy działa: 548 kliknięć na 1126 stron przez pół roku, czyli średnio 0,49 kliknięcia na stronę.
- Oszczędzałem na serwerze, zanim zadbałem o pierwsze kroki w aplikacji. Co zabawne, w planie poniżej i tak jest cięcie kosztów o 3 USD.
Czy to ma sens
Nie wiem. Aplikacja działa, tylko prawie nikt w niej nie jeździ. 591 zaimportowanych jazd to więcej, niż się spodziewałem, ale po imporcie nikt nie wrócił jeździć.
Czasem wątpię, czy w ogóle ma sens budowanie aplikacji z pomocą AI, które kończy się dopłacaniem do własnego projektu. Chciałbym, żeby przybyło ludzi, i trochę się tego boję: czy dam radę technicznie i czy ktoś zaufa mi na tyle, żeby postawić kawę. Najbardziej boję się, że zmianą w kodzie przerwę komuś trening.
Co mnie cieszy
Najbardziej mój własny postęp. Po jednym cyklu treningowym zaplanowanym i rozliczonym w WattLog.pro moje FTP wzrosło ze 178 do 193 W, a waga spadła z 96 do 93 kg. Część tego wzrostu to zmiana miernika mocy między testami, więc realnie bardziej prawdopodobne jest 4–6% niż 8,4%. Opisałem to w artykule o planie 3+1. Próba to jedna osoba, ja, ale u mnie zadziałało. Drugą taką chwilą była analiza mojej jazdy na Górę św. Anny. Pokazała, że dane, które zbieram, da się zamienić we wnioski. Z tej jazdy powstały artykuły o Power Guide i o drugiej próbie na tej samej górze, a z nich nowe funkcje i tekst o smart fueling.
Konkurencja
Zwift i Rouvy mają cały świat i prawdziwe trasy, RideCave świetny interfejs. WattLog.pro to kropka jadąca po profilu wysokości i integracja ze Stravą. Takiej kropki szukałem, kiedy uciekałem od Zwifta. Nie wiem, ilu rowerzystów chce tego samego. Wiem tylko, że ja chciałem.
Kiedy przestanę
Mój budżet na serwer i abonament to 20–30 USD miesięcznie, a dziś wydaję około 50, więc już go przekraczam. Powyżej budżetu chciałbym, żeby pomogła społeczność. Siły kończą mi się wtedy, gdy oglądam cudze projekty: ich funkcje, interfejsy i liczbę użytkowników. Zamykam wtedy konsolę, idę na swój trening i czasem myślę, że ludzi już nie przybędzie.
Tryb utrzymania, w którym serwer działa, a ja niczego nie dokładam, byłby dla mnie ulgą. Nie wiem tylko, czy jest realny: biblioteki wciąż się zmieniają, a konto Apple Developer trzeba opłacać co roku.
Co robię dalej
- Sprawdzę, co widzi osoba zaraz po zalogowaniu, i dodam w aplikacji jedno pytanie: co sprawiłoby, że wrócisz?
- Na razie nie dokładam funkcji trenażerowych. Najpierw chcę wiedzieć, dlaczego nikt nie zaczyna jeździć.
- Poproszę trzy osoby, żeby przeanalizowały jedną swoją jazdę i napisały mi, co je zirytowało.
- Dodam analitykę na stronie i w aplikacji.
- Obetnę rachunek AWS o około 3 USD (mapa tylko Europy, SSM zamiast Secrets Manager, jedna strefa DNS) i będę wstrzymywać abonament, kiedy niczego nie koduję. W trybie utrzymania wyjdzie około 28 USD miesięcznie: AWS około 19, Apple około 8, reszta to domena.
- Wrócę do tego tekstu 31 stycznia 2027 z tymi samymi wykresami.
Zapytam Was o trzy rzeczy
Jeśli jeździsz na trenażerze albo kiedyś założyłeś konto w WattLog.pro, odpowiedz na któreś z tych pytań, nawet jednym zdaniem:
- Z jakiej aplikacji do treningu korzystasz i co w niej najbardziej Cię męczy albo czego Ci w niej brakuje?
- Jeśli założyłeś konto w WattLog.pro i niczego w nim nie zrobiłeś: co Cię zatrzymało?
- Co musiałaby mieć spokojna aplikacja bez gry i bez wirtualnego świata, żebyś ją wypróbował?
Odpisać można przez formularz kontaktowy. Przeczytam każdą odpowiedź.
Dane i metoda
- Użytkownicy: zanonimizowana kopia bazy produkcyjnej z 31.10.2026. Liczę konta zarejestrowane (nie gości), bez 6 kont wewnętrznych i bez usuniętych. Gości jest 30. Jazdę mają dwaj z nich, a w aplikacji nagrał ją jeden.
- Jazda w aplikacji to trening ERG, jazda swobodna, trasa, Ramp Test lub jazda z zadanym nachyleniem. Import to jazdy ze Stravy i pliki TCX.
- Koszty: AWS Cost Explorer, koszt bez rabatów, kwiecień–październik 2026, październik do 31.10.
- Google Search Console: eksport 26.04–29.10.2026, wyszukiwanie w sieci. Zapytania są niepełne, bo Google ukrywa rzadkie. Podział na kategorie i języki dotyczy 1000 najczęściej klikanych adresów.
- Nie podaję współczynników konwersji, bo nie mam liczby odwiedzin. Liczby są małe, więc jedna osoba to 4 punkty procentowe.