<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/">
	<channel>
		<title>How Long Does It Take to Build an App? | Infinum</title>
		<atom:link href="https://infinum.com/blog/how-long-does-it-take-to-build-an-app/feed/" rel="self" type="application/rss+xml" />
		<link>https://infinum.com/blog/how-long-does-it-take-to-build-an-app/</link>
		<description>Building digital products</description>
		<lastBuildDate>Tue, 21 Apr 2026 13:38:02 +0000</lastBuildDate>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>

					<item>
				<image>
					<url>7930https://infinum.com/uploads/2017/02/how-long-does-it-take-to-build-an-app-0.webp</url>
				</image>
				<title>How Long Does It Take to Build an App?</title>
				<link>https://infinum.com/blog/how-long-does-it-take-to-build-an-app/</link>
				<pubDate>Tue, 12 Jan 2016 00:01:00 +0000</pubDate>
				<dc:creator>Goran Kovačević</dc:creator>
				<guid isPermaLink="false">https://infinum.com/the-capsized-eight/how-long-does-it-take-to-build-an-app/</guid>
				<description>
					<![CDATA[<p>The question we get asked more than anything else is &#8211; how much is building this project going to take?</p>
<p>The post <a href="https://infinum.com/blog/how-long-does-it-take-to-build-an-app/">How Long Does It Take to Build an App?</a> appeared first on <a href="https://infinum.com">Infinum</a>.</p>
]]>
				</description>
				<content:encoded>
					<![CDATA[<div
	class="wrapper"
	data-id="es-297"
	 data-animation-target='inner-items'>
		
			<div class="wrapper__inner">
			<div class="block-blog-content js-block-blog-content">
	
<div class="block-blog-content-sidebar" data-id="es-92">
	</div>

<div class="block-blog-content-main">
	
<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-95"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-93">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-94'
	>
	Along with <a href="https://infinum.com/blog/how-much-does-it-cost-to-build-an-app/">how much it costs</a>, the question we get most of the time is – how much is building this project going to take?</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-98"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-96">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-97'
	>
	We thought that the best way to show it is to use an app we built as an example. We’ll use an app called <strong>Scannr</strong>. Since it’s something we built in-house, we’re free to publicly present the exact numbers and stats behind it.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-101"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-99">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-100'
	>
	What is Scannr?</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-104"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-102">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-103'
	>
	Scannr is an app that uses the phone’s camera to scan the barcode on the back of a <strong>US or Canadian driver’s license</strong>. By using proprietary <a href="https://microblink.com/">image recognition technology</a>, information from the barcode is decoded into a human-readable form and presented in a snazzy UI.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-107"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-105"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-106">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2017/02/how-long-does-it-take-to-build-an-app-1.webp"
					class="image__img block-media__image-img"
					alt=""
										height="728"
															width="346"
										loading="lazy"
					 />
					</picture>

			<figcaption class="image__figcaption block-media__image-figcaption">
			Scannr enables you to <strong>scan your driver’s license information</strong> with your iPhone.		</figcaption>
	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-110"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-108">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-109'
	>
	Bouncer mode</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-113"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-111">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-112'
	>
	Why would I use an app for reading the info from a driver’s license when I can read it myself? There are multiple use cases, but one specific one (that’s supported in the app) is the Bouncer mode.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-116"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-114">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-115'
	>
	You know how people can’t enter clubs and drink alcohol in the US until they’re 21? With the Bouncer mode, you set an age limit in the app and filter these customers accordingly.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-119"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-117">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-118'
	>
	Bouncers scan IDs on the entrance of a club, and get visual cues if the would be patron is above a certain age limit.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-122"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-120"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-121">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2017/02/how-long-does-it-take-to-build-an-app-2.webp"
					class="image__img block-media__image-img"
					alt=""
										height="547"
															width="443"
										loading="lazy"
					 />
					</picture>

			<figcaption class="image__figcaption block-media__image-figcaption">
			Bouncer mode shows if the person meets the age criteria.		</figcaption>
	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-125"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-123">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-124'
	>
	The app can also <strong>detect expired licenses</strong> and gather anonymized stats (i.e. you can see how many girls and guys entered the nightclub that night).</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-128"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-126"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-127">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2017/02/how-long-does-it-take-to-build-an-app-3.webp"
					class="image__img block-media__image-img"
					alt=""
										height="296"
															width="548"
										loading="lazy"
					 />
					</picture>

			<figcaption class="image__figcaption block-media__image-figcaption">
			I’m sorry McLovin, I truly am…		</figcaption>
	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-131"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-129">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-130'
	>
	<em>Disclaimer: The numbers and statistics shown below serve only as an example for the time needed to develop Scannr app. It doesn’t apply to other applications. Every project is stand-alone project and the estimations can vary from 100 to unlimited number, depending on the scope, functionalities, integrations etc.</em></p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-134"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-132">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-133'
	>
	The process</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-137"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-135">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-136'
	>
	Scannr may not look like it has a lot of screens and a diverse UI, and that’s on purpose. We wanted to build a very simple app that does one thing good. Nevertheless, we had to go through an elaborate process before getting the final product out there.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-140"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-138">
	<h4	class='typography typography--size-24-text js-typography block-heading__heading'
	data-id='es-139'
	>
	<strong>1. Brand</strong></h4></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-143"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-141">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-142'
	>
	At the beginning of the project, Scannr had no name and no visual identity. The first step was figuring a good name, after that it was defining a basic visual identity. We&nbsp;needed some time to get the creative juices flowing, make a bunch of sketches and when we were happy with the result, transferred them to the screen with the help of graphic design tools.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-146"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-144">
	<h4	class='typography typography--size-24-text js-typography block-heading__heading'
	data-id='es-145'
	>
	<strong>2. Wireframes</strong></h4></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-149"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-147">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-148'
	>
	Wireframes define two important things:</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-152"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="lists" data-id="es-150">
	<ul	class='typography typography--size-16-text-roman js-typography lists__typography'
	data-id='es-151'
	>
	<li><strong>The scope of the project</strong> – what are all the things we’re trying to do</li><li><strong>The user experience</strong> – how will the user perform the tasks in the most intuitive and fastest way possible</li></ul></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-155"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-153">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-154'
	>
	They are sketches, ‘black &amp; white’ representations of what the app will look like; where the buttons are going to be, what information each screen will provide and so on.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-158"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-156"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-157">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2017/02/how-long-does-it-take-to-build-an-app-4.webp"
					class="image__img block-media__image-img"
					alt=""
										height="533"
															width="996"
										loading="lazy"
					 />
					</picture>

			<figcaption class="image__figcaption block-media__image-figcaption">
			Scannr wireframes in works…		</figcaption>
	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-161"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-159">
	<h4	class='typography typography--size-24-text js-typography block-heading__heading'
	data-id='es-160'
	>
	<strong>3. App design</strong></h4></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-164"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-162">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-163'
	>
	After we agree on the wireframes and the branding, the final phase is applying the brand visuals to the user experience flow we created earlier giving us a new and beautiful design.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-167"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-165"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-166">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2017/02/how-long-does-it-take-to-build-an-app-5.webp"
					class="image__img block-media__image-img"
					alt=""
										height="287"
															width="700"
										loading="lazy"
					 />
					</picture>

			<figcaption class="image__figcaption block-media__image-figcaption">
			UI design for the app		</figcaption>
	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-170"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-168">
	<h4	class='typography typography--size-24-text js-typography block-heading__heading'
	data-id='es-169'
	>
	4. Development</h4></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-173"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-171">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-172'
	>
	After designers are finished with their part of the project, it’s time for <strong>software engineers</strong> to step in. They have to work their magic and create the software engine that runs all those pretty screens in a meaningful way. Development always takes much longer than design. We’ll show you the actual difference in a bit.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-176"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-174">
	<h4	class='typography typography--size-24-text js-typography block-heading__heading'
	data-id='es-175'
	>
	<strong>5. Marketing website</strong></h4></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-179"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-177">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-178'
	>
	In order to promote the app, we also decided to <a href="http://scannrapp.com/">build a simple one-pager website</a>. We needed to create the look of this website, mimicking the look and feel of the app itself. After designing it, we needed to do a small amount of HTML and CSS frontend coding to bring it to life.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-182"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-180">
	<h4	class='typography typography--size-24-text js-typography block-heading__heading'
	data-id='es-181'
	>
	6. Testing</h4></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-185"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-183">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-184'
	>
	Our <strong>quality assurance team</strong> had to test both the app and the website to minimize the chances of users encountering problems. This covers testing on different devices, different browsers and (in our case) – different drivers licenses.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-188"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-186">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-187'
	>
	So, how much time?</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-191"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-189">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-190'
	>
	Finally, here are the numbers I promised! To be as precise as I can be, we have spent <strong>269.17 hours</strong> on designing, developing and testing the app and the website.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-194"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-192">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-193'
	>
	More precisely, it took us:</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-199"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="blockquote block-blockquote__blockquote" data-id="es-195">
	
	<div class="blockquote__content">
		<i
	class="icon blockquote__icon icon--size-16 icon--scale-100"
	 aria-hidden='true' data-name='blockquote-24' data-id='es-196'>
	<svg fill='none' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path clip-rule='evenodd' d='m12 24c6.6274 0 12-5.3726 12-12 0-2.79685-.9568-5.37021-2.561-7.41062-.581.22951-1.0832.60583-1.5069 1.12898-.5132.60844-.7698 1.41969-.7698 2.43375v.07605h2.5789v5.59004h-5.6197v-5.01962c0-1.11547.154-2.06616.4619-2.85205.3336-.81125.757-1.48307 1.2702-2.01545.528-.52161 1.1175-.92155 1.7687-1.1998-2.0728-1.70651-4.7279-2.73128-7.6223-2.73128-6.62742 0-12 5.37258-12 12 0 6.6274 5.37258 12 12 12zm-3.53811-18.05347c-.30793.78589-.46189 1.73658-.46189 2.85205v5.01962h5.6197v-5.59004h-2.5789v-.07605c0-1.01406.2566-1.82531.7698-2.43375.5389-.63379 1.1804-1.05209 1.9245-1.2549v-2.28164c-.7441.07605-1.4626.25351-2.1555.53238-.6928.27887-1.3086.68449-1.84752 1.21688-.51321.53238-.9366 1.2042-1.27019 2.01545z' fill='currentColor' fill-rule='evenodd'/></svg></i><p	class='typography typography--size-36-text js-typography blockquote__quote'
	data-id='es-197'
	>
	96.93 hours to design app and microsite 131 hours to develop an iOS app 28.67 hours to develop a microsite 12.57 hours to test everything</p>
		<div class="blockquote__caption-wrap">
					</div>
	</div>
</div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-202"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-200">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-201'
	>
	You can see the pie chart representing these rations below.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-205"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-203"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-204">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2017/02/how-long-does-it-take-to-build-an-app-6.webp"
					class="image__img block-media__image-img"
					alt=""
										height="440"
															width="700"
										loading="lazy"
					 />
					</picture>

			<figcaption class="image__figcaption block-media__image-figcaption">
			Pie chart of the tracked time		</figcaption>
	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-208"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-206">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-207'
	>
	But where am I getting these numbers? We use <a href="https://productive.io">Productive</a> to <strong>track time and profit</strong> (and many other things) for each project that we work on.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-211"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-209">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-210'
	>
	I need to point out that we used <a href="https://microblink.com/blinkid">Microblink’s</a> proprietary scanning technology, and the time needed to develop this is not included here.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-214"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-212">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-213'
	>
	We also didn’t track time for <strong>project management</strong>, which we usually do for the client projects. Project management time typically adds up to <strong>around 15-20%</strong> of the entire time spent on a project.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-217"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-215"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-216">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2017/02/how-long-does-it-take-to-build-an-app-7.webp"
					class="image__img block-media__image-img"
					alt=""
										height="389"
															width="876"
										loading="lazy"
					 />
					</picture>

			<figcaption class="image__figcaption block-media__image-figcaption">
			Deal in Productive shows exact time spent on each service used for Scannr project		</figcaption>
	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-220"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-218">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-219'
	>
	Breaking down the data</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-223"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-221">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-222'
	>
	When people put in some work, they track the time on the corresponding project (<strong>Scannr</strong>) and the service (<strong>Design</strong>, <strong>Development</strong> and <strong>Testing</strong> in our case).</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-226"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-224">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-225'
	>
	We can filter this information <strong>by days</strong>, and it looks like this.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-229"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-227"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-228">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2017/02/how-long-does-it-take-to-build-an-app-8.webp"
					class="image__img block-media__image-img"
					alt=""
										height="643"
															width="869"
										loading="lazy"
					 />
					</picture>

			<figcaption class="image__figcaption block-media__image-figcaption">
			Filter by days and clocked time per person		</figcaption>
	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-232"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-230">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-231'
	>
	We can also filter the results to show stats <strong>for each person</strong> who worked on the project. For each person we can see the total time put into the project, as well as their relative contribution indicated by a percentage.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-235"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-233"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-234">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2017/02/how-long-does-it-take-to-build-an-app-9.webp"
					class="image__img block-media__image-img"
					alt=""
										height="268"
															width="605"
										loading="lazy"
					 />
					</picture>

			<figcaption class="image__figcaption block-media__image-figcaption">
			Top 5 contributors to Scannr (by time)		</figcaption>
	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-238"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-236">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-237'
	>
	What if we wanted more granular data?</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-241"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-239">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-240'
	>
	If we wanted to breakdown the time more precisely, instead of just tracking time against two services – <strong>design</strong> and <strong>development</strong>, we could have created several more. In that case, we would have:</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-244"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="lists" data-id="es-242">
	<ul	class='typography typography--size-16-text-roman js-typography lists__typography'
	data-id='es-243'
	>
	<li>Wireframing</li><li>App design</li><li>Web design</li><li>iOS development</li><li>Web development</li><li>QA (testing)</li></ul></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-247"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-245">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-246'
	>
	Since this was an in-house project, it wasn’t necessary to go down that path.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-250"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-248">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-249'
	>
	What about other apps we’ve built?</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-253"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-251">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-252'
	>
	By using <a href="https://productive.io">Productive</a> and over 500 projects behind us, we can give our new clients more or less accurate estimates on how long it will take to build their digital products.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-256"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-254">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-255'
	>
	These estimates mostly depend on whether the app is part of a larger ecosystem, or if it’s a standalone app like Scannr. Integration with third party systems, web services and other features typically increase the complexity of the project more than anything else.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-259"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-257">
	<h3	class='typography typography--size-36-text js-typography block-heading__heading'
	data-id='es-258'
	>
	How about building the same app for different platforms?</h3></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-262"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-260">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-261'
	>
	Another question is how does building an app for two platforms (iOS and Android) affect the time as opposed to building it only for one platform?</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-265"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-263">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-264'
	>
	Well, Android development usually takes around <strong>30 percent</strong> more time than iOS development. If you want to know why, please check out our article on this topic and find out <a href="https://infinum.com/blog/android-development-is-30-percent-more-expensive-than-ios/">why building Android apps takes 30% more time</a>.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-268"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-266">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-267'
	>
	Design vs. development ratio</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-271"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-269">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-270'
	>
	These numbers indicate that the <strong>ratio between design and development is close to 1:2</strong>. In other words, we used almost twice as much time to develop the app and marketing website than to design them.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-274"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-272">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-273'
	>
	Keep in mind that, in this case, we did the mini-branding, wireframes and both mobile and web design in the process. When working with clients, we usually already have a visual identity, so the ratio between time required for design and development is closer to 1:3.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-277"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-275">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-276'
	>
	These number obviously can’t be extrapolated from one project, but nonetheless are pretty much consistent to what we see across the board with other projects.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-280"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-278">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-279'
	>
	Keeping both hands on the wheel</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-283"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-281">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-282'
	>
	Productive helps us run the company overall – starting from the sales phase, and then over to the project management and delivery phases. It helps us know how far we are from the chequered flag. The Scannr app is a good example of how we keep track the project’s progress.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-286"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-284">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-285'
	>
	But the more important question is – <strong>what does this mean for our clients?</strong></p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-289"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-287">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-288'
	>
	We believe that the most important thing in managing a project is <strong>good communication</strong>. These statistics don’t tell the whole story, but they provide a core narrative around which we can shape the communication with our clients.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-292"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-290">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-291'
	>
	Additionally, by using <a href="https://productive.io/">Productive</a>, clients can, <strong>in realtime</strong>, track the progress of their projects, but more importantly, <strong>their budgets</strong>. No matter where we are and how far we want to go, the client is at the steering wheel.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-295"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-293">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-294'
	>
	We are here to <strong>design, build</strong> and give our <strong>maximum support</strong> by providing accurate information and expert advice.</p></div>	</div>
</div>
</div>		</div>
	</div><p>The post <a href="https://infinum.com/blog/how-long-does-it-take-to-build-an-app/">How Long Does It Take to Build an App?</a> appeared first on <a href="https://infinum.com">Infinum</a>.</p>
]]>
				</content:encoded>
			</item>
		
	</channel>
</rss>