Dlaczego nie podam jednej kwoty
Pytanie „ile kosztuje aplikacja” przypomina pytanie „ile kosztuje dom”. Pod słowem „aplikacja” kryje się zarówno prosty formularz z panelem do przeglądania zgłoszeń, jak i system z kilkoma rolami użytkowników, płatnościami, integracjami i wersją na telefon. Nakład pracy przy takich projektach różni się wielokrotnie.
Każda wycena sprowadza się w końcu do dwóch rzeczy: ile czasu potrzebują ludzie, którzy aplikację zaprojektują, zbudują, przetestują i wdrożą, oraz ile kosztuje jej utrzymanie. Dlatego zamiast podawać widełki z sufitu pokażę, skąd bierze się ten czas i jak samodzielnie ocenić, czy oferta jest rozsądna.
Uczciwie zaznaczę też, jak jest u mnie: aplikacje i systemy wyceniam indywidualnie, razem z partnerem technicznym StackERP. Bez rozmowy o zakresie każda kwota byłaby zgadywaniem.
Z czego składa się aplikacja — także ta niewidoczna część
Użytkownik widzi ekrany i przyciski. Większość pracy dzieje się jednak tam, gdzie nie zagląda:
- Analiza i projekt — rozmowy, mapa procesu, makiety, projekt interfejsu. Tu zapadają decyzje, które najmocniej wpływają na resztę kosztów.
- Interfejs — ekrany w przeglądarce lub na telefonie, formularze, sprawdzanie poprawności danych, widoki na różne urządzenia.
- Zaplecze — logika biznesowa, baza danych, uprawnienia, obsługa wyjątków i interfejs API, przez który komunikują się wszystkie elementy.
- Panel administracyjny — miejsce, w którym Ty lub zespół zarządzacie danymi, użytkownikami i ustawieniami. Często pomijany w pierwszych rozmowach, a potrzebny prawie zawsze.
- Integracje — połączenia z płatnościami, programem do faktur, magazynem, kalendarzem czy bramką SMS.
- Testy i wdrożenie — sprawdzenie typowych i nietypowych scenariuszy, konfiguracja serwerów, publikacja, przeniesienie danych i szkolenie.
Oferta, która wycenia tylko „ekrany”, zwykle nie mówi całej prawdy. Pytaj, jak wykonawca rozpisał pozostałe elementy i które z nich w ogóle uwzględnił.
Co najmocniej wpływa na wycenę
Poniższa tabela pokazuje czynniki, które najczęściej przesuwają wycenę w górę lub w dół. To porównanie kierunków, a nie cennik.
| Czynnik | Mniej pracy | Więcej pracy |
|---|---|---|
| Platformy | Aplikacja webowa lub PWA | Osobne aplikacje na iOS i Androida plus panel w przeglądarce |
| Role użytkowników | Jedna rola, np. pracownik | Kilka ról z różnymi uprawnieniami: klient, pracownik, kierownik, administrator |
| Procesy | Jeden prosty proces bez wyjątków | Wiele ścieżek, wyjątków i zależności |
| Integracje | Brak albo gotowe połączenia | Kilka systemów, w tym takie bez dobrej dokumentacji |
| Płatności | Brak albo przekierowanie do operatora | Subskrypcje, zwroty, rozliczenia między kilkoma stronami |
| Praca offline | Niepotrzebna | Pełna praca bez internetu i synchronizacja zmian |
| Dane | Zwykłe dane kontaktowe | Dane wrażliwe, np. o zdrowiu, i rozbudowane wymagania bezpieczeństwa |
| Projekt interfejsu | Sprawdzone, standardowe komponenty | Indywidualny projekt, animacje, wiele wariantów |
Czynniki te nie sumują się, tylko mnożą. Dwie platformy mobilne z trzema rolami i integracją z magazynem to nie „trochę więcej” niż panel w przeglądarce dla jednej roli — to zupełnie inna skala projektu.
Wybór między przeglądarką a telefonem ma tu szczególne znaczenie. Jeśli nie wiesz jeszcze, czego potrzebujesz, zajrzyj do artykułu aplikacja webowa czy mobilna — rozpisałem tam, kiedy wystarczy PWA, a kiedy warto zainwestować w aplikację natywną.
Niejasny zakres też ma swoją cenę
Jeśli zakres jest opisany ogólnie, wykonawca musi doliczyć margines na niewiadome. Im lepiej opiszesz proces — kto, co, kiedy, w jakiej kolejności i jakie są wyjątki — tym mniej w wycenie zgadywania. Przy większych projektach czasem warto zapłacić osobno za etap analizy, żeby wycena budowy opierała się na faktach.
Koszty po starcie, o których łatwo zapomnieć
Aplikacja to nie jednorazowy zakup. Po publikacji pojawiają się koszty, które trzeba uwzględnić w budżecie na każdy rok działania:
- Serwery i usługi chmurowe — zależą od liczby użytkowników, ilości danych i tego, jak ważna jest nieprzerwana dostępność.
- Usługi zewnętrzne — wysyłka SMS i e-maili, mapy, operator płatności, przechowywanie plików. Często rozliczane od liczby użyć.
- Konta w sklepach z aplikacjami — Apple pobiera roczną opłatę za członkostwo w programie deweloperskim (99 USD; w zależności od regionu cena może się różnić i jest podawana w lokalnej walucie), a Google Play jednorazową opłatę rejestracyjną (25 USD).
- Aktualizacje — nowe wersje iOS, Androida i przeglądarek, aktualizacje bibliotek i poprawki bezpieczeństwa. Aplikacja, której nikt nie aktualizuje, z czasem przestaje działać poprawnie.
- Wsparcie i rozwój — reakcja na zgłoszenia, drobne zmiany i nowe funkcje, o które poproszą użytkownicy.
Osobna sprawa to prowizje sklepów z aplikacjami. Dotyczą przede wszystkim sprzedaży treści i funkcji cyfrowych wewnątrz aplikacji. Jeśli Twoja aplikacja sprzedaje towary fizyczne albo usługi wykonywane poza nią — wizytę, dostawę, naprawę — wytyczne Apple wręcz wymagają innej formy płatności niż zakup w aplikacji. Wtedy płacisz operatorowi płatności, a nie sklepowi.
Cena stała czy rozliczenie za czas pracy?
Wykonawcy wyceniają aplikacje na dwa podstawowe sposoby i każdy z nich ma swoje miejsce:
- Cena stała za ustalony zakres — wiesz z góry, ile zapłacisz. Działa, gdy zakres jest dobrze opisany. Każda zmiana w trakcie wymaga jednak osobnej wyceny, a wykonawca zwykle wkalkulowuje w cenę ryzyko.
- Rozliczenie za czas pracy — płacisz za faktycznie przepracowane godziny. Daje elastyczność, gdy wymagania będą się zmieniać, ale wymaga zaufania, regularnych raportów i pilnowania budżetu.
W praktyce dobrze sprawdza się podział na etapy: najpierw analiza i projekt, potem pierwsza wersja z ceną za konkretny zakres, a dalszy rozwój w mniejszych porcjach. Po każdym etapie wiesz więcej i możesz zdecydować, czy i jak iść dalej.
Jak obniżyć koszt aplikacji, nie psując jej
- Zacznij od najmniejszej użytecznej wersji. Jeden proces, jedna lub dwie role, tylko niezbędne integracje. Szerzej opisuję to w artykule o MVP, czyli pierwszej wersji systemu.
- Rozważ PWA zamiast dwóch aplikacji natywnych. Jedna wersja zamiast trzech to mniej pracy przy budowie i utrzymaniu.
- Korzystaj z gotowych elementów tam, gdzie nie wyróżniają firmy. Logowanie, płatności, wysyłka wiadomości czy mapy to usługi, których nie trzeba budować od zera.
- Uporządkuj dane przed startem. Czyszczenie kartotek klientów i produktów w trakcie projektu jest droższe niż przed nim.
- Wyznacz jedną osobę do decyzji. Projekt, w którym każda decyzja czeka tydzień, trwa dłużej, a czas to koszt.
Nie oszczędzaj natomiast na analizie, testach i bezpieczeństwie. Ich brak wychodzi dopiero po starcie — wtedy, gdy poprawki są najdroższe.
Jak porównać oferty na aplikację
Dwie oferty na „tę samą” aplikację mogą różnić się kilkukrotnie i obie mogą być uczciwe, jeśli opisują inny zakres. Zanim porównasz kwoty, zadaj każdemu wykonawcy te same pytania:
- Jakie role, ekrany i scenariusze obejmuje wycena? Co jest wprost poza zakresem?
- Czy w cenie są panel administracyjny, testy, wdrożenie i szkolenie?
- Kto będzie właścicielem kodu, kont w sklepach z aplikacjami i serwerów? Czy umowa przewiduje przeniesienie autorskich praw majątkowych albo licencję — i na jakich polach eksploatacji?
- Ile będzie kosztować utrzymanie po starcie i co dokładnie obejmuje?
- Jak wygląda zgłaszanie błędów i jak szybko wykonawca reaguje?
- Czy dostanę dokumentację, dzięki której inny zespół mógłby przejąć projekt?
Najniższa cena bez odpowiedzi na te pytania często okazuje się najdroższa — po roku, gdy trzeba coś zmienić, a nikt nie wie, jak to zrobić.
Jak wygląda wycena u mnie
Aplikacje i systemy dla firm przygotowuję razem z partnerem technicznym, StackERP. Podział ról jest prosty: StackERP odpowiada za mapowanie procesów i rozwiązania techniczne, a ja za wygodę obsługi, komunikację i wdrożenie. Rezerwacje, konfiguratory, aplikacje mobilne i inne narzędzia dopasowane do pracy firmy mają w mojej ofercie wycenę indywidualną — po opisie potrzeb i rozmowie.
Zaczynam od tego, jak pracujesz dziś. Do pierwszej rozmowy przydadzą się:
- opis problemu, który aplikacja ma rozwiązać, i tego, jak radzisz sobie z nim teraz,
- lista osób, które będą z niej korzystać, i urządzeń, na których pracują,
- narzędzia, z którymi aplikacja ma się połączyć,
- termin, do którego pierwsza wersja powinna działać, i budżet, w którym chcesz się zmieścić.
Podanie budżetu nie jest ryzykiem — to najszybszy sposób, żeby dobrać zakres, który ma sens. Czasem okazuje się, że zamiast nowej aplikacji wystarczy jedna automatyzacja albo połączenie narzędzi, których już używasz. Wtedy też to powiem.