{"id":988591,"date":"2026-10-02T08:00:00","date_gmt":"2026-10-02T08:00:00","guid":{"rendered":"https:\/\/croncodestudio.com\/en\/?post_type=croncode_post&#038;p=988591"},"modified":"2026-09-08T22:58:43","modified_gmt":"2026-09-08T22:58:43","slug":"crash-free-sessions-what-founders-should-ask","status":"publish","type":"croncode_post","link":"https:\/\/croncodestudio.com\/en\/journal\/crash-free-sessions-what-founders-should-ask\/","title":{"rendered":"Crash-Free Sessions: What Founders Should Ask"},"content":{"rendered":"<div class=\"vgblk-rw-wrapper limit-wrapper\">\n<p>Crash-free sessions is a stability ratio: sessions that did not crash, divided by sessions that ran. Founders should treat it as a question set, not as a trophy. Apple, a third-party SDK, and a hallway demo can all produce different numbers from the same week. This is the diligence list we use at <a href=\"\/en\/\">Croncode<\/a> before we call a binary ready.<\/p>\n<blockquote class=\"croncode-kisa-cevap\">\n<p>Ask how crash-free sessions are counted, who owns crash symbols, and which build the number comes from. A percentage without a method is a slide, not a gate.<\/p>\n<\/blockquote>\n<h2>What does crash-free sessions actually measure?<\/h2>\n<p>A session usually starts when the app becomes active and ends after a period of background idle or a terminate. A crash is an unexpected exit the system or your reporter classifies as a crash. Force quit is not a crash. A watchdog kill might be. If two people argue about a percentage, they are often arguing about those definitions.<\/p>\n<p>Ask the studio to write the definition. Then ask which reporter they trust for the store gate: Xcode Organizer, MetricKit, or a vendor dashboard. Mixing them in one slide hides the fight. Shipping culture: <a href=\"\/en\/journal\/how-croncode-ships-ai-consumer-apps-from-istanbul\/\">how Croncode ships<\/a>.<\/p>\n<h2>Which questions should you ask before you sign?<\/h2>\n<ol>\n<li>Which build number is in the chart, TestFlight or App Store?<\/li>\n<li>Are dSYMs uploaded automatically, and who has the Apple org that receives them?<\/li>\n<li>How fast can you reproduce the top crash group on a device we name?<\/li>\n<li>What is the kill rule for a crash that hits the first job?<\/li>\n<li>Who reads the report on Monday, not only after a one-star review?<\/li>\n<\/ol>\n<p>Account ownership belongs in that list. If symbols sit in a personal Apple ID, you will lose them when a contractor leaves. Write the owner now. Related: <a href=\"\/en\/journal\/who-owns-the-app-store-account\/\">who owns the App Store account<\/a>. Hiring checks in this city: <a href=\"\/en\/journal\/hiring-an-app-team-in-istanbul-what-to-check\/\">Istanbul diligence<\/a>.<\/p>\n<h2>When is a crash a product bug, not a device story?<\/h2>\n<table>\n<thead>\n<tr>\n<th>Signal<\/th>\n<th>Treat as product<\/th>\n<th>Treat as noise first<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Same stack on two OS versions<\/td>\n<td>Yes<\/td>\n<td>No<\/td>\n<\/tr>\n<tr>\n<td>One jailbroken device<\/td>\n<td>No<\/td>\n<td>Yes, isolate<\/td>\n<\/tr>\n<tr>\n<td>Crash on the first job path<\/td>\n<td>Yes, block release<\/td>\n<td>Never \u201clater\u201d<\/td>\n<\/tr>\n<tr>\n<td>Crash in a rare locale string<\/td>\n<td>Yes, if you ship that locale<\/td>\n<td>Only if that locale is not-now<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Consumer jobs make this concrete. If <a href=\"\/en\/app\/yourstyle-ai-stylist-outfit\/\">YourStyle<\/a> died while saving a garment photo, that is a first-job crash. If <a href=\"\/en\/app\/luviport-flawless-journeys-the-premium-experience\/\">Luviport<\/a> died while confirming a transfer window, same rule. A crash in a settings toggle you can live without is still a ticket. It is not a store blocker unless it is frequent.<\/p>\n<h2>How should a small studio report the number?<\/h2>\n<p>Report seven and twenty-eight days. Name the build and the session count so a 100% on twelve sessions cannot pose as a launch metric. We do not publish invented crash-free rates. Do not accept invented rates from a vendor. Catalog: <a href=\"\/en\/journal\/what-croncode-builds-mobile-ai-human-centered\/\">what Croncode builds<\/a>.<\/p>\n<p>If the team is lean, one person owns the Monday read. Write the name. Hours: <a href=\"\/en\/journal\/small-team-multiple-products-how-a-lean-studio-structures-its-engineering-and-design-resources\/\">small team, multiple products<\/a>. Founder: <a href=\"\/en\/team\/goktug-unver\/\">Goktug Unver<\/a>. Co-founder: <a href=\"\/en\/team\/yusufhan-sokur\/\">Yusufhan Sokur<\/a>.<\/p>\n<h2>What mistakes look like stability work?<\/h2>\n<ul>\n<li><strong>Screenshot of a green dashboard with no build number:<\/strong> refuse it.<\/li>\n<li><strong>Turning off crash reporting to \u201clook clean\u201d:<\/strong> that is fraud against yourself.<\/li>\n<li><strong>Ignoring memory jetsam because it is not labeled crash:<\/strong> users still lose the session.<\/li>\n<li><strong>Shipping an AI path with no timeout UI:<\/strong> a hang is a failed session even when the process lives. Fail-safe scoping: <a href=\"\/en\/journal\/how-to-scope-an-ai-feature-that-can-fail-safe\/\">AI features that fail safe<\/a>.<\/li>\n<\/ul>\n<p>Quote packets should mention the reporter and the Apple org. Use <a href=\"\/en\/journal\/what-to-send-when-requesting-a-software-quote\/\">what to send for a quote<\/a>. If you are choosing a vendor, add this page to <a href=\"\/en\/journal\/how-to-choose-a-custom-software-studio-for-ios\/\">how to choose an iOS studio<\/a>. Custom work: <a href=\"\/en\/custom-software\/\">custom software<\/a>. Hire path: <a href=\"\/en\/hire-software-studio\/\">hire the studio<\/a>.<\/p>\n<h2>What does a release gate look like in practice?<\/h2>\n<p>Write a kill rule as counts plus a ratio so a quiet week cannot fake health. Example: do not promote a build if the top first-job crash group has more than N users in seven days, or if you cannot reproduce it. A founder who only hears about crashes from reviews is late. Reviews: <a href=\"\/en\/journal\/how-to-read-app-store-reviews-as-a-team\/\">read reviews as a team<\/a>. Support: <a href=\"\/en\/journal\/support-email-as-a-product-surface\/\">support email<\/a>. Journal: <a href=\"\/en\/journel\/\">\/en\/journel\/<\/a>. Contact: <a href=\"\/en\/contact-us\/\">contact<\/a>.<\/p>\n<h2>Frequently asked questions<\/h2>\n<h3>Is 99.9% crash-free a requirement?<\/h3>\n<p>No universal number is a requirement. Apple publishes ranges that change. Ask for method, build, and first-job impact instead of a slogan percentage.<\/p>\n<h3>Do I need a paid crash tool on day one?<\/h3>\n<p>You need symbolicated reports and a weekly owner. Organizer can be enough for a small TestFlight. Add a vendor when volume or roles demand it.<\/p>\n<h3>What if the crash is in a third-party SDK?<\/h3>\n<p>It is still your listing. Update, isolate, or remove the SDK. Privacy labels also change when SDKs change.<\/p>\n<h3>Should I delay launch for a rare crash?<\/h3>\n<p>If it hits the first job, yes. If it is a one-device stack you cannot reproduce and the job completes, ship and watch the next seven days.<\/p>\n<h3>Who at Croncode reads crash reports?<\/h3>\n<p>Engineering in Istanbul owns the weekly read. Names on the team pages: <a href=\"\/en\/team\/goktug-unver\/\">Goktug Unver<\/a>, <a href=\"\/en\/team\/yusufhan-sokur\/\">Yusufhan Sokur<\/a>, <a href=\"\/en\/team\/ozgur-ismet-ozkan\/\">Ozgur Ismet Ozkan<\/a>.<\/p>\n<\/div>\n<p><!-- .vgblk-rw-wrapper --><\/p>\n","protected":false},"excerpt":{"rendered":"<p>What founders should ask about crash-free sessions: how the metric is counted, who owns symbols, and what a studio must show before launch.<\/p>\n","protected":false},"featured_media":988592,"template":"","croncode_category":[48],"croncode_author":[47],"class_list":["post-988591","croncode_post","type-croncode_post","status-publish","has-post-thumbnail","hentry","croncode_category-studio","croncode_author-yusufhan-sokur"],"_links":{"self":[{"href":"https:\/\/croncodestudio.com\/en\/wp-json\/wp\/v2\/croncode_post\/988591","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/croncodestudio.com\/en\/wp-json\/wp\/v2\/croncode_post"}],"about":[{"href":"https:\/\/croncodestudio.com\/en\/wp-json\/wp\/v2\/types\/croncode_post"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/croncodestudio.com\/en\/wp-json\/wp\/v2\/media\/988592"}],"wp:attachment":[{"href":"https:\/\/croncodestudio.com\/en\/wp-json\/wp\/v2\/media?parent=988591"}],"wp:term":[{"taxonomy":"croncode_category","embeddable":true,"href":"https:\/\/croncodestudio.com\/en\/wp-json\/wp\/v2\/croncode_category?post=988591"},{"taxonomy":"croncode_author","embeddable":true,"href":"https:\/\/croncodestudio.com\/en\/wp-json\/wp\/v2\/croncode_author?post=988591"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}