Profiling

Get code-level insights into your application performance– in production. See your most regressed functions and get to the line of code causing a slowdown.

Loading image for Code-level insight into performance bottlenecks media
Loading image for Optimize resource consumption media
Loading image for Go from a performance issue to the query, function, or line of code in a few clicks media

Profiling Insights for Developers

Drill into the exact functions and lines of code causing a performance issue — no manual tests or searching through spans required. Sentry profiles your code across all environments, pinpointing the functions contributing to a slow span – so you can fix what’s urgent faster.

Visualize call stacks as a flame graph to identify hot code paths consuming the most resources. Improve user experience and reduce infrastructure costs by optimizing slow code causing long load times and UI jank.

Get alerted on performance issues like JSON or image decoding on the main thread that can cause jank or dropped frames for users. See a full stack trace and function evidence to debug the exact problem – then triage, assign, and resolve directly from your issues feed.

Getting Started Platforms Scrolling Logo Background
Getting Started Platforms Scrolling Logo Background
Getting Started Platforms Scrolling Logo Background
Getting Started Platforms Scrolling Logo Background
Getting Started Platforms Scrolling Logo Background
Getting Started Platforms Scrolling Logo Background

Getting started with Sentry is simple

We support every technology (except the ones we don't).
Get started with just a few lines of code.

Grab the Sentry JavaScript SDK:

Click to Copy
<script src="https://browser.sentry-cdn.com/<VERSION>/bundle.min.js"></script>

Configure your DSN:

Click to Copy
Sentry.init({ dsn: 'https://<key>@sentry.io/<project>', // This enables automatic instrumentation (highly recommended), // but is not necessary for purely manual usage // If you only want to use custom instrumentation: // * Remove the BrowserTracing integration // * add Sentry.addTracingExtensions() above your Sentry.init() call integrations: [Sentry.browserTracingIntegration()], // We recommend adjusting this value in production, or using tracesSampler // for finer control tracesSampleRate: 1.0, // Set tracePropagationTargets to control for which URLs distributed tracing should be enabled tracePropagationTargets: ['localhost', /^https://yourserver.io/api/], });

That's it. Check out our documentation to ensure you have the latest instructions.

FAQs

Profiling gives code-level insight into your application performance in a variety of environments, including in production. By periodically capturing information about the code running in your app during a performance transaction, Sentry’s Profiling tool helps pinpoint the exact functions in your code that are consuming excessive CPU and causing performance problems – whether it’s loading screen issues or stuttering scrolls for the frontend user, or heavy infrastructure costs on the backend – so you can take action and fix them quickly.

Profiling supports Browser JavaScript, Python, Node, PHP, Android, and iOS SDKs. Our PHP support includes Laravel and Symfony. Our mobile support is limited to native iOS (Swift and Objective-C only) and Android (Java and Kotlin only). Other platform support is coming soon.

Core performance monitoring functionality like Tracing gives you a high-level overview of your system’s performance, relying on transactions to tell you what is slow and to measure how long it takes. Profiling helps you understand why it’s slow at the code-level, pinpointing the exact file/line number causing the slow request.

Think of profiling as taking a magnifying glass to a transaction or span and seeing exactly what’s happening in the app while that transaction or span is captured. The additional context provided by a profile associated with a transaction can help you quickly debug and fix your performance issue.

Read more about how Profiling complements Tracing and improves your Performance experience here.

You’ll first have to enable performance monitoring in your app (which takes just 5 lines of code). Profiling hooks into the existing performance transactions in your app so there is no additional work to integrate beyond just enabling profiling in the SDK configuration.

The cost of Profiling is based on a unit consumption model that allows customers to pay for only what they need. Please check out our pricing page for details.

Of course we have more content

© 2025 • Sentry is a registered Trademark of Functional Software, Inc.