10 reasons not to use bitdrift: 1, you love breadcrumbs
As a full-on, drank-all-the-Kool-Aid fan of bitdrift, I often wonder why anyone wouldn’t use it for mobile observability. So for this series, I’ll try to come up with 10 reasons not to use bitdrift.

Let’s kick things off with a classic. One of the most common questions I hear during demos is about breadcrumb support. My answer? bitdrift doesn’t do breadcrumbs; we give you the whole loaf! So if you really love breadcrumbs, you might want to stop reading now. But if you’ll indulge me for a minute, read on. You may discover you don’t need breadcrumbs at all.
What are breadcrumbs?
Breadcrumbs are lightweight, log-like markers that record user actions or app state transitions leading up to a crash or an error. They’re bite-sized context hints. Helpful, sure, but they also come with some fundamental limitations.Why breadcrumbs kind of suck
1. They’re not always automatic
Some tools auto-generate a narrow set of breadcrumbs: screen transitions, taps, lifecycle events, maybe network failures. Anything beyond the defaults? That’s on you. So you decide what might matter, add custom breadcrumb code, and hope you guessed right. If you log too little, debugging becomes a guessing game. If you log too much, you drown in noise. Breadcrumbs don’t solve this; they just add to the decision fatigue.2. Every vendor does them differently
There is no breadcrumb standard. Every tool has its own format, capture limits, maximum payload size (usually small), retention rules, and UI constraints. And switching vendors means reinstrumenting breadcrumbs all over again. It’s yet another telemetry type to learn, maintain, and keep consistent across codebases and platforms. And for what? A tiny, constrained version of something logs already do better.3. You can’t actually query them
One of the most painful limitations: breadcrumbs aren’t truly queryable. You can’t aggregate them, build histograms with them, group charts by their fields, or slice them by device attributes or error types. Breadcrumbs were designed for narrative context, not analytics. They sit on the sidelines waiting for a crash to happen, without contributing to meaningful observability.4. They aren’t structured like real logs
Breadcrumbs are narrow, shallow, and often unstructured. And vendors enforce payload sizes and retention limits, so they exist in this weird “log-but-not-really” category. If you’re already thinking about capturing context, why not just log instead?5. They often get used instead of logs, which backfires
Because mobile teams are taught not to log (more on this in a second), breadcrumbs become the emotional support animal of observability. Developers scatter breadcrumbs everywhere trying to make up for missing logs, and the result is too many breadcrumbs, not enough signal, and hard-to-follow debugging trails. Breadcrumbs aren’t the problem. It’s the ecosystem that forced them into existence.So why do mobile observability tools even have breadcrumbs?
Short answer: to compensate for a lack of logging. Mobile apps are notoriously chatty, and telemetry can account for more than 50% of an app’s overall data consumption. Leaving debugging logs in production feels risky. And legacy observability tools make logging financially painful. Nobody wants to trigger a surprise five-figure overage bill or burn through their log quota in the first week of the month. So breadcrumbs emerged as a compromise:- cheaper than full logs
- small footprint
- “just enough” context (rarely)
A world without breadcrumbs
Here’s the good news. bitdrift eliminates the need for breadcrumbs entirely; not by ignoring them, but by surpassing them. Everything you expect from breadcrumbs, bitdrift already captures it out of the box:- Lifecycle events (app start, foreground/background transitions)
- User actions (taps, navigation events, UI interactions)
- Device state (network type, connectivity changes, battery, memory pressure, thermal state)
- Network spans
- query them like real logs
- aggregate them into charts and dashboards
- build histograms, funnels, and user journeys
- slice them by OS, device model, app version, locale, or anything else
- correlate them with crashes, slow screens, ANRs, and network traffic
Conclusion
If you really want to stick with breadcrumbs, definitely avoid bitdrift. But if you like the sound of having the whole loaf (real logs, unlimited context, analytics that actually work), then maybe breadcrumbs weren’t doing much for you anyway. Want to try bitdrift for yourself? Sign up for free to see it in action or check out the sandbox to keep exploring.Footnotes
- Jake Wharton, creator of the Timber logger for Android, famously said that “every time you log in production, a puppy dies.” He was joking… probably. ↩
Author
Iain Finlayson