We’re excited to announce Perfetto v54.0!
This release brings a massive new visual Data Explorer, official Debian packaging, powerful UI snapping capabilities, and a much smoother trace recording experience.
The Data Explorer is a visual query builder that lets you construct analysis pipelines by connecting nodes in a graph. Instead of writing SQL from scratch, you pick data sources, add transformations, and see results updated in real time in an interactive table.
A complete launch announcement is coming soon!

Perfetto is now officially packaged for Debian! You can easily install Perfetto and its tracing tools directly from the package manager.
Check it out: Debian Tracker.
We've made it much easier to configure and share trace recordings directly from the UI:
.config files or download your generated configs with a single click directly from the recording page, making it incredibly easy to share setups or run them via the CLI.
Alt to temporarily disable snapping. Learn moreglob, contains, and not-contains filters, and a distinct value picker for much faster data filtering.https:// trace directly via the url= parameter. Learn more.android.user_list data source has been added to easily track and list Android users in your traces. Learn more perf_sample_with_counters to the standard library. This makes it easy to correlate sample callstacks with their associated counter values, allowing perf event flamegraphs to be weighted by event values rather than just sample counts. Learn moreintent and component details to the android_anrs table, and introduced new weighted jank metrics to the standard library..zip archives (perfetto-c-sdk-src.zip and perfetto-cpp-sdk-src.zip) located directly on our GitHub release pages and also as part of luci artifacts under sdk directory.traced_relay users, data sources no longer match remote machine producers by default. To restore the previous behavior and collect data across boundaries, set TraceConfig.trace_all_machines to true.machine_id is now a non-nullable column in all tables (the host machine is represented by 0 instead of NULL).metadata table has been refactored to support multi-trace and multi-machine traces.stack_id and parent_stack_id columns were removed from the slice table and moved to the slices.stack stdlib module. See migration guidance.TrackEvent log messages are now parsed into track_event.log_message.message to ensure valid JSON conversion.TraceConfig.no_flush_before_write_into_file and replaced it with a write_flush_mode enum to provide more granular control over flushing when streaming traces into a file.Happy Tracing!
A huge thanks to everyone, both inside and outside of Google, who contributed to making Perfetto v54 a success. ♥️
For complete details, see the changelog or view all changes on GitHub.
Download Perfetto v54.0 from our releases page, get started at docs.perfetto.dev, or try the UI directly at ui.perfetto.dev.