Co powinna zawierać umowa na wykonanie strony internetowej?
W ciągu ostatnich 10 lat podpisałem ponad 250 umów na strony internetowe – jako wykonawca, ale też jako doradca dla klientów, którzy przychodzili do mnie z problemem po nieudanej współpracy z kimś innym. I powiem wprost: większość konfliktów, które widziałem, nie wynikała ze złej jakości kodu czy brzydkiego designu. Wynikała z umów napisanych na jedną stronę A4, w których nie było ani słowa o tym, co się stanie, gdy klient się rozmyśli, wykonawca zniknie na trzy tygodnie, albo obie strony inaczej rozumieją słowo „gotowe”. Poniżej jest lista elementów, których naprawdę szukam, zanim cokolwiek podpiszę – po jednej i po drugiej stronie stołu.
1. Zakres prac – najczęściej pomijany, najczęściej powodujący spory
Jeśli w umowie jest napisane „wykonanie strony internetowej firmy XYZ” i nic więcej, to za pół roku ktoś będzie się kłócił o to, czy formularz kontaktowy z reCAPTCHA wchodził w zakres. Widziałem to dziesiątki razy. Zakres prac powinien zawierać konkretne, policzalne elementy:
- Dokładną liczbę podstron (np. „strona wizytówkowa – maksymalnie 8 podstron: strona główna, o firmie, oferta, realizacje, blog, kontakt, polityka prywatności, regulamin”). Bez liczby „dodatkowa podstrona” staje się polem do negocjacji przy każdej rozmowie.
- Listę funkcjonalności – formularz kontaktowy, mapa Google, integracja z newsletterem, kalkulator wyceny, system rezerwacji. Jeśli coś nie jest wypisane, zakładaj, że go nie ma – i tak to traktują sądy przy sporach o wykonanie umowy o dzieło.
- Zakres responsywności – na jakich szerokościach ekranu strona ma działać poprawnie (w praktyce: 360px, 768px, 1024px, 1440px+ to standard, który sam stosuję).
- Co NIE wchodzi w zakres – to jest równie ważne. Copywriting, sesja zdjęciowa, tłumaczenia na inne języki, konfiguracja skrzynek e-mail, zakup wtyczek premium – jeśli tego nie wykluczysz pisemnie, klient może oczekiwać, że to „w cenie”.
Realne widełki cenowe, żeby mieć punkt odniesienia: strona wizytówkowa na WordPressie to zwykle 3000–9000 zł netto, landing page pod jedną usługę 1500–4000 zł, a sklep na WooCommerce z kilkudziesięcioma produktami i integracją płatności/kuriera – 8000–25 000 zł netto, w zależności od liczby integracji. Jeśli oferta jest wyraźnie poniżej dolnej granicy, prawie zawsze oznacza to okrojony zakres, który ujawni się dopiero w trakcie realizacji.
2. Harmonogram – i co się dzieje, gdy ktoś go nie dotrzyma
Sam termin końcowy to za mało. Dobry harmonogram ma kamienie milowe, bo strona internetowa powstaje etapami, a opóźnienie na wczesnym etapie kumuluje się na końcu:
- Dostarczenie materiałów przez klienta – teksty, logo, zdjęcia. To jest etap, na którym najczęściej „siada” cały projekt, dlatego zawsze zapisuję klauzulę, że bieg terminów wykonawcy zawiesza się do czasu dostarczenia kompletnych materiałów przez zamawiającego.
- Projekt graficzny / makieta – zwykle 7–14 dni roboczych od otrzymania materiałów, przy stronie wizytówkowej.
- Akceptacja projektu – z konkretnym terminem na feedback (np. 5 dni roboczych), po którym brak odpowiedzi traktuje się jako milczącą akceptację.
- Wdrożenie i testy – 5–10 dni roboczych.
- Termin końcowy – dla wizytówki realistycznie 4–6 tygodni od podpisania umowy i otrzymania materiałów, dla sklepu internetowego 8–14 tygodni.
Do tego warto dopisać kary umowne za zwłokę – w mojej praktyce to zwykle 0,2% wartości umowy za każdy dzień opóźnienia z winy wykonawcy, z limitem górnym rzędu 10–20% wartości zlecenia. To chroni obie strony: klienta przed wiecznym „będzie w przyszłym tygodniu”, a uczciwego wykonawcę przed sytuacją, w której nierealny termin wpisany „na wyrost” w ofercie staje się bronią przeciwko niemu.
3. Płatności i kamienie milowe finansowe
To jest punkt, w którym uczciwość naprawdę się weryfikuje – po obu stronach. Standard, który stosuję i polecam klientom jako minimum bezpieczeństwa, to podział na transze:
- Zaliczka 30–50% przed rozpoczęciem prac – zabezpiecza wykonawcę przed sytuacją, w której klient znika po otrzymaniu makiety.
- Transza po akceptacji projektu graficznego (np. kolejne 30%) – potwierdza, że obie strony zgadzają się co do kierunku, zanim powstanie cały kod.
- Pozostała kwota przed przekazaniem danych dostępowych i uruchomieniem strony na docelowej domenie – i to jest kluczowe zdanie. Żaden profesjonalny wykonawca nie powinien przekazywać loginów, kodu źródłowego ani „puszczać” strony na żywo przed pełną płatnością, ale też żaden wykonawca nie powinien rejestrować domeny czy zakładać hostingu na swoje dane, żeby „trzymać klienta za gardło” po zakończeniu współpracy. To jest praktyka, którą uważam za nieuczciwą, a niestety wciąż się zdarza w branży – domena i hosting powinny od początku być zarejestrowane na firmę klienta, nawet jeśli to wykonawca je konfiguruje.
Umowa powinna też wprost mówić, co się dzieje przy odstąpieniu w trakcie realizacji – np. że zaliczka nie podlega zwrotowi, ale wykonawca przekazuje efekty pracy wykonane do tego momentu proporcjonalnie do zapłaty.
4. Prawa autorskie – kto naprawdę jest właścicielem strony
To jest temat, w którym krąży najwięcej mitów. Klienci często zakładają, że skoro zapłacili za stronę, to „jest ich” w każdym aspekcie. Prawda jest bardziej techniczna:
- Przeniesienie autorskich praw majątkowych do unikalnego kodu, grafiki i układu strony powinno nastąpić dopiero z chwilą zapłaty pełnej kwoty – zapisuję to zawsze jako warunek zawieszający, a nie automat po podpisaniu umowy. Bez tego zapisu klient formalnie nie ma prawa np. przekazać strony innemu wykonawcy do dalszej edycji, nawet jeśli ma dostęp do panelu.
- WordPress, wtyczki open source (np. WooCommerce, Elementor w wersji darmowej) i większość motywów bazowych są na licencji GPL – nikt nie „sprzedaje” do nich praw autorskich, bo są z natury otwarte. Wykonawca może przenieść prawa tylko do tego, co sam stworzył: customowego kodu, unikalnej szaty graficznej, indywidualnie napisanych funkcji.
- Wtyczki premium (np. ACF Pro, płatne wtyczki rezerwacyjne) – umowa powinna precyzować, na czyje konto i czyją licencję są kupowane, bo część freelancerów korzysta z własnych licencji deweloperskich, które po zakończeniu współpracy przestają działać na stronie klienta.
- Treści i zdjęcia – jeśli wykonawca dostarcza zdjęcia z banków (Pexels, Shutterstock), warto zapisać, na jakiej licencji i czy klient może z nich korzystać poza samą stroną (np. w mediach społecznościowych).
Gdy zamawiasz kompleksową stronę internetową, dobra praktyka to jeden paragraf w umowie, który wprost wymienia wszystkie te elementy z osobna – zamiast ogólnego „wykonawca przenosi prawa autorskie”, które w praktyce niewiele znaczy.
5. Liczba poprawek i procedura odbioru
„Nielimitowane poprawki” brzmi świetnie w ofercie i praktycznie zawsze oznacza problem – albo wykonawca zejdzie z marży do zera, próbując dogodzić każdemu kaprysowi, albo w pewnym momencie zacznie odmawiać zmian, tłumacząc się, że to „już nowy zakres”, co rodzi frustrację po stronie klienta. Standard, który stosuję:
- 2 rundy poprawek wliczone w cenę na etapie projektu graficznego i 1–2 rundy na etapie wdrożenia (poprawki techniczne, literówki, drobne zmiany kolorystyki).
- Rozróżnienie poprawki od nowego zakresu – zmiana koloru przycisku to poprawka, dodanie nowej podstrony z kalkulatorem to nowy zakres, wyceniany osobno. Warto to zdefiniować przykładami wprost w umowie.
- Dodatkowe poprawki poza pulą rozliczane godzinowo, zwykle 100–180 zł netto/h w zależności od doświadczenia wykonawcy i regionu.
- Protokół odbioru – pisemne (może być mailowe) potwierdzenie wykonania etapu, z terminem na zgłoszenie uwag (np. 5–7 dni roboczych), po którym brak odpowiedzi = odbiór bez zastrzeżeń. Bez tego zapisu projekt może „wisieć” miesiącami w statusie „prawie gotowe”, bo klient milczy, a wykonawca nie ma podstawy, żeby zażądać ostatniej płatności.
6. Gwarancja, wsparcie powdrożeniowe i RODO
To sekcja, którą klienci pomijają przy czytaniu umowy, a potem najbardziej żałują, że jej nie doczytali.
- Gwarancja na błędy (bugi) – standardowo 12 miesięcy od odbioru, ale obejmuje wyłącznie błędy powstałe z winy wykonawcy (np. formularz nie wysyła maili), a nie zmiany treści, nowe funkcje czy skutki aktualizacji wtyczek wgranych samodzielnie przez klienta. To rozróżnienie musi być w umowie jasno napisane, bo inaczej „gwarancja” staje się w oczach klienta synonimem darmowego wsparcia technicznego na zawsze.
- Wsparcie powdrożeniowe (aktualizacje, drobne zmiany treści, monitoring) to osobna usługa, płatna – warto, żeby umowa od razu wskazywała, czy jest wliczona (np. pierwsze 3 miesiące gratis) i co obejmuje po tym okresie, żeby uniknąć rozmowy „a mogłabyś/mógłbyś szybko coś zmienić” bez końca.
- RODO – jeśli strona ma formularz kontaktowy, newsletter albo sklep, wykonawca w trakcie realizacji (a czasem i po, przy hostingu) ma dostęp do danych osobowych klientów zamawiającego. W takiej sytuacji potrzebna jest osobna umowa powierzenia przetwarzania danych (art. 28 RODO), która określa m.in. cel przetwarzania, obowiązek zgłoszenia naruszenia w ciągu 72 godzin, zasady usunięcia danych po zakończeniu współpracy oraz lokalizację serwerów (w UE lub kraju zapewniającym odpowiedni poziom ochrony). Sama „zgodność z RODO” strony (polityka prywatności, cookies, SSL) to osobny temat od umowy powierzenia – w kompletnej umowie powinny się znaleźć oba elementy.
Potrzebujesz umowy, która faktycznie Cię chroni?
Realizuję projekty dla firm z całej Polski. Bezpłatna wycena — odpowiadam w 24h.
Często zadawane pytania
- Czy umowa ustna albo „na maila” na stronę internetową jest ważna?
- Tak, umowa o dzieło nie wymaga formy pisemnej pod rygorem nieważności – wystarczy zgodne ustalenie warunków, nawet mailowe. Problem w tym, że przy sporze trudniej udowodnić, co dokładnie ustalono (zakres, cenę, termin), dlatego zawsze polecam formę pisemną lub przynajmniej precyzyjne podsumowanie ustaleń w mailu, na który druga strona odpowie „potwierdzam”.
- Kto jest właścicielem strony internetowej po jej wykonaniu?
- Zależy od zapisów umowy. Bez wyraźnego przeniesienia autorskich praw majątkowych klient ma prawo korzystać ze strony w zakresie, w jakim została mu udostępniona (np. na podstawie licencji), ale nie musi to oznaczać pełnych praw do kodu czy grafiki. Domena i konto hostingowe powinny być zarejestrowane na dane klienta od samego początku – to najprostszy sposób, żeby uniknąć sporu o „kto jest właścicielem” w praktyce.
- Ile powinno kosztować wsparcie po gwarancji?
- Rynkowo pojedyncza drobna zmiana (np. podmiana tekstu, zdjęcia) to koszt 50–150 zł, a stały pakiet godzin wsparcia miesięcznego zaczyna się od ok. 200–400 zł za 2–4 godziny. Warto, żeby cennik wsparcia powdrożeniowego był załącznikiem do umowy, a nie ustalany „na bieżąco” po fakcie.
- Co zrobić, gdy wykonawca nie chce oddać kodu lub dostępów do strony?
- Jeśli w umowie jest zapis o przeniesieniu praw i dostępów po pełnej płatności, a mimo to wykonawca odmawia, to pierwszym krokiem jest pisemne (mailowe) wezwanie do wykonania umowy z terminem, a w razie braku reakcji – zgłoszenie sprawy do rzecznika praw konsumenta (dla osób fizycznych) lub skierowanie sprawy na drogę sądową (spór o wykonanie umowy o dzieło). Dlatego tak ważne jest, żeby domena i hosting od początku były zarejestrowane na klienta – wtedy wykonawca nie ma fizycznej możliwości „zatrzymania” strony.