All posts
EngineeringMay 21, 2026·6 min read

How we symbolicate Hermes bundles

By Engineering

A crash in a release build of a React Native app arrives as a list of byte offsets into a Hermes bytecode bundle. Helpful to a machine; meaningless to a human staring at the issue page.

The source map is the key

When you build with symbolication enabled, the SDK associates each release with the source map produced for that bundle. On the server we resolve every frame's offset back to a file, line and column in your original source.

  • Match the event's release to the uploaded map
  • Resolve byte offset → generated line/column
  • Walk the source map back to original file/line
  • Attach surrounding source context to the frame

Why it runs server-side

Source maps are large and sensitive — you don't want to ship them to clients. Doing the resolution at ingest keeps the maps private and means historical events get re-symbolicated if a map is uploaded late.

Start watching your apps in minutes

Drop in the SDK and watch your first events arrive. Free plan, no credit card.

Start free