[{"data":1,"prerenderedAt":645},["ShallowReactive",2],{"navigation-en":3,"uslugi-slug-en-mobile-applications":87,"language-switcher-\u002Fen\u002Fservices\u002Fmobile-applications":640},{"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":192,"relatedPosts":268,"i18nSlugs":570,"subServices":572},{"id":89,"title":90,"audience":91,"body":95,"description":116,"extension":117,"faq":118,"heroHeadline":34,"heroSubline":131,"keyword":132,"meta":133,"navGroup":8,"navLabel":33,"navigation":134,"order":135,"path":136,"pricingModels":137,"process":144,"relatedCase":83,"relatedPosts":161,"scope":163,"seo":179,"sitemap":180,"slug":32,"stem":190,"__hash__":191},"servicesEn\u002Fservices\u002Fmobile-applications.md","Mobile applications for business",[92,93,94],"Companies that need an app for field staff","Products with an existing backend that need a mobile channel","Teams whose separate iOS and Android versions have drifted apart feature-wise",{"type":96,"value":97,"toc":110},"minimark",[98,103,107],[99,100,102],"h2",{"id":101},"offline-is-harder-than-it-looks","Offline is harder than it looks",[104,105,106],"p",{},"An app for a warehouse worker or field technician runs in places where signal disappears. That means a local database, an operation queue, and rules for resolving conflicts when the same record changed in two places.",[104,108,109],{},"This part of the project is sometimes bigger than the entire interface, and it's easy to leave out of a quote. We ask about it in the first meeting.",{"title":111,"searchDepth":112,"depth":112,"links":113},"",3,[114],{"id":101,"depth":115,"text":102},2,"We build mobile apps in React Native and Flutter — one codebase, iOS and Android, faster time to launch and cheaper maintenance.","md",[119,122,125,128],{"q":120,"a":121},"React Native or Flutter?","If you have a web team working in React, React Native lets them co-build the app and share some logic. Flutter gives a more predictable look across both platforms and handles heavy animation better. We give a recommendation once we know your team, because maintenance lasts longer than the build.",{"q":123,"a":124},"Do I need separate native versions?","Rarely. They're justified by performance requirements, deep hardware access, or system integrations a cross-platform layer doesn't cover. We'll tell you if your case is one of them.",{"q":126,"a":127},"How much does a mobile app cost?","An app for field staff with offline work is usually PLN 90–250k net. A simple client for an existing API can be cheaper. On top of that: annual Apple and Google developer account fees.",{"q":129,"a":130},"Who publishes the app in the stores?","We publish under your own accounts, so ownership of the app and its analytics stay on your side. We set them up together with you at the start of the project.","Separate native apps make sense for games and heavy graphics. For a business application, they double the cost and slow down every release.","mobile applications for business",{},true,7,"\u002Fservices\u002Fmobile-applications",[138,141],{"name":139,"body":140},"Fixed price after prototype","Scope is known once the mockup exists, so we can give an amount and a deadline.",{"name":142,"body":143},"Time & material","For products whose shape will keep changing with market feedback.",[145,149,153,157],{"step":146,"duration":147,"body":148},"Scope and technology choice","1 week","What it needs to do, what it runs on, what has to work offline.",{"step":150,"duration":151,"body":152},"Interface prototype","2 weeks","A clickable mockup on-device, tested by the people who'll actually use it.",{"step":154,"duration":155,"body":156},"Build","10–20 weeks","Iterations, with versions available through a test channel.",{"step":158,"duration":159,"body":160},"Launch and growth","ongoing","Release, crash monitoring, further versions.",[162],"ile-kosztuje-aplikacja-webowa",[164,167,170,173,176],{"title":165,"body":166},"React Native or Flutter application","The technology choice depends on the project, not our preferences — it's decided by the existing stack, library availability, and who will maintain the code.",{"title":168,"body":169},"Offline-first work","A field app has to work with no signal and sync once it's back online. This is the part of the project most often underestimated.",{"title":171,"body":172},"Device integration","Camera, barcode scanner, GPS, push notifications, biometrics.",{"title":174,"body":175},"App store publishing","We run the process in the App Store and Google Play, including rejections and appeals.",{"title":177,"body":178},"Releases and telemetry","Test channels, crash reporting and usage statistics from the first version onward.",{"title":90,"description":116},{"loc":181,"alternatives":182},"\u002Fen\u002Fservices\u002Fmobile-applications",[183,186,188],{"hreflang":184,"href":185},"x-default","\u002Fuslugi\u002Faplikacje-mobilne",{"hreflang":187,"href":185},"pl-PL",{"hreflang":189,"href":181},"en-US","services\u002Fmobile-applications","vmVbp-gW_e1l-VhWd2VwdXl6lGqV0yPsMi2eyYKqf7M",{"id":193,"title":194,"body":195,"challenge":229,"client":83,"description":230,"extension":117,"features":231,"meta":237,"navigation":134,"order":112,"path":238,"relatedServices":239,"results":240,"screenshotDesktop":86,"screenshotMobile":249,"seo":250,"sequence":251,"sitemap":252,"slug":83,"solution":259,"stack":260,"stem":264,"summary":85,"tag":84,"url":265,"usedBy":266,"year":74,"__hash__":267},"caseStudiesEn\u002Fcase-studies\u002F2motion.md","2motion — the whole brand, website and blog for industrial automation",{"type":96,"value":196,"toc":224},[197,201,204,207,211,214,217,221],[99,198,200],{"id":199},"starting-point","Starting point",[104,202,203],{},"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,205,206],{},"On top of that: the client often opens the site on a phone, on the shop floor, on a poor connection.",[99,208,210],{"id":209},"what-we-did","What we did",[104,212,213],{},"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,215,216],{},"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,218,220],{"id":219},"what-we-learned","What we learned",[104,222,223],{},"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":111,"searchDepth":112,"depth":112,"links":225},[226,227,228],{"id":199,"depth":115,"text":200},{"id":209,"depth":115,"text":210},{"id":219,"depth":115,"text":220},"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.",[232,233,234,235,236],"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],[241,244,246],{"metric":242,"label":243},"6","Service pages, each for its own search term",{"metric":242,"label":245},"Blog posts co-written for SEO",{"metric":247,"label":248},"\u003C1.2 s","Time to first render","\u002Fimg\u002Fscreenshots\u002F2motion-mobile.jpg",{"title":194,"description":230},null,{"loc":253,"alternatives":254},"\u002Fen\u002Fcase-studies\u002F2motion",[255,257,258],{"hreflang":184,"href":256},"\u002Frealizacje\u002F2motion",{"hreflang":187,"href":256},{"hreflang":189,"href":253},"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.",[261,262,263],"TypeScript","Nuxt","Vercel","case-studies\u002F2motion","https:\u002F\u002F2motion.pl",[],"P9NX81zWImOQJrUEvem3RidKuJSGHm2UlrA5z02USqc",[269],{"id":270,"title":271,"author":272,"body":273,"category":553,"date":554,"description":555,"draft":556,"editorialNote":251,"extension":117,"image":557,"meta":558,"navigation":134,"path":559,"rawbody":560,"seo":561,"sitemap":562,"stem":563,"tags":564,"translationKey":568,"updated":251,"__hash__":569},"blogEn\u002Fblog\u002File-kosztuje-aplikacja-webowa.md","How much does a dedicated web application cost in 2026","zespol",{"type":96,"value":274,"toc":544},[275,287,290,294,361,364,368,371,405,409,415,421,427,433,439,445,451,455,458,484,488,499,502,506,512,518,524,530,534,541],[104,276,277,278,282,283,286],{},"A dedicated web application for a company costs, in Poland, anywhere from around ",[279,280,281],"strong",{},"PLN 60,000 net"," for a simple internal system to ",[279,284,285],{},"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,288,289],{},"Below I break those numbers down and show exactly what pushes a quote up.",[99,291,293],{"id":292},"price-ranges-by-project-type","Price ranges by project type",[295,296,297,313],"table",{},[298,299,300],"thead",{},[301,302,303,307,310],"tr",{},[304,305,306],"th",{},"Project type",[304,308,309],{},"Net range",[304,311,312],{},"Time to production",[314,315,316,328,339,350],"tbody",{},[301,317,318,322,325],{},[319,320,321],"td",{},"Internal tool, one process, one role",[319,323,324],{},"PLN 60–90k",[319,326,327],{},"3–4 months",[301,329,330,333,336],{},[319,331,332],{},"B2B system with a client portal and several roles",[319,334,335],{},"PLN 120–220k",[319,337,338],{},"5–8 months",[301,340,341,344,347],{},[319,342,343],{},"SaaS platform with subscriptions and multi-tenancy",[319,345,346],{},"PLN 250–400k",[319,348,349],{},"8–14 months",[301,351,352,355,358],{},[319,353,354],{},"Extending an existing system",[319,356,357],{},"PLN 15–60k per module",[319,359,360],{},"3–10 weeks",[104,362,363],{},"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,365,367],{"id":366},"where-the-money-actually-goes","Where the money actually goes",[104,369,370],{},"The cost breakdown for a typical mid-sized project looks like this:",[372,373,374,381,387,393,399],"ul",{},[375,376,377,380],"li",{},[279,378,379],{},"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.",[375,382,383,386],{},[279,384,385],{},"Backend and business logic — 35–40%."," Rules, permissions, integrations, performance.",[375,388,389,392],{},[279,390,391],{},"Interface — 25–30%."," The more roles and views, the more it costs. The admin panel is sometimes bigger than the client-facing part.",[375,394,395,398],{},[279,396,397],{},"Testing and rollout — 10–15%."," Environments, release automation, data migration.",[375,400,401,404],{},[279,402,403],{},"Buffer for the unknown — 10%."," Every project has one. Vendors who don't budget for it make it up in change orders instead.",[99,406,408],{"id":407},"seven-things-that-double-a-quote","Seven things that double a quote",[104,410,411,414],{},[279,412,413],{},"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,416,417,420],{},[279,418,419],{},"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,422,423,426],{},[279,424,425],{},"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,428,429,432],{},[279,430,431],{},"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,434,435,438],{},[279,436,437],{},"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,440,441,444],{},[279,442,443],{},"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,446,447,450],{},[279,448,449],{},"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,452,454],{"id":453},"what-a-quote-usually-doesnt-include","What a quote usually doesn't include",[104,456,457],{},"Vendors quote the cost of the build. You still need to budget for:",[372,459,460,466,472,478],{},[375,461,462,465],{},[279,463,464],{},"Maintenance"," — realistically 15–20% of the project's value per year. Monitoring, security updates, small fixes.",[375,467,468,471],{},[279,469,470],{},"Infrastructure"," — from a few hundred zloty a month for a simple system to several thousand at higher traffic.",[375,473,474,477],{},[279,475,476],{},"Content and photography"," — negligible for internal systems, potentially a significant line item for products with a public-facing part.",[375,479,480,483],{},[279,481,482],{},"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,485,487],{"id":486},"how-to-check-whether-a-quote-is-fair","How to check whether a quote is fair",[104,489,490,491,494,495,498],{},"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 ",[279,492,493],{},"what isn't",", and ",[279,496,497],{},"what happens to the price if an assumption doesn't hold",".",[104,500,501],{},"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,503,505],{"id":504},"how-to-lower-the-cost-without-lowering-quality","How to lower the cost without lowering quality",[104,507,508,511],{},[279,509,510],{},"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,513,514,517],{},[279,515,516],{},"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,519,520,523],{},[279,521,522],{},"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,525,526,529],{},[279,527,528],{},"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,531,533],{"id":532},"summary","Summary",[104,535,536,537,540],{},"If you need one number to open a conversation with the board: ",[279,538,539],{},"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,542,543],{},"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":111,"searchDepth":112,"depth":112,"links":545},[546,547,548,549,550,551,552],{"id":292,"depth":115,"text":293},{"id":366,"depth":115,"text":367},{"id":407,"depth":115,"text":408},{"id":453,"depth":115,"text":454},{"id":486,"depth":115,"text":487},{"id":504,"depth":115,"text":505},{"id":532,"depth":115,"text":533},"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":271,"description":555},{"loc":559},"blog\u002File-kosztuje-aplikacja-webowa",[565,566,567],"pricing","budget","mvp","cost-of-a-web-application","jhCI0ZJN6yMJqQD2Jbr2XiEVwicPPV8synd3rKHAvg4",{"pl":571,"en":32},"aplikacje-mobilne",[573],{"id":574,"title":575,"audience":576,"body":580,"description":600,"extension":117,"faq":601,"heroHeadline":611,"heroSubline":612,"keyword":575,"meta":613,"navigation":134,"order":614,"parent":32,"path":615,"relatedCase":251,"scope":616,"seo":629,"sitemap":630,"slug":637,"stem":638,"__hash__":639},"subServicesEn\u002Fservices\u002Fmobile-applications\u002Freact-native-apps.md","React Native applications",[577,578,579],"Companies needing an app for staff in the field","Products with an existing backend that lack a mobile channel","Teams whose separate iOS and Android versions have drifted apart",{"type":96,"value":581,"toc":596},[582,586,589,593],[99,583,585],{"id":584},"why-react-native-rather-than-flutter","Why React Native rather than Flutter",[104,587,588],{},"We use both and the choice depends on the project. React Native wins when the\nteam already knows TypeScript and React, or when the app shares logic with a web\ncodebase. Flutter can be better for an extensive, consistent custom interface.\nThat is a decision for the workshop, not a preference held in advance.",[99,590,592],{"id":591},"where-we-start","Where we start",[104,594,595],{},"By checking the backend. The most common cause of delay in mobile projects\nisn't the app but an API built for a browser that copes with neither a weak\nconnection nor offline work.",{"title":111,"searchDepth":112,"depth":112,"links":597},[598,599],{"id":584,"depth":115,"text":585},{"id":591,"depth":115,"text":592},"One codebase for iOS and Android, with native pieces where they are needed. When React Native is the right call and when we advise against it.",[602,605,608],{"q":603,"a":604},"When do you advise against React Native?","With heavy graphics, intensive image or audio processing, and where the app depends on freshly released system features. In those cases a native implementation is simply the right choice, and we say so.",{"q":606,"a":607},"Will it be slower than a native app?","For a business application, not in a way a user notices. The difference shows up in complex animation and in screens holding a great deal of data, and those are specific things we check in the workshop.",{"q":609,"a":610},"Can you take over an existing app?","Yes, starting with an audit of the code and the release process. With mobile there is one more thing to check: access to the store developer accounts, without which no update can be shipped.","One codebase, two platforms, one team","Separate native apps make sense for games and heavy graphics. For a business application they double the cost and halve the pace of change — and the user doesn't notice the difference.",{},16,"\u002Fservices\u002Fmobile-applications\u002Freact-native-apps",[617,620,623,626],{"title":618,"body":619},"Shared logic, native finish","One implementation of the process, with platform differences where users genuinely expect them — navigation, notifications, permissions. The app should look native on both systems.",{"title":621,"body":622},"Working offline","Local storage and syncing once the connection returns. With staff in the field this isn't an extra but the condition for anyone using it.",{"title":624,"body":625},"Releases and updates","Publishing to both stores, versioning and a test channel for your team. We settle the release process at the start, because it decides the pace of every later change.",{"title":627,"body":628},"Integration with your backend","A mobile app is almost never standalone. If the API isn't ready for mobile traffic we say so before quoting, because that is usually more work than the screens.",{"title":575,"description":600},{"loc":631,"alternatives":632},"\u002Fen\u002Fservices\u002Fmobile-applications\u002Freact-native-apps",[633,635,636],{"hreflang":184,"href":634},"\u002Fuslugi\u002Faplikacje-mobilne\u002Faplikacje-react-native",{"hreflang":187,"href":634},{"hreflang":189,"href":631},"react-native-apps","services\u002Fmobile-applications\u002Freact-native-apps","u6dg0lkF5M5jIS9aYmXSe4CVW170-i3cffvu9BqmCUc",[641],{"code":642,"label":643,"name":644,"to":185},"pl","PL","Polish",1790522544384]