Není žádné tajemství, že plánujeme nový software a zanedlouho ho budeme spouštět. Rozhodl jsem se proto dát dohromady seznam věcí, na které si chci dávat pozor – protože jedním SaaS projektem jsme si už prošli. Tím projektem je Editee, a upřímně si myslím, že jsme se na něm naučili úplně všechno, co dnes umíme.
Když jsme s Editee (dříve se to jmenovalo Deeply.cz) začínali, o SaaS businessu jako takovém jsme se Štěpánem nevěděli vůbec nic. Začali jsme úplně od píky – udělali jsme nějaké MVP, spustili to a povedlo se nám to rozjet, ostatně podnikatelský a marketingový background jsme měli a máme velký, takže předpoklad tam byl 🙂. Za běhu jsme řešili spoustu výzev, u kterých dnes už vím, že bychom takové chyby znovu neudělali. Ale jak se říká, po bitvě je každý generál.
Proto jsem sepsal tento seznam. Je to 14 konkrétních věcí, kterých se chci vyvarovat, na které si chci dávat pozor a které rozhodně nechci zopakovat. Tak pojďme na to.
1. Žádný neomezený tarif a striktní měření nákladů
Tohle je pro nás aktuálně asi nejpalčivější téma. Zrušili jsme v Editee neomezený tarif, protože nám jednoduše přestal dávat smysl.
Když jsme Editee (tehdy ještě Deeply) zakládali, neomezený tarif vypadal logicky. Ceny za jazykové modely a grafické generování nebyly tak markantně vysoké jako teď, výpočetní náročnost byla celkově únosná. Jenže ty ceny od té doby vzrostly u některých modelů padesáti- až stonásobně. Výpočetní výkony, které dnes potřebujeme, jsou nesrovnatelně vyšší, a s nimi i naše náklady. Naoplátku ale za zvýšení náročnosti výpočtů poskytujeme mnohonásobně lepší výstupy, než kdy dříve.
Postupným měřením jsme zjistili, že někteří uživatelé službu používali nadměrně – daleko nad rámec toho, co jsme schopni pokrýt s rozumnou marží. Měli jsme to ošetřené v obchodních podmínkách, kde jsme si vyhradili právo tarif změnit a kde jsme měli definované takzvané fair use policy. Dlouho jsme ho neaplikovali, ale pak jsme museli – protože někteří lidé používali boty, záměrně službu vytěžovali, posílali dokola v chatech stejné prompty a podobně.
Z tisíců uživatelů se jednalo o nižší desítky lidí. Ti ostatní samozřejmě zůstali zcela nedotčení. Ale těch pár desítek problémových zákazníků nám generovalo většinu měsíčních nákladů – zjistili jsme, že zhruba 30–40 lidí reálně spotřebuje více než další tisíce uživatelů dohromady za celý měsíc. Kvůli nim jsme museli mít lepší servery, platit více za výpočetní výkon a celkově nám to neúměrně navyšovalo provozní náklady na úkor ostatních.
Vzpomínám si na podobnou situaci z dob, kdy jsem dělal na projektu wifi poskytování internetu v Rousinovsko.net. Tam jsme měli pár „stahovačů", kteří byli schopni optické připojení extrémně vytížit, platili úplně stejně jako ostatní, ale všem to zpomalovali a celkově ten servis jako takový ničili. Museli jsme aplikovat fair use policy a omezit jim rychlost, samozřejmě se jim to nelíbilo, odešli – a pak se zase vrátili, protože zjistili, že lepší alternativa není.
Poučení je jasné: do žádného dalšího SaaS projektu bych neomezený tarif nedal. Zvláště pokud generování obsahu, výpočty nebo servery vytvářejí variabilní náklady. Garantuji vám, že se vždy najdou lidé, kteří to budou zneužívat. Není to jenom v Česku – je to všude na světě, je to naše povaha. Je to vždy jen otázka času, kdy se to stane.
2. Zabezpečení od prvního dne
Určitě bych už od začátku aplikoval veškeré formy zabezpečení, které máme k dispozici. Nebudu prozrazovat, jak a co konkrétně děláme, jaké logy sledujeme, jaké metriky na pozadí vyhodnocujeme – samozřejmě nechci odkrývat naši bezpečnostní architekturu.
Ale zmíním jeden příklad: stalo se nám, že někdo vytvořil bota, který obešel klasickou Google reCAPTCHA v3 a začal nám během jedné hodiny vytvářet tisíce falešných registrací, čímž zahlcoval naši databázi, zcela záměrně. Upřímně mě osobně nenapadlo, že standardní reCAPTCHA jde takto jednoduše obejít boty – ale jde. Museli jsme celou registraci zabezpečit dalšími mechanismy.
Později jsem kolem toho hledal informace na internetu a zjistil, že historicky je obcházení CAPTCHA systémů poměrně dobře zdokumentovaný problém. Už v roce 2014 výzkumníci z Google ukázali, že jejich vlastní reCAPTCHA systém dokáží algoritmy strojového učení překonat s přesností přes 99 %. Od té doby se to jen zhoršuje – dnes existují celé služby, které řešení CAPTCHA nabízejí jako placenou službu za pár centů za vyřešení. Proto je důležité nespoléhat se na jedinou vrstvu ochrany a mít připravené další mechanismy ověřování.
Takže na tohle si rozhodně dávejte pozor.
3. Ochrana proti DDoS útokům
A pak je samozřejmě třeba přímo brutální zabezpečení proti DDoS útokům. Někteří lidé se prostě nudí, a nám se mnohokrát stalo, že jsme tyto útoky museli mitigovat.
DDoS útoky jsou bohužel stále častější problém – podle zpráv společnosti Cloudflare vzrostl počet DDoS útoků celosvětově v posledních letech o desítky procent ročně a dnes se jedná o jeden z nejběžnějších typů kybernetických hrozeb, kterým čelí prakticky každý online business.
Díky naší strategii, kterou na to máme nachystanou, jsme je mitigovali vždy velmi rychle. Ve většině případů ani nedošlo k výpadku. Jednou se ale stalo, že služba byla nedostupná několik minut, protože z nějakého důvodu – byť jsme útok mitigovali – úplně spadl Linux na load balanceru. Musel jsem ho restartovat, pak to naběhlo. Ale těch DDoS útoků se k nám dostalo celkem hodně a bylo to dost nepříjemné.
4. Striktní testování codebase
Když jsme na začátku prototypovali Editee, moc jsme nic netestovali. Přiznám se, že testování jsem nikdy extrémně moc nedělal – hlavně jsem se s ním nechtěl zdržovat ze začátku.
To byl ale chybný přístup. Dnes novou aplikaci – i všechny další, co budeme dělat – striktně testujeme, a to nejenom backend, ale i frontend. Testy dokáží odhalit, že jste třeba zasáhli do nějaké metody při vývoji nové funkce a rozbili jste tím něco někde jinde. Poznáte to v testech a nemusíte to přehazovat za zákazníky, lovit to v lozích nebo třeba v Sentry monitorování.
Celý koncept automatizovaného testování softwaru se začal prosazovat už na přelomu tisíciletí s nástupem agilních metodik. Dnes je to de facto průmyslový standard – a pokud ho ignorujete, tak jak jsme to dělali my na začátku, dříve nebo později vás to dožene a ten technický dluh budete posléze dohánět.
Určitě testujte, s AI je to jednoduché.
5. Rychlý vývoj MVP a okamžitá produkce
Všechno děláme rychle. I teď tu novou aplikaci prototypujeme, spustíme MVP, otestujeme to, jde to vždy rychle do produkce a dolaďujeme mouchy za běhu. A taky vše vylepšujeme průběžně za běhu.
Určitě nad tím, co děláte, nepřemýšlejte příliš dlouho. Viděl jsem spoustu podnikatelů, kteří vyvíjeli software několik let. Nedávno jsem četl na Facebooku příspěvek jednoho člověka, který napsal, že dal do vývoje SaaS aplikace 5 milionů korun, vyvíjel ji tři roky – a ve výsledku ji spustil, zjistil, že ji nikdo nechce nebo ji neumí prodat, a ten projekt za měsíc zavřel. Tři roky práce, pět milionů korun investice a nulový efekt.
Statistiky to potvrzují – podle dat z CB Insights patří „no market need" (tedy absence poptávky) dlouhodobě mezi nejčastější důvody, proč startupy selhávají. Zhruba 35 % startupů zkrachuje právě proto, že vytvořily produkt, který trh nepotřeboval. A čím déle něco vyvíjíte bez zpětné vazby od reálných uživatelů, tím větší je riziko, že se to stane i vám.
Doporučuji proto rychlý vývoj MVP, dostat produkt co nejrychleji mezi lidi a otestovat, že o něj je zájem. Ti lidé vás posléze sami navedou – posílají feedbacky, říkají, co chtějí předělat, co se jim nelíbí, dávají vám lepší nápady. Některé naše featury jsme udělali čistě na základě poznatků od zákazníků. Ale pozor, vždy vše dobře promyslete, někteří zákazníci by vám rádi předělali celý business model, budou vás o tom přesvědčovat, jak to máte špatně, i když metriky u tisíců zákazníků mluví naprosto proti jejich přesvědčení, to ale oni nevidí.
Proto vždy vyhodnocujte hlavně vy, majitelé firem.
Hlavní je vydělávat peníze. Pokud nebudete vydělávat a budete neustále jen něco ladit, zkrachujete dříve nebo později.
6. Nečekat na návrat peněz – využít high ticket prodej
Tohle vlastně vymyslel Štěpán a funguje to skvěle. Princip je jednoduchý: přes webinář prodávat větší balíček – v našem případě šlo o větší balíček marketingové akademie – a k tomu jako bonus dávat předplatné naší služby zdarma. Tím vlastně generujeme high ticket prodej a díky tomu se nám kompletně vrací peníze investované do reklamy.
Je to důležitý princip, protože pokud čekáte, až se vám peníze z reklamy vrátí čistě přes měsíční předplatné za pár stovek, může to trvat měsíce. Tímto způsobem se vám investice vrátí prakticky okamžitě a máte další cashflow pro škálování.
7. Lepší hiring proces a důkladné prověřování lidí
Tohle je téma, u kterého mám bohužel hodně špatných zkušeností. Občas jsem dal na dobrá slova – a to se vůbec nevyplatilo.
Jeden konkrétní případ: programátor nám tvrdil, že je dobrý, ukázal nám nějakou codebase (ani jsme nevěděli, jestli je vůbec jeho, ale vypadala dobře). Výsledek? Přestal po měsíci, dvou úplně komunikovat, měl dodělat úkol v termínu, který si sám nastavil, a vůbec ho nedodržel. Volali jsme mu, psali jsme mu, dokonce jsem mu posílal datovou schránku zprávu – jenom aby nám dal vědět, co se děje. Nakonec z něho vypadlo, že dělá ještě pro někoho jiného a pravděpodobně vše časově to nezvládl. A posléze kód, co nám odevzdal, byla jedna obrovská katastrofa. Stálo nás to zhruba 150 tisíc korun na mzdách a nedostali jsme vůbec nic. Tu featuru jsme mohli mít hotovou daleko rychleji a levněji.
Další případ: obchodník, který pro nás navolával zákazníky, začal vedle toho prodávat úplně nesouvisející služby – nějaké balíčky na tvorbu webů – a používal k tomu naši marketingovou databázi, kterou jsme mu v dobré víře poskytli. Dozvěděli jsme se to úplně náhodou od jednoho z našich zákazníků, kterému volal a nabízel mu něco za 2 000 eur, co s námi vůbec nesouviselo. Navíc vystupoval pod naším jménem a tvářil se, že tu službu poskytujeme my.
Poučení je jasné: prověřujte si lidi důkladně. Dělejte klidně více kol pohovorů, zadávejte testovací úkoly, ověřujte si, že ten člověk opravdu umí to, co tvrdí. Hlídejte si NDA smlouvy, nahrávejte hovory obchodníků – vždy je to důvěřuj, ale prověřuj. Já rád důvěřuji, ale občas mě lidé zklamou.
A hlavně – pokud vidíte, že někdo nefunguje, vyměňte ho rychle. Čím déle čekáte, tím víc vás to stojí – neodevzdaná práce, promarněný čas, ztracené příležitosti, nedejbože problémy v týmu.
8. Agresivnější marketing a rychlé vypínání nefungujících kreativ
Ruku v ruce se striktním měřením nákladů, jak jsem psal na začátku, bych dělal agresivnější marketing. A hlavně – pokud něco nefunguje, například reklamní kreativy, tak je okamžitě vypínat a nepálit rozpočet.
Stalo se nám, že jsme odjeli na dovolenou nebo se to prostě pár dní moc neřešilo – a mezitím některé kreativy přestaly fungovat. Na Facebooku a Instagramu to musíte hodně obměňovat, protože publikum se rychle „oslepí" vůči stále stejným reklamám. Štěpán tohle dnes dělá velmi agresivně – vypíná reklamy, zapíná nové, a pokud něco nekonvertuje nebo jsou čísla špatná, jde to okamžitě pryč.
Samozřejmě to platí i obráceně – pokud něco funguje a dává smysl, tak škálovat a navyšovat rozpočet. Ale to je téma na samostatný článek.
9. Větší důraz na SEO a optimalizaci pro jazykové modely
Chtěl bych se více zaměřit na SEO – ideálně bych měl dedikovaný tým nebo alespoň nastavené AI agenty, kteří by se o to starali průběžně. Já na to nemám úplně prostor, ale snažím se průběžně kolem toho něco dělat, a i to, co jsem zatím udělal, nám přináší docela dost zákazníků. Díky SEO jsme poměrně dobře viditelní.
A pak je tu relativně nová oblast – SEO pro jazykové modely, takzvané LLM SEO/AEO atd. Jde o optimalizaci obsahu tak, aby se váš produkt nebo značka objevovaly v odpovědích AI chatbotů jako ChatGPT, Claude, Gemini a dalších. Tento trend nabírá na síle, protože stále více lidí hledá informace přímo přes AI namísto klasického vyhledávání v Google. Určitě se tomu chci věnovat více času, než jsem tomu věnoval dosud.
10. Lepší time management a plánování na kvartály
Další důležitá věc je plánování features, úkolů a celkové práce – a to ideálně na týdny, kvartály, případně i na půl roku dopředu, i pro celý tým. Bez toho si totiž každý dělá, co chce, a vzniká chaos.
Samozřejmě u vývoje software to není vždy jednoduché. I já sám vím, že jsem dal nějaký termín a pak mi to o týden ujelo, protože jsem nedomyslel nějaké návaznosti nebo mě po cestě napadlo něco dalšího, co bylo potřeba dodělat či předělat. S příchodem AI nástrojů pro vývoj je to dnes o něco lepší, ale stále to není stoprocentně predikovatelné.
Přesto je dobré ten plán mít. Lidé, kteří pro vás pracují, potřebují vědět, kam se směřuje a co se bude dělat. A mně osobně to taky pomáhá – když si něco rozplánuji na menší kroky, je mnohem snazší začít. Když mám před sebou jeden velký celek, dokáže mě to i trochu demotivovat. Ale když to rozsekám na malé díly, řeknu si, čím začít, a jakmile se do toho dostanu, už pokračuji bez problémů. Myslím, že tenhle problém má hodně lidí.
11. Důslednější kontrola karet a zamezení zneužívání trialu
Pokud nabízíte trial (zkušební verzi) – ať už pětidenní, sedmidenní nebo jakýkoli jiný typ – určitě si ho zabezpečte tak, aby ho lidé nemohli opakovaně zneužívat.
Na platformě Stripe se dá ukládat takzvaný fingerprint karty, díky čemuž nemůže být stejná karta použita vícekrát. My to máme nastavené tak, že pokud někdo kartu použije znovu na trial, automaticky se i nový účet zablokuje a trial už aktivovat nejde.
Dříve jsme v tomhle byli hodně benevolentní – a zjistili jsme, že třeba jeden uživatel měl desítky až stovku účtů s podobnými e-maily, používal na to stejnou kartu a opakovaně využíval náš trial. Tím vlastně službu používal neustále zdarma. Jakmile jsme našli ten pattern a zabezpečili to, problém zmizel.
Zneužívání trialů je v SaaS světě poměrně běžný problém. Podle odhadů z branže až 10–15 % registrací na bezplatné zkušební verze může pocházet od uživatelů, kteří se opakovaně registrují jen proto, aby nemuseli platit. Proto je důležité mít od začátku zavedené mechanismy, které tomuto chování zamezí.
12. Nepodnikat v Česku – používat Merchant of Record v zahraničí
Tohle je možná kontroverzní téma, ale za mě je to jednoznačné: pro nové firmy bych podnikání v Česku nedoporučil, zejména pokud děláte digitální produkt s celosvětovou působností.
Za prvé – neustále se všechno mění a tím myslím zákony a postupy. Za druhé – neskutečná byrokracie ze strany úřadů. Neustálé kontroly, neustálé dotazování ze strany správce daně. A to i přesto, že máme všechno v pořádku, účetní to dělá poctivě. Ale ta byrokracie je ve srovnání třeba s Amerikou naprosto šílená a neúměrná.
Legislativa k DPH je složitá, daňový systém se neustále mění, daně se mění – je to všechno brutálně komplikované. I můj táta, co podniká ve stavebnictví říká, že je to na úřadech čím dál horší a složitější, rok od roku.
Proto na nové firmy doporučuji používat takzvaný Merchant of Record (MoR). V podstatě nyní budeme všechno točit přes americkou entitu a platební brána za nás bude handlovat veškeré daňové povinnosti – DPH, digitální daně a podobně. Konzultoval jsem to s naším právníkem a ten říkal, abychom si dávali pozor na zákon o digitální dani – mohlo by se tvrdit, že místo plnění je v České republice nebo v EU, a na základě toho by bylo potřeba odvádět DPH v daném státě. S Merchant of Record je tohle legislativně ošetřené.
Merchant of Record nám navíc vyřeší problémy s daněmi celosvětově, nejen v Americe, ale i v Austrálii, Kanadě a dalších zemích.
A ještě jeden bonus amerického podnikání: máme kreditní kartu s 1,5% neomezeným cashbackem. Když měsíčně utracíme miliony za reklamy, tak 1,5 % zpět v čistém cashi není zanedbatelná částka. V Česku mi nabízeli kreditku se „slevou 500 kč do Datartu" – to je upřímně úplně k ničemu. V Americe tenhle systém cashbacků funguje výborně a ty peníze můžete reinvestovat do produktu, zaplatit letenky, leasing na auto – cokoli.
13. Pay yourself first – zaplať si jako první
Tohle je naše zlaté pravidlo: pay yourself first. Zaplaťte si jako první, jinak jako zakladatelé ztratíte postupně motivaci.
Všechno funguje lépe, když vidíte, že firma je profitabilní a můžete si platit. Tím žijete, tím vás to žene dopředu. Kolikrát vidím podnikatele, kteří začínají a třeba dva nebo tři roky si neplatí skoro žádnou mzdu – a pak se to odrazí na psychickém zdraví, prostě na všem. Úspory jdou pryč, peníze nemají, nemůžou fungovat, nemůžou zaplatit ani základní potřeby.
Ano, smyslem podnikání je vytvářet přidanou hodnotu pro zákazníky, najít jim pain point a vyřešit ho. Ale druhá strana mince je, že to děláte i pro zisk – a ideálně lepší, než kdybyste byli zaměstnaní. Pokud ty peníze z toho nemáte a pálíte je na nákladech, zaměstnancích a všem možném okolo, tak ten smysl podnikání mizí. Buď zkrachujete, vyhoříte, nebo vás to přestane bavit – a to se odrazí na produktu i na všem ostatním.
My od začátku děláme strategii pay yourself first a je to úplně skvělá věc. Samozřejmě to vyžaduje, abyste celý business táhli do zisku tak, aby to fungovalo dlouhodobě. Ale pokud peníze z podnikání mít nebudete, ztratíte motivaci a dostanete se do začarovaného kruhu.
14. Nezdržovat se marginálními věcmi a delegovat
Poslední bod, ale rozhodně ne nejméně důležitý. Mnohdy jsem řešil marginální věci, které jsem mohl delegovat – na virtuální asistentku, na support, na jiné programátory, nebo si prostě za pár korun najmout někoho na Fiverru.
Kolikrát jsem zjistil, že za pár stovek na Fiverru vyřeším problém, který bych jinak řešil extrémně dlouho. Takže marginální věci delegujte, pokud to jde, vy řešte jen ty důležité – ty, které vás i podnikání posouvají dál.
Já vím, že jako podnikatel na začátku musíte řešit všechno – účetnictví, marketing, prodej, milion dalších věcí. Ale postupně se snažte ty nejpalčivější témata delegovat pryč.
Se Štěpánem jsme si na začátku řekli, co koho nebaví dělat, a tomu jsme se rovnou vyhnuli. Já jsem mu řekl, že nemám rád zákaznickou podporu a vyvolávání se zákazníky. Takže zákaznická podpora ode mě šla prakticky celá pryč hned ze startu. Já řeším jen to, co zbyde a co nevyřeší nikdo jiný – a i to se snažím postupně přehazovat na kolegy.
Nechci tím v žádném případě říci, že je zákazník pro mě marginální – rozhodně není a vždycky musí dostat odpověď a musí být spokojený. Když něco nefunguje, chce vrátit peníze, nebo mu nejde zaplatit, tak se to samozřejmě musí vyřešit. Ale nemyslím si, že u tisíců zákazníků to musím řešit já osobně. Moje starost je kontrolovat lidi, kteří tohle řeší, aby to dělali svědomitě a dobře.
Když máte větší firmu a více lidí, nemůžete dělat všechno. Nemůžete programovat, dělat marketing, řešit support – nemůžete být holka pro všechno, protože pak děláte všechno a vlastně ve výsledku vůbec nic.
Konkrétní příklad: Štěpán dříve manuálně dělal různé reporty – vytahoval data z účtů, počítal, kolik utrácíme za co. Zabíralo mu to spoustu času. Teď to dělá virtuální asistentka, která si za to vezme pár stovek a ušetří nám hodiny času, které můžeme věnovat věcem, které nás skutečně posouvají dál.
A když jsem slyšel záznamy našich obchodníků, jak mluví se zákazníky – jak perfektně to dělají, jak krásně s nimi komunikují, jak je vidět, že je to baví – tak vím, že takovou práci bych nikdy neodvedl tak dobře jako oni. Protože mě by to tolik nebavilo. Já zase vím, že mě baví programování, dlouhodobější plánování a rozvoj firmy. A na to jsem dobrý. Jak jsem se se Štěpánem domluvil – já budu kódovat, budu dělat produkt a budu dělat věci, které mě baví a to stejné on - marketing. Je to skvělé, perfektně se navzájem doplňujeme. Ostatní věci delegujeme.
V podnikání si proto vyberte tu věc, ve které jste dobří a která vás baví. A to, co vás nebaví, na čem pohoříte nebo co budete zanedbávat – to delegujte. Vím, že i když je to občas otázka peněz, jde to řešit přes virtuální asistentky a podobné služby. Mnoho věcí udělají levně a ušetří vám čas právě na to podstatné.
Co říci na závěr?
Tohle jsou všechny věci, které jsem chtěl zmínit a kterých se chci vyvarovat v našem dalším businessu. Sepsal jsem si je jednak pro sebe jako připomínku, a jednak je sdílím tady na blogu, protože vám to třeba někdy pomůže – ať už stavíte SaaS software nebo jakékoli jiné podnikání.
Pokud bych to měl shrnout do jedné věty: měřte náklady, zabezpečte všechno od prvního dne, testujte kód, buďte rychlí, plaťte si jako první a delegujte, co můžete. A hlavně – neopakujte chyby, které už udělal někdo před vámi.
