<?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>Author at Infinum</title>
		<atom:link href="https://infinum.com/blog/author/ban-markovic/feed/" rel="self" type="application/rss+xml" />
		<link></link>
		<description>Building digital products</description>
		<lastBuildDate>Fri, 10 Apr 2026 14:51:20 +0000</lastBuildDate>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>

					<item>
				<image>
					<url>8076https://infinum.com/uploads/2021/05/deep-linking-firebase-branchio-0.webp</url>
				</image>
				<title>Firebase Dynamic Links or Branch.io for Deep Linking?</title>
				<link>https://infinum.com/blog/deep-linking-firebase-branchio/</link>
				<pubDate>Wed, 26 May 2021 14:00:00 +0000</pubDate>
				<dc:creator>Ban Marković</dc:creator>
				<guid isPermaLink="false">https://infinum.com/the-capsized-eight/deep-linking-firebase-branchio/</guid>
				<description>
					<![CDATA[<p>Make sure your newly acquired app user doesn&#8217;t wander off in the wrong direction.</p>
<p>The post <a href="https://infinum.com/blog/deep-linking-firebase-branchio/">Firebase Dynamic Links or Branch.io for Deep Linking?</a> appeared first on <a href="https://infinum.com">Infinum</a>.</p>
]]>
				</description>
				<content:encoded>
					<![CDATA[<div
	class="wrapper"
	data-id="es-192"
	 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'
	>
	<strong>Firebase Dynamic Links</strong> is a robust solution for deep linking that enhances user experience in mobile applications. In our exploration, we delve into the features and advantages of Firebase Dynamic Links, providing insights into how it facilitates seamless navigation and engagement within your app ecosystem. Discover how Firebase Dynamic Links stacks up against<strong> Branch.io</strong> to make an informed decision for optimal deep linking in your <a href="https://infinum.com/mobile-web-apps/">mobile app strategy</a>.</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'
	>
	Each month, more than <a href="https://www.statista.com/statistics/1020956/android-app-releases-worldwide/">100k new apps are uploaded to Google Play</a> and <a href="https://42matters.com/ios-apple-app-store-statistics-and-trends">some 30k to the App Store</a>. In such a competitive market, attracting users is no easy feat, which is where online advertising comes into play.</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-paragraph" data-id="es-99">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-100'
	>
	A typical ad for promoting an app could showcase a particular product available in the app. However, the app must be installed first to get to that product. The problem occurs when the user is not immediately taken to the specific product page they expected to see.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-104"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-102">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-103'
	>
	First impressions count</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-107"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-105">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-106'
	>
	Take the Philips Kitchen+ mobile app, for example. The app is full of recipes for the Airfryer appliance. These recipes available inside are used in advertising to attract new users.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-110"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-108">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-109'
	>
	Let’s say a user saw an ad with the recipe for chicken taquitos and decided to click on it. Naturally, they expect to land on that chicken taquitos recipe immediately after installation.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-113"
	 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-111"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-112">
	<picture class="image__picture block-media__image-picture">
								
			<source
				srcset=https://infinum.com/uploads/2021/05/deep-linking-firebase-branchio-1-1400x839.webp				media='(max-width: 699px)'
				type=image/webp								height="839"
												width="1400"
				 />
												<img
					src="https://infinum.com/uploads/2021/05/deep-linking-firebase-branchio-1.webp"
					class="image__img block-media__image-img"
					alt=""
										height="959"
															width="1600"
										loading="lazy"
					 />
					</picture>

			<figcaption class="image__figcaption block-media__image-figcaption">
			The flow expected by the user		</figcaption>
	</figure></div></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'
	>
	If they land on the home page instead, the unsatisfied (and probably <em>hangry</em>) user will likely uninstall the app out of frustration.</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-heading" data-id="es-117">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-118'
	>
	Deep links to the rescue</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-122"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-120">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-121'
	>
	To prevent catastrophic scenarios from happening, <strong>deep links</strong> improve the user experience by redirecting users to their expected destinations.</p></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'
	>
	They appear as regular links but contain the logic necessary to redirect users to the app store and hold that information until the app processes it.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-130"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="blockquote block-blockquote__blockquote" data-id="es-126">
	
	<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-127'>
	<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-128'
	>
	Thanks to two primary deep linking services, Firebase Dynamic Links and branch.io, deep links are easy to implement.</p>
		<div class="blockquote__caption-wrap">
					</div>
	</div>
</div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-133"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-131">
	<h3	class='typography typography--size-36-text js-typography block-heading__heading'
	data-id='es-132'
	>
	Firebase Dynamic Links</h3></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-136"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-134">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-135'
	>
	<a href="https://firebase.google.com/">Firebase</a> is a platform by Google that provides many helpful services for developing mobile or web apps. Some of the most famous services include Cloud Firestore, Cloud Messaging, Google Analytics, and another useful one is Firebase Dynamic Links.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-139"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-137">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-138'
	>
	Firebase Dynamic Links allows users to create <a href="https://firebase.google.com/docs/dynamic-links">cross-platform links</a>, which will work on Android, iOS, and the desktop browser. Firebase allows you to configure deep link behavior depending on whether the user has installed the app.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-142"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-140">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-141'
	>
	Deep links can be created statically through the Firebase Console or dynamically through mobile or web apps. Of course, it is necessary to implement a separate SDK in the app if you want to create them dynamically.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-145"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-143">
	<h4	class='typography typography--size-24-text js-typography block-heading__heading'
	data-id='es-144'
	>
	Setting up a basic deep link</h4></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-148"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="lists" data-id="es-146">
	<ul	class='typography typography--size-16-text-roman js-typography lists__typography'
	data-id='es-147'
	>
	<li>Insert the public URL</li><li>Insert the URL that will be passed to the app</li><li>Set the behavior on the iOS platform to be opened by the iOS app</li><li>Insert the URL of the App Store page that should be opened if the app isn’t installed</li><li>Set the behavior on the Android platform to be opened by the Android app</li><li>Insert the URL of the Google Play Store page of the app that should be opened if the app isn’t installed</li></ul></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-151"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-149">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-150'
	>
	It’s also possible to set social meta tags with Firebase. Setting social meta tags for the preview title, description, and image makes it possible to configure your link preview&#8217;s appearance when shared on social media.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-154"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-152">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-153'
	>
	Additionally, Firebase Console gives you insight into the deep link metrics for the number of clicks, installations, first-opens, etc. This is especially useful for your marketing and analytics team.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-157"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-155">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-156'
	>
	Firebase’s functionalities are sufficient for most projects and are available for free at any scale.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-160"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-158">
	<h3	class='typography typography--size-36-text js-typography block-heading__heading'
	data-id='es-159'
	>
	Branch.io</h3></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-163"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-161">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-162'
	>
	Unlike Firebase and its whole spectrum of helpful services for developing mobile and web apps, <a href="https://branch.io/">Branch</a> is a platform focused solely on attribution and deep linking. It supports every option covered by Firebase Dynamic Links and bonus options that Firebase does not cover.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-166"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="lists" data-id="es-164">
	<ul	class='typography typography--size-16-text-roman js-typography lists__typography'
	data-id='es-165'
	>
	<li>Branch enables you to add an unlimited number of key-value pairs for passing data into your app, while Firebase supports only a single web URL,</li><li>Branch supports multiple Android stores: Google Play Store, Huawei App Gallery, Vivo App Store, Oppo App Market.</li><li>Branch deep links are supported on Huawei, while Firebase Dynamic Links don’t work there because Huawei doesn’t support Google services.</li><li>Branch provides much more detailed analytics information regarding deep links.</li></ul></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-169"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-167">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-168'
	>
	It is important to mention that even though creating deep links with Branch is free, check its <a href="https://branch.io/pricing/">pricing plan</a> to achieve its full potential.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-172"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-170">
	<h4	class='typography typography--size-24-text js-typography block-heading__heading'
	data-id='es-171'
	>
	Dig deeper with Branch</h4></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-175"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-173">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-174'
	>
	Having covered the basic differences between Branch and Firebase, here are some additional Branch features worth mentioning.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-178"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="lists" data-id="es-176">
	<ul	class='typography typography--size-16-text-roman js-typography lists__typography'
	data-id='es-177'
	>
	<li>Deepviews (auto-generated app previews with the deep link)</li><li>Referrals (use Branch deep links to build and measure referrals)</li><li>Journeys (web banner for quick access to your app)</li><li>Universal emails (deep links in email campaign)</li></ul></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-181"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-179">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-180'
	>
	To read about them in detail, please visit <a href="https://branch.io/">branch.io</a>.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-184"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-182">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-183'
	>
	What to choose and when?</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-187"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-185">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-186'
	>
	<strong>Firebase Dynamic Links</strong> is a great and simple addition to the whole Firebase platform. It provides basic deep link infrastructure and is a solid solution for any app that doesn’t require advanced functionalities from deep links.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-190"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-188">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-189'
	>
	On the other hand, if an app heavily relies on traffic growth and advertising, you will find <strong>Branch</strong> much more valuable and helpful.</p></div>	</div>
</div>
</div>		</div>
	</div><p>The post <a href="https://infinum.com/blog/deep-linking-firebase-branchio/">Firebase Dynamic Links or Branch.io for Deep Linking?</a> appeared first on <a href="https://infinum.com">Infinum</a>.</p>
]]>
				</content:encoded>
			</item>
		
	</channel>
</rss>