Blank or stuck
Fix blank screens and stuck spinners in React Native with screen trails, load budgets, and TraceRN warns
The feed never loads. The spinner spins. There is no crash — the user force-quits and leaves a one-star review.
What to instrument
trackScreenon every route change- Info when a screen starts loading data
- Warn if loading exceeds a budget (e.g. 8s)
- Error if the request fails or returns empty when it should not
javascript
TraceRN.trackScreen("Home");
TraceRN.log("feed.load_started", { screen: "Home" });
const started = Date.now();
const data = await fetchFeed();
if (Date.now() - started > 8000) {
TraceRN.warn("feed.load_slow", { ms: Date.now() - started, screen: "Home" });
}
if (!data?.items?.length) {
TraceRN.warn("list.empty", { screen: "Home", source: "feed" });
}If a render path can hang after a partial state update, also log ui.stuck_suspected from a timeout watchdog.
What you see in TraceRN
- Filter by
screen: Homeorfeed.load_slowin the log viewer - Breadcrumbs show navigation into Home and the slow or failed fetch
- Pair with slow or offline if fetches routinely exceed thresholds
Related
Last updated · TraceRN docs