{"id":4515,"date":"2022-11-04T16:00:04","date_gmt":"2022-11-04T16:00:04","guid":{"rendered":"https:\/\/ionic.io\/blog\/?p=4515"},"modified":"2022-11-04T16:57:09","modified_gmt":"2022-11-04T16:57:09","slug":"the-economics-of-native-vs-hybrid-applications","status":"publish","type":"post","link":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications","title":{"rendered":"The Economics of Native vs Hybrid Applications"},"content":{"rendered":"<blockquote><p>This is a guest post from <a href=\"https:\/\/www.linkedin.com\/in\/michel-tobon\/\">Michel Tobon<\/a>, a senior front end developer who is passionate about mobile technologies and frontend frameworks.<\/p><\/blockquote>\n<p><!--more--><\/p>\n<p>&nbsp;<\/p>\n<p><i><span style=\"font-weight: 400;\">\u201cWrite what you know\u201d<\/span><\/i><\/p>\n<p><span style=\"font-weight: 400;\">-Mark Twain<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><b>How different is the economy of building a native vs a hybrid application?<\/b> <span style=\"font-weight: 400;\">This piece is an analysis of that question, and not only focuses on architectural decisions I have made in my 12-year career, but it is also a bit of a memoir. I want to share the reasoning and experiences behind my decisions and insights into native vs. hybrid mobile applications.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">I also want you to remember the quote above: \u201cWrite What You Know.\u201d It will come in handy later.<\/span><\/p>\n<h2>The importance of the web<\/h2>\n<p><span style=\"font-weight: 400;\">My University career was one of the first times I actually understood the importance of web applications in the industry. At that time, there was a very big difference between web applications for\u00a0 and web applications for mobile. Your mobile site was still going to be used on a small device with no virtually no memory, slow connection speeds, and a very limited amount of data.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In one of my last courses at University, one of the case studies had the following requirements for an application:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The application has to connect to multiple databases<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The application has to be accessible in multiple locales<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The application must run on both Windows and Mac<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The application must be mobile friendly<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Some of my colleagues insisted the best solution was to just write the whole thing in Java. Our teacher \u2013 a Java senior for years \u2013 actually challenged this by stating:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u201cSure, create the whole backend architecture with Java, connect data sources, aggregate data, collect metrics, etc., but create the front-end as an HTML, CSS, JS web application.\u201d<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Though surprising, his logic was quite sound. The complexities of building a desktop application (at the time) were quite high, and while a Java application would technically be able to run on any platform, maintaining the application and making sure that users are staying up-to-date with new versions is always complicated, even when you implement an auto-update feature.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">However, technology was already moving toward a mobile future. At the time, Apple had already released its second generation iPhone, laptops became more accessible, Palm and Blackberry were creating devices that were rendering web applications in browsers. The industry had spoken: the world was meant to be mobile.<\/span><\/p>\n<h2>My introduction to hybrid<\/h2>\n<p><span style=\"font-weight: 400;\">A few years later, I was working at a startup that focused on mobile applications and required apps to do tasks like authentication, using the camera, and using device GPS for location validation.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Most clients asked for Blackberry applications specifically, and this company was proudly one of the main proponents of this technology. At the time, Blackberry released version 10 of their operating system, which included the introduction of <\/span><a href=\"https:\/\/blackberry.github.io\/Community\/WebWorks.html\"><span style=\"font-weight: 400;\">WebWorks<\/span><\/a><span style=\"font-weight: 400;\">. WebWorks was one of the firsts attempts and an introduction to something that seems very obvious to a lot of us now: hybrid web applications.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">I wanted to use WebWorks because I was and am to this day a Front-End Engineer, and I was way more comfortable building this application with web technologies than native ones. It was going to take me at least a month and a half to get comfortable writing good quality Blackberry-specific code, and more time to get the actual application built. Remember: Write What You Know.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Additionally, there were no other team members with working knowledge of Blackberry application development available, and our timeline was just one month to build it and one more to test it with the intended clients.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Initially, there were some hiccups. Management agreed to a proof-of-concept, and I spent two weeks writing the application. Seeing the app run on an emulator, management was not very happy. They were worried the application would not run, let alone scale.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The proof of concept had some issues, specifically:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The first version of the emulator was not opening the data sources yet so the application was not connecting to our API, causing CORS issues<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The initial load of the application was almost 30 seconds<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The rendering of HTML5 elements was choppy<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Management insisted that these challenges were never going to allow a web application to fully scale and serve mobile clients. They decided to start the application from scratch by moving a mobile engineer from another project and having them rewrite this application.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Then we received a real native device to play with and everything changed.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">We were finally able to install and run my application, and management\u2019s view of the project changed completely.<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The application loaded quickly<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The application\u2019s use of the integrated GPS chip was near native<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The images rendered were crisp and perfect<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The CSS rules for responsiveness worked perfectly out of the box<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">In the end I can say that the application was a success, both personally and for the company.<\/span><\/p>\n<h2>Native vs. hybrid development cost<\/h2>\n<p><span style=\"font-weight: 400;\">Now that you know my personal experiences with web, native, and hybrid, let\u2019s analyze the economic differences between iOS, Android, and web technologies.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The salaries reported on Glassdoor for each of the three developer types are:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Front-End Engineers: $116K<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">iOS Engineers: $118K<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Android Engineers: $116K<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">In order to build a mobile application you would require either an engineer who writes and maintains a Front-End application with native capabilities (hybrid), or 1-2 engineers who know how to build and maintain an Android and an iOS application (native).<\/span><\/p>\n<p><span style=\"font-weight: 400;\">It is important to note that for the first case above, both platforms would be covered with the exact same code. Because of that, the development times for the final product would be equal to the development time of a single code base. If the product was to be developed in exactly one year, we could safely assume that the price paid in development had been around $116K.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In the second case, the development effort is doubled from the start. If the two developers would have built their respective applications at the same time, the total price would be around $234K USD. To maintain the smaller budget, the application would have taken roughly double the time to be delivered.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">What if we just release the Android version first and the iOS version later, you might ask? That\u2019s a risk that you have to analyze, considering which platform:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Has a higher application competition?<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Has the biggest economic impact?<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Has the optimal capabilities to reach the target market faster?<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Represents the demographic that I am trying to target?<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">If you decide to build your application hybrid, these considerations go away because you can release your application simultaneously and have feature parity between both platforms, which in the long run will reduce your maintenance costs.<\/span><\/p>\n<h2>You built it, now ship it!<\/h2>\n<p><span style=\"font-weight: 400;\">Another hidden cost of native versus hybrid applications is deployment.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Traditionally, building, signing and uploading your application is a manual process. You write all of your code in your local environment, create the appropriate keys, and build a production binary of your application that you then have to upload to the respective store. This creates problems such as inconsistent deployments and lack of continuous integration or automated tests.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">That is where solutions such as <\/span><a href=\"https:\/\/ionic.io\/blog\/appflow\"><span style=\"font-weight: 400;\">Appflow<\/span><\/a><span style=\"font-weight: 400;\"> come into play. Appflow is Ionic\u2019s mobile DevOps platform for automating mobile builds and deployments. These types of CI\/CD solutions allow you to follow best practices when developing applications.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">With a solution like <\/span><a href=\"https:\/\/ionic.io\/blog\/appflow\"><span style=\"font-weight: 400;\">Appflow<\/span><\/a><span style=\"font-weight: 400;\">, your application\u2019s code is safely stored in your version control repository and you can add valuable safeguards to your process that are used in many large companies. These processes can be established in multiple locations of your development process.<\/span><\/p>\n<p><b>Build:<\/b><span style=\"font-weight: 400;\"> With CI\/CD automations, you can apply build logic specific to the needs of your team and application. These include making sure that your code was reviewed, that your code style rules are correctly applied and enforced, and that you\u2019ve accounted\u00a0 for any vulnerable dependencies.\u00a0<\/span><\/p>\n<p><b>Test:<\/b><span style=\"font-weight: 400;\"> At some point you will need to implement automated testing. This ensures your application safely integrates with your backend systems and that given any data changes, the application continues to behave consistently. This becomes more difficult when using a manual deployment process.<\/span><\/p>\n<p><b>Update:<\/b><span style=\"font-weight: 400;\"> For mobile apps, you have to make sure that all changes reach production in all the target stores. Tools like <\/span><a href=\"https:\/\/ionic.io\/blog\/appflow\"><span style=\"font-weight: 400;\">Appflow<\/span><\/a><span style=\"font-weight: 400;\"> make sure that you only have to worry about your business logic and not having to build, sign, and upload a new binary every time you make a code change.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">With a more traditional CI\/CD process, specifically with native applications, we run the risk of developers in idle states while binaries get compiled, signed, uploaded, and deployed. Every single hour of development that is not used on development-specific tasks has a strong economic impact on an organization.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Because the code for hybrid apps is only web-specific code, these idle times are reduced greatly. Every time that you change your code, the web artifacts just have to be updated in the application but the application itself doesn\u2019t really change. It will still continue to have the same dependencies and capabilities as the previous build and therefore you don\u2019t need to stop the development process to build and test over and over again.<\/span><\/p>\n<h2>Write what you know<\/h2>\n<p><span style=\"font-weight: 400;\">There are many more factors that can affect the economy of your product. While we\u2019d all like to ensure we\u2019re ticking every single box and accounting for every possible issue, it is the role of the architect to ensure we\u2019ve ticked the most important ones \u2013 economy being a big one.\u00a0\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">As I\u2019ve said, \u2018write what you know\u2019. What I know is that when it comes to creating the best mobile application for your business, there are seemingly endless means to an end. However, when it comes to creating the best possible application with minimal resources, hybrid development can be a game changer. <\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This is a guest post from Michel Tobon, a senior front end developer who is passionate about mobile technologies and frontend frameworks.<\/p>\n","protected":false},"author":65,"featured_media":4517,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"publish_to_discourse":"0","publish_post_category":"23","wpdc_auto_publish_overridden":"","wpdc_topic_tags":"","wpdc_pin_topic":"","wpdc_pin_until":"","discourse_post_id":"555110","discourse_permalink":"http:\/\/forum.ionicframework.com\/t\/the-economics-of-native-vs-hybrid-applications\/228303","wpdc_publishing_response":"","wpdc_publishing_error":"","_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1,123],"tags":[144,14],"class_list":["post-4515","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-all","category-perspectives","tag-hybrid-app-development","tag-hybrid-mobile-development"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v23.0 (Yoast SEO v23.0) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>The Economics of Native vs Hybrid Applications - Ionic Blog<\/title>\n<meta name=\"description\" content=\"In this guest post, Michel Tobon examines the economics of native vs. hybrid application development, looking at his own experiences.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The Economics of Native vs Hybrid Applications\" \/>\n<meta property=\"og:description\" content=\"In this guest post, Michel Tobon examines the economics of native vs. hybrid application development, looking at his own experiences.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications\" \/>\n<meta property=\"og:site_name\" content=\"Ionic Blog\" \/>\n<meta property=\"article:published_time\" content=\"2022-11-04T16:00:04+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-11-04T16:57:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/11\/hybrids-feature-image-1024x512.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"512\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"The Ionic Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ionicframework\" \/>\n<meta name=\"twitter:site\" content=\"@ionicframework\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"The Ionic Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#article\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications\"},\"author\":{\"name\":\"The Ionic Team\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/e246c7618b04fe8244628949bb5d7f19\"},\"headline\":\"The Economics of Native vs Hybrid Applications\",\"datePublished\":\"2022-11-04T16:00:04+00:00\",\"dateModified\":\"2022-11-04T16:57:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications\"},\"wordCount\":1657,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/ionic.io\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/11\/hybrids-feature-image.png\",\"keywords\":[\"hybrid app development\",\"hybrid mobile development\"],\"articleSection\":[\"All\",\"Perspectives\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications\",\"url\":\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications\",\"name\":\"The Economics of Native vs Hybrid Applications - Ionic Blog\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#primaryimage\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/11\/hybrids-feature-image.png\",\"datePublished\":\"2022-11-04T16:00:04+00:00\",\"dateModified\":\"2022-11-04T16:57:09+00:00\",\"description\":\"In this guest post, Michel Tobon examines the economics of native vs. hybrid application development, looking at his own experiences.\",\"breadcrumb\":{\"@id\":\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#primaryimage\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/11\/hybrids-feature-image.png\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/11\/hybrids-feature-image.png\",\"width\":2240,\"height\":1120,\"caption\":\"hybrids feature image\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/ionic.io\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"The Economics of Native vs Hybrid Applications\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/ionic.io\/blog\/#website\",\"url\":\"https:\/\/ionic.io\/blog\/\",\"name\":\"ionic.io\/blog\",\"description\":\"Build amazing native and progressive web apps with the web\",\"publisher\":{\"@id\":\"https:\/\/ionic.io\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/ionic.io\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/ionic.io\/blog\/#organization\",\"name\":\"Ionic\",\"url\":\"https:\/\/ionic.io\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2020\/10\/white-on-color.png\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2020\/10\/white-on-color.png\",\"width\":1920,\"height\":854,\"caption\":\"Ionic\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/ionicframework\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/e246c7618b04fe8244628949bb5d7f19\",\"name\":\"The Ionic Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ionic-team-blog.png\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ionic-team-blog.png\",\"caption\":\"The Ionic Team\"},\"sameAs\":[\"https:\/\/twitter.com\/ionicframework\",\"https:\/\/x.com\/ionicframework\"],\"url\":\"https:\/\/ionic.io\/blog\/author\/theionicteam\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"The Economics of Native vs Hybrid Applications - Ionic Blog","description":"In this guest post, Michel Tobon examines the economics of native vs. hybrid application development, looking at his own experiences.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications","og_locale":"en_US","og_type":"article","og_title":"The Economics of Native vs Hybrid Applications","og_description":"In this guest post, Michel Tobon examines the economics of native vs. hybrid application development, looking at his own experiences.","og_url":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications","og_site_name":"Ionic Blog","article_published_time":"2022-11-04T16:00:04+00:00","article_modified_time":"2022-11-04T16:57:09+00:00","og_image":[{"width":1024,"height":512,"url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/11\/hybrids-feature-image-1024x512.png","type":"image\/png"}],"author":"The Ionic Team","twitter_card":"summary_large_image","twitter_creator":"@ionicframework","twitter_site":"@ionicframework","twitter_misc":{"Written by":"The Ionic Team","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#article","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications"},"author":{"name":"The Ionic Team","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/e246c7618b04fe8244628949bb5d7f19"},"headline":"The Economics of Native vs Hybrid Applications","datePublished":"2022-11-04T16:00:04+00:00","dateModified":"2022-11-04T16:57:09+00:00","mainEntityOfPage":{"@id":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications"},"wordCount":1657,"commentCount":0,"publisher":{"@id":"https:\/\/ionic.io\/blog\/#organization"},"image":{"@id":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/11\/hybrids-feature-image.png","keywords":["hybrid app development","hybrid mobile development"],"articleSection":["All","Perspectives"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#respond"]}]},{"@type":"WebPage","@id":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications","url":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications","name":"The Economics of Native vs Hybrid Applications - Ionic Blog","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#primaryimage"},"image":{"@id":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/11\/hybrids-feature-image.png","datePublished":"2022-11-04T16:00:04+00:00","dateModified":"2022-11-04T16:57:09+00:00","description":"In this guest post, Michel Tobon examines the economics of native vs. hybrid application development, looking at his own experiences.","breadcrumb":{"@id":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#primaryimage","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/11\/hybrids-feature-image.png","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/11\/hybrids-feature-image.png","width":2240,"height":1120,"caption":"hybrids feature image"},{"@type":"BreadcrumbList","@id":"https:\/\/ionic.io\/blog\/the-economics-of-native-vs-hybrid-applications#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/ionic.io\/blog"},{"@type":"ListItem","position":2,"name":"The Economics of Native vs Hybrid Applications"}]},{"@type":"WebSite","@id":"https:\/\/ionic.io\/blog\/#website","url":"https:\/\/ionic.io\/blog\/","name":"ionic.io\/blog","description":"Build amazing native and progressive web apps with the web","publisher":{"@id":"https:\/\/ionic.io\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ionic.io\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/ionic.io\/blog\/#organization","name":"Ionic","url":"https:\/\/ionic.io\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2020\/10\/white-on-color.png","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2020\/10\/white-on-color.png","width":1920,"height":854,"caption":"Ionic"},"image":{"@id":"https:\/\/ionic.io\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/ionicframework"]},{"@type":"Person","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/e246c7618b04fe8244628949bb5d7f19","name":"The Ionic Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/image\/","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ionic-team-blog.png","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ionic-team-blog.png","caption":"The Ionic Team"},"sameAs":["https:\/\/twitter.com\/ionicframework","https:\/\/x.com\/ionicframework"],"url":"https:\/\/ionic.io\/blog\/author\/theionicteam"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/11\/hybrids-feature-image.png","_links":{"self":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/4515","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/users\/65"}],"replies":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/comments?post=4515"}],"version-history":[{"count":2,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/4515\/revisions"}],"predecessor-version":[{"id":4522,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/4515\/revisions\/4522"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media\/4517"}],"wp:attachment":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media?parent=4515"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/categories?post=4515"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/tags?post=4515"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}