[{"data":1,"prerenderedAt":586},["ShallowReactive",2],{"navigation-en":3,"uslugi-slug-en-discovery-workshop":87,"language-switcher-\u002Fen\u002Fservices\u002Fdiscovery-workshop":581},{"services":4,"industries":48,"caseStudies":69},[5,10,14,19,23,27,31,35,39,43],{"slug":6,"navLabel":7,"navGroup":8,"heroHeadline":9},"web-applications","Web applications","build","A web application built around your process",{"slug":11,"navLabel":12,"navGroup":8,"heroHeadline":13},"erp-systems","ERP systems","An ERP system built for your company, not the other way round",{"slug":15,"navLabel":16,"navGroup":17,"heroHeadline":18},"integrations-and-api","Integrations and APIs","improve","Your systems stop being islands",{"slug":20,"navLabel":21,"navGroup":17,"heroHeadline":22},"ai-implementation","AI implementation","AI deployed where it actually saves time",{"slug":24,"navLabel":25,"navGroup":17,"heroHeadline":26},"process-automation","Process automation","Work no one should be doing by hand",{"slug":28,"navLabel":29,"navGroup":8,"heroHeadline":30},"websites","Websites","A site that loads instantly and brings in inquiries",{"slug":32,"navLabel":33,"navGroup":8,"heroHeadline":34},"mobile-applications","Mobile applications","One codebase, both platforms",{"slug":36,"navLabel":37,"navGroup":17,"heroHeadline":38},"code-audit-and-project-takeover","Code audit and takeover","The project stalled. We'll take it over and tell you the truth about its condition",{"slug":40,"navLabel":41,"navGroup":17,"heroHeadline":42},"maintenance-and-support","Maintenance and support","A system needs someone watching it after launch",{"slug":44,"navLabel":45,"navGroup":46,"heroHeadline":47},"discovery-workshop","Discovery workshop","start","Before you decide to build, find out exactly what you're building",[49,53,57,61,65],{"slug":50,"navLabel":51,"heroHeadline":52},"manufacturing","Manufacturing","The works order reaches the floor as a printout from an email",{"slug":54,"navLabel":55,"heroHeadline":56},"automotive","Automotive","The customer exists in three places at once",{"slug":58,"navLabel":59,"heroHeadline":60},"industrial-automation","Industrial automation","You sell competence that doesn't photograph",{"slug":62,"navLabel":63,"heroHeadline":64},"e-commerce","E-commerce","The shop works. What sits behind it comes apart",{"slug":66,"navLabel":67,"heroHeadline":68},"logistics","Transport and logistics","The job arrives by email, the status comes back by phone",[70,77,82],{"slug":71,"client":72,"tag":73,"year":74,"summary":75,"image":76},"dss-by-caredo","Caredo","Product",2025,"We build the whole DSS product together with the Caredo team — from the CRM and planner to the software behind the key lockers and totems.","\u002Fimg\u002Fcase-studies\u002Fdss\u002Fkluczykomat\u002Fframe_0169.webp",{"slug":78,"client":72,"tag":79,"year":74,"summary":80,"image":81},"dss-by-caredo-website","Product website","We built the DSS product website end to end — from design to launch — on Caredo's visual identity.","\u002Fimg\u002Fscreenshots\u002Fdss-desktop.jpg",{"slug":83,"client":83,"tag":84,"year":74,"summary":85,"image":86},"2motion","Brand and website","A whole brand from scratch — logo, colours, business cards — a company website and blog posts that position 2motion in search.","\u002Fimg\u002Fscreenshots\u002F2motion-desktop.jpg",{"service":88,"relatedCase":200,"relatedPosts":276,"i18nSlugs":578,"subServices":580},{"id":89,"title":90,"audience":91,"body":95,"description":124,"extension":125,"faq":126,"heroHeadline":47,"heroSubline":139,"keyword":140,"meta":141,"navGroup":46,"navLabel":45,"navigation":142,"order":143,"path":144,"pricingModels":145,"process":152,"relatedCase":83,"relatedPosts":169,"scope":171,"seo":187,"sitemap":188,"slug":44,"stem":198,"__hash__":199},"servicesEn\u002Fservices\u002Fdiscovery-workshop.md","Discovery workshop and MVP estimate",[92,93,94],"Companies facing an investment decision, needing a real scope and budget","Startups ahead of their first funding round, where an investor wants an execution plan","Teams that got three quotes an order of magnitude apart and don't know why",{"type":96,"value":97,"toc":117},"minimark",[98,103,107,110,114],[99,100,102],"h2",{"id":101},"why-three-quotes-differ-by-an-order-of-magnitude","Why three quotes differ by an order of magnitude",[104,105,106],"p",{},"Because they answer three different questions. One vendor quoted exactly what they were told. Another added everything they thought would be needed. A third quoted low, banking on change orders later.",[104,108,109],{},"None of these quotes is comparable to the others until a shared description of the scope exists. The workshop creates that description — and only then does comparing quotes make sense.",[99,111,113],{"id":112},"what-you-get-at-the-end","What you get at the end",[104,115,116],{},"A document of a dozen or so pages: a process map, the scope of the first rollout, a list of things deliberately deferred, an architecture sketch, risks, a timeline and a quote with its assumptions. Plus a clickable prototype of the most important screen.",{"title":118,"searchDepth":119,"depth":119,"links":120},"",3,[121,123],{"id":101,"depth":122,"text":102},2,{"id":112,"depth":122,"text":113},"A paid workshop that leaves you with a scope, timeline and quote — whether or not we end up building it together.","md",[127,130,133,136],{"q":128,"a":129},"Why is the workshop paid?","Because it's work, not a sales pitch. The output is yours, and you can take it to any vendor — including one that isn't us. A free quote is free because it's a guess, and its cost is baked into the project anyway.",{"q":131,"a":132},"What if I decide not to build after the workshop?","That's a good outcome. Better to spend a modest amount finding out a project doesn't make sense than several hundred thousand finding out a year in. The document stays with you.",{"q":134,"a":135},"Who should take part?","A business decision-maker, someone who knows the process operationally, and — if there is one — a technical person. Three to five people. Beyond that, the workshop turns into a general meeting.",{"q":137,"a":138},"Is the quote binding?","The quote is binding for the scope described in the document, under the assumptions written into it. If the scope changes, the amount changes — but you'll know exactly which line item and by how much.","A free quote based on a one-hour call is a guess wrapped in a PDF. A discovery workshop gives you a number you can defend.","application cost estimate",{},true,10,"\u002Fservices\u002Fdiscovery-workshop",[146,149],{"name":147,"body":148},"Fixed-price workshop","From PLN 9k net, depending on scale. You know the amount before you start.",{"name":150,"body":151},"Credited toward the build","If you decide to build with us, the workshop cost is deducted from the first project invoice.",[153,157,161,165],{"step":154,"duration":155,"body":156},"Preparation","3 days","We gather materials, confirm participants, and send questions to think about before the session.",{"step":158,"duration":159,"body":160},"Workshops","1–2 weeks","Sessions of 2–3 hours. Shorter than all-day marathons nobody remembers afterwards.",{"step":162,"duration":163,"body":164},"Write-up","1 week","We write the document, sketch the prototype, and work out the quote.",{"step":166,"duration":167,"body":168},"Handover","1 meeting","We walk through the document and answer questions. The material stays with you.",[170],"ile-kosztuje-aplikacja-webowa",[172,175,178,181,184],{"title":173,"body":174},"Workshop sessions","Two to four sessions with decision-makers and with the people who'll actually use the system. The latter usually know more.",{"title":176,"body":177},"Process map and scope","A description of the current and target state, with a clear line between the first rollout and later phases.",{"title":179,"body":180},"Architecture sketch","How it should be built, what it integrates with, and which technical risks are already visible.",{"title":182,"body":183},"Timeline and quote","Stages with dates and amounts, along with the assumptions they rest on. Change an assumption and the number changes — and you know by how much.",{"title":185,"body":186},"Prototype of the key screen","A clickable mockup of the most important view, so the conversation has something concrete to focus on.",{"title":90,"description":124},{"loc":189,"alternatives":190},"\u002Fen\u002Fservices\u002Fdiscovery-workshop",[191,194,196],{"hreflang":192,"href":193},"x-default","\u002Fuslugi\u002Fwarsztat-discovery",{"hreflang":195,"href":193},"pl-PL",{"hreflang":197,"href":189},"en-US","services\u002Fdiscovery-workshop","Uru7kYiWr0XPyN3uLNbAiknhzJotuqrRwO8HiprogSs",{"id":201,"title":202,"body":203,"challenge":237,"client":83,"description":238,"extension":125,"features":239,"meta":245,"navigation":142,"order":119,"path":246,"relatedServices":247,"results":248,"screenshotDesktop":86,"screenshotMobile":257,"seo":258,"sequence":259,"sitemap":260,"slug":83,"solution":267,"stack":268,"stem":272,"summary":85,"tag":84,"url":273,"usedBy":274,"year":74,"__hash__":275},"caseStudiesEn\u002Fcase-studies\u002F2motion.md","2motion — the whole brand, website and blog for industrial automation",{"type":96,"value":204,"toc":232},[205,209,212,215,219,222,225,229],[99,206,208],{"id":207},"starting-point","Starting point",[104,210,211],{},"An engineering company has a harder job than a shop: it sells expertise, not a product you can photograph. The site has to convince a technical visitor within seconds that there are people on the other end who know what they're doing.",[104,213,214],{},"On top of that: the client often opens the site on a phone, on the shop floor, on a poor connection.",[99,216,218],{"id":217},"what-we-did","What we did",[104,220,221],{},"The brand first: the logo, the colour palette and business cards — 2motion started without an identity, so the website had nothing to stand on. Then a statically generated site where the HTML is ready before anyone arrives. Every subpage is prerendered, images are served in modern formats, and JavaScript only ships where it's actually needed.",[104,223,224],{},"The content architecture was decided before the visual design: we first established which subpage answers which query, so they wouldn't compete against each other in search results. Each of the six services has its own page, and the blog posts we co-write with 2motion answer the questions their clients arrive with from search — from palletising to integrating robots into an existing line.",[99,226,228],{"id":227},"what-we-learned","What we learned",[104,230,231],{},"On a brand site, the decision with the biggest impact on the outcome isn't visible in the design — it's how much content actually gets written. A layout for eight paragraphs and a layout for two are two different projects, and that number is only known once someone sits down to write.",{"title":118,"searchDepth":119,"depth":119,"links":233},[234,235,236],{"id":207,"depth":122,"text":208},{"id":217,"depth":122,"text":218},{"id":227,"depth":122,"text":228},"A company in industrial automation sells expertise that can't be shown in a product photo. The site needed to build technical credibility, work flawlessly on a phone on a client's shop floor, and rank for industry-specific search terms.","We created 2motion's whole brand — logo, colours, business cards — built its website and co-write the blog posts that build its search visibility.",[240,241,242,243,244],"A visual identity from scratch — logo, colours, business cards","A company website with a page for each of six services","A blog with co-written posts aimed at industry search terms","Technical SEO — structured data, sitemap, canonical URLs","Static generation and image optimisation",{},"\u002Fcase-studies\u002F2motion",[28],[249,252,254],{"metric":250,"label":251},"6","Service pages, each for its own search term",{"metric":250,"label":253},"Blog posts co-written for SEO",{"metric":255,"label":256},"\u003C1.2 s","Time to first render","\u002Fimg\u002Fscreenshots\u002F2motion-mobile.jpg",{"title":202,"description":238},null,{"loc":261,"alternatives":262},"\u002Fen\u002Fcase-studies\u002F2motion",[263,265,266],{"hreflang":192,"href":264},"\u002Frealizacje\u002F2motion",{"hreflang":195,"href":264},{"hreflang":197,"href":261},"We created the brand from the ground up: the logo, the colour palette and business cards, and on top of them a statically generated website with a page for every service. Together with 2motion we co-write blog posts that answer their clients' questions and build visibility for industry terms.",[269,270,271],"TypeScript","Nuxt","Vercel","case-studies\u002F2motion","https:\u002F\u002F2motion.pl",[],"P9NX81zWImOQJrUEvem3RidKuJSGHm2UlrA5z02USqc",[277],{"id":278,"title":279,"author":280,"body":281,"category":561,"date":562,"description":563,"draft":564,"editorialNote":259,"extension":125,"image":565,"meta":566,"navigation":142,"path":567,"rawbody":568,"seo":569,"sitemap":570,"stem":571,"tags":572,"translationKey":576,"updated":259,"__hash__":577},"blogEn\u002Fblog\u002File-kosztuje-aplikacja-webowa.md","How much does a dedicated web application cost in 2026","zespol",{"type":96,"value":282,"toc":552},[283,295,298,302,369,372,376,379,413,417,423,429,435,441,447,453,459,463,466,492,496,507,510,514,520,526,532,538,542,549],[104,284,285,286,290,291,294],{},"A dedicated web application for a company costs, in Poland, anywhere from around ",[287,288,289],"strong",{},"PLN 60,000 net"," for a simple internal system to ",[287,292,293],{},"PLN 400,000 and up"," for a platform with multiple roles, integrations and a client portal. That spread isn't vendor indecision — it's that very different projects, differing by an order of magnitude in effort, hide under the same label.",[104,296,297],{},"Below I break those numbers down and show exactly what pushes a quote up.",[99,299,301],{"id":300},"price-ranges-by-project-type","Price ranges by project type",[303,304,305,321],"table",{},[306,307,308],"thead",{},[309,310,311,315,318],"tr",{},[312,313,314],"th",{},"Project type",[312,316,317],{},"Net range",[312,319,320],{},"Time to production",[322,323,324,336,347,358],"tbody",{},[309,325,326,330,333],{},[327,328,329],"td",{},"Internal tool, one process, one role",[327,331,332],{},"PLN 60–90k",[327,334,335],{},"3–4 months",[309,337,338,341,344],{},[327,339,340],{},"B2B system with a client portal and several roles",[327,342,343],{},"PLN 120–220k",[327,345,346],{},"5–8 months",[309,348,349,352,355],{},[327,350,351],{},"SaaS platform with subscriptions and multi-tenancy",[327,353,354],{},"PLN 250–400k",[327,356,357],{},"8–14 months",[309,359,360,363,366],{},[327,361,362],{},"Extending an existing system",[327,364,365],{},"PLN 15–60k per module",[327,367,368],{},"3–10 weeks",[104,370,371],{},"These are ranges for a Polish vendor with a senior team, at PLN 160–260 per hour. Offers significantly lower usually mean one of three things: a less experienced team, an underestimated scope, or a model where the gap gets made up in change orders.",[99,373,375],{"id":374},"where-the-money-actually-goes","Where the money actually goes",[104,377,378],{},"The cost breakdown for a typical mid-sized project looks like this:",[380,381,382,389,395,401,407],"ul",{},[383,384,385,388],"li",{},[287,386,387],{},"Analysis and design — 15–20%."," Workshops, the data model, the prototype. The stage where it's easiest to save money and most expensive to have saved it.",[383,390,391,394],{},[287,392,393],{},"Backend and business logic — 35–40%."," Rules, permissions, integrations, performance.",[383,396,397,400],{},[287,398,399],{},"Interface — 25–30%."," The more roles and views, the more it costs. The admin panel is sometimes bigger than the client-facing part.",[383,402,403,406],{},[287,404,405],{},"Testing and rollout — 10–15%."," Environments, release automation, data migration.",[383,408,409,412],{},[287,410,411],{},"Buffer for the unknown — 10%."," Every project has one. Vendors who don't budget for it make it up in change orders instead.",[99,414,416],{"id":415},"seven-things-that-double-a-quote","Seven things that double a quote",[104,418,419,422],{},[287,420,421],{},"1. Integrations with systems that have no API."," Connecting to a well-documented API takes a few days. Connecting to a system that only offers a file export or direct database access takes weeks — and it's a debt that comes back with every update on that system's side.",[104,424,425,428],{},[287,426,427],{},"2. Migrating data from an inconsistent source."," If a spreadsheet has the same company appearing as \"Smith Ltd\", \"Smith Ltd.\" and \"SMITH LTD\", someone has to resolve that. There's usually more of it than it looks.",[104,430,431,434],{},[287,432,433],{},"3. Offline-first work."," An app that has to work with no connection and sync afterwards needs a local database, an operation queue and conflict-resolution rules. That can turn out to be a third of the whole project.",[104,436,437,440],{},[287,438,439],{},"4. Multilingual support bolted on later."," Adding a second language to a system that wasn't built for it costs several times more than planning for it from the start.",[104,442,443,446],{},[287,444,445],{},"5. A complex permissions model."," The gap between \"admin and user\" and a permissions matrix per module, per field and per branch is weeks of work and a standing cost on every feature after that.",[104,448,449,452],{},[287,450,451],{},"6. Compliance requirements."," Baseline GDPR is cheap. A requirement to audit every data change, retention rules and on-demand anonymisation is a module of its own.",[104,454,455,458],{},[287,456,457],{},"7. An open-ended scope."," The single biggest factor. A project where the scope gets settled along the way ends up costing, in practice, 1.5–2x a project with the same scope described up front.",[99,460,462],{"id":461},"what-a-quote-usually-doesnt-include","What a quote usually doesn't include",[104,464,465],{},"Vendors quote the cost of the build. You still need to budget for:",[380,467,468,474,480,486],{},[383,469,470,473],{},[287,471,472],{},"Maintenance"," — realistically 15–20% of the project's value per year. Monitoring, security updates, small fixes.",[383,475,476,479],{},[287,477,478],{},"Infrastructure"," — from a few hundred zloty a month for a simple system to several thousand at higher traffic.",[383,481,482,485],{},[287,483,484],{},"Content and photography"," — negligible for internal systems, potentially a significant line item for products with a public-facing part.",[383,487,488,491],{},[287,489,490],{},"Your team's time"," — workshops, acceptance testing, decisions. A few to a dozen hours a week across the whole project. It's a real cost, just not one that shows up on an invoice.",[99,493,495],{"id":494},"how-to-check-whether-a-quote-is-fair","How to check whether a quote is fair",[104,497,498,499,502,503,506],{},"Ask for a breakdown by stage with amounts, and a list of assumptions. A fair quote states not just what's in scope, but also ",[287,500,501],{},"what isn't",", and ",[287,504,505],{},"what happens to the price if an assumption doesn't hold",".",[104,508,509],{},"If you get a single number with no breakdown, you have no way to compare it to another single number. Three offers differing by an order of magnitude almost always mean each of them priced something different.",[99,511,513],{"id":512},"how-to-lower-the-cost-without-lowering-quality","How to lower the cost without lowering quality",[104,515,516,519],{},[287,517,518],{},"Narrow the first rollout to a single process."," A system that handles one process end to end delivers value from day one. A system half-handling five processes delivers none.",[104,521,522,525],{},[287,523,524],{},"Skip configurability you don't need yet."," \"We want to be able to change this later without a developer\" is usually the most expensive sentence in the whole spec.",[104,527,528,531],{},[287,529,530],{},"Use off-the-shelf components where you're not building an advantage."," Authentication, payments, email delivery, search — good components already exist, and writing them from scratch is a cost with no return.",[104,533,534,537],{},[287,535,536],{},"Pay for a workshop before building."," A dozen or so thousand spent closing the scope pays for itself many times over, because it removes the main cause of budget overruns.",[99,539,541],{"id":540},"summary","Summary",[104,543,544,545,548],{},"If you need one number to open a conversation with the board: ",[287,546,547],{},"an internal system handling one process is around PLN 80,000 net and four months",". Everything above that depends on the number of roles, integrations, and how well the scope is described — not on how many screens the app has.",[104,550,551],{},"If you want a number you can defend to the board, you need a workshop on your own data and your own process. That's the only way a quote stops being a guess.",{"title":118,"searchDepth":119,"depth":119,"links":553},[554,555,556,557,558,559,560],{"id":300,"depth":122,"text":301},{"id":374,"depth":122,"text":375},{"id":415,"depth":122,"text":416},{"id":461,"depth":122,"text":462},{"id":494,"depth":122,"text":495},{"id":512,"depth":122,"text":513},{"id":540,"depth":122,"text":541},"aplikacje-webowe","2026-09-02","Real price ranges for web applications, a cost breakdown by stage, and the factors that can double a quote. No \"it depends\" without an explanation.",false,"\u002Fimg\u002Fblog\u002File-kosztuje-aplikacja-webowa.jpg",{},"\u002Fblog\u002File-kosztuje-aplikacja-webowa","---\ntitle: How much does a dedicated web application cost in 2026\ndescription: Real price ranges for web applications, a cost breakdown by stage, and the factors that can double a quote. No \"it depends\" without an explanation.\ndate: 2026-09-02\ncategory: aplikacje-webowe\ntags:\n  - pricing\n  - budget\n  - mvp\nauthor: zespol\nimage: \u002Fimg\u002Fblog\u002File-kosztuje-aplikacja-webowa.jpg\ntranslationKey: cost-of-a-web-application\ndraft: false\n---\n\nA dedicated web application for a company costs, in Poland, anywhere from around **PLN 60,000 net** for a simple internal system to **PLN 400,000 and up** for a platform with multiple roles, integrations and a client portal. That spread isn't vendor indecision — it's that very different projects, differing by an order of magnitude in effort, hide under the same label.\n\nBelow I break those numbers down and show exactly what pushes a quote up.\n\n## Price ranges by project type\n\n| Project type | Net range | Time to production |\n|---|---|---|\n| Internal tool, one process, one role | PLN 60–90k | 3–4 months |\n| B2B system with a client portal and several roles | PLN 120–220k | 5–8 months |\n| SaaS platform with subscriptions and multi-tenancy | PLN 250–400k | 8–14 months |\n| Extending an existing system | PLN 15–60k per module | 3–10 weeks |\n\nThese are ranges for a Polish vendor with a senior team, at PLN 160–260 per hour. Offers significantly lower usually mean one of three things: a less experienced team, an underestimated scope, or a model where the gap gets made up in change orders.\n\n## Where the money actually goes\n\nThe cost breakdown for a typical mid-sized project looks like this:\n\n- **Analysis and design — 15–20%.** Workshops, the data model, the prototype. The stage where it's easiest to save money and most expensive to have saved it.\n- **Backend and business logic — 35–40%.** Rules, permissions, integrations, performance.\n- **Interface — 25–30%.** The more roles and views, the more it costs. The admin panel is sometimes bigger than the client-facing part.\n- **Testing and rollout — 10–15%.** Environments, release automation, data migration.\n- **Buffer for the unknown — 10%.** Every project has one. Vendors who don't budget for it make it up in change orders instead.\n\n## Seven things that double a quote\n\n**1. Integrations with systems that have no API.** Connecting to a well-documented API takes a few days. Connecting to a system that only offers a file export or direct database access takes weeks — and it's a debt that comes back with every update on that system's side.\n\n**2. Migrating data from an inconsistent source.** If a spreadsheet has the same company appearing as \"Smith Ltd\", \"Smith Ltd.\" and \"SMITH LTD\", someone has to resolve that. There's usually more of it than it looks.\n\n**3. Offline-first work.** An app that has to work with no connection and sync afterwards needs a local database, an operation queue and conflict-resolution rules. That can turn out to be a third of the whole project.\n\n**4. Multilingual support bolted on later.** Adding a second language to a system that wasn't built for it costs several times more than planning for it from the start.\n\n**5. A complex permissions model.** The gap between \"admin and user\" and a permissions matrix per module, per field and per branch is weeks of work and a standing cost on every feature after that.\n\n**6. Compliance requirements.** Baseline GDPR is cheap. A requirement to audit every data change, retention rules and on-demand anonymisation is a module of its own.\n\n**7. An open-ended scope.** The single biggest factor. A project where the scope gets settled along the way ends up costing, in practice, 1.5–2x a project with the same scope described up front.\n\n## What a quote usually doesn't include\n\nVendors quote the cost of the build. You still need to budget for:\n\n- **Maintenance** — realistically 15–20% of the project's value per year. Monitoring, security updates, small fixes.\n- **Infrastructure** — from a few hundred zloty a month for a simple system to several thousand at higher traffic.\n- **Content and photography** — negligible for internal systems, potentially a significant line item for products with a public-facing part.\n- **Your team's time** — workshops, acceptance testing, decisions. A few to a dozen hours a week across the whole project. It's a real cost, just not one that shows up on an invoice.\n\n## How to check whether a quote is fair\n\nAsk for a breakdown by stage with amounts, and a list of assumptions. A fair quote states not just what's in scope, but also **what isn't**, and **what happens to the price if an assumption doesn't hold**.\n\nIf you get a single number with no breakdown, you have no way to compare it to another single number. Three offers differing by an order of magnitude almost always mean each of them priced something different.\n\n## How to lower the cost without lowering quality\n\n**Narrow the first rollout to a single process.** A system that handles one process end to end delivers value from day one. A system half-handling five processes delivers none.\n\n**Skip configurability you don't need yet.** \"We want to be able to change this later without a developer\" is usually the most expensive sentence in the whole spec.\n\n**Use off-the-shelf components where you're not building an advantage.** Authentication, payments, email delivery, search — good components already exist, and writing them from scratch is a cost with no return.\n\n**Pay for a workshop before building.** A dozen or so thousand spent closing the scope pays for itself many times over, because it removes the main cause of budget overruns.\n\n## Summary\n\nIf you need one number to open a conversation with the board: **an internal system handling one process is around PLN 80,000 net and four months**. Everything above that depends on the number of roles, integrations, and how well the scope is described — not on how many screens the app has.\n\nIf you want a number you can defend to the board, you need a workshop on your own data and your own process. That's the only way a quote stops being a guess.\n",{"title":279,"description":563},{"loc":567},"blog\u002File-kosztuje-aplikacja-webowa",[573,574,575],"pricing","budget","mvp","cost-of-a-web-application","jhCI0ZJN6yMJqQD2Jbr2XiEVwicPPV8synd3rKHAvg4",{"pl":579,"en":44},"warsztat-discovery",[],[582],{"code":583,"label":584,"name":585,"to":193},"pl","PL","Polish",1790522544900]