Elastic APM

Free and open application performance monitoring

Already housing logs and system metrics in Elasticsearch? Expand to application metrics with free and open Elastic APM. See exactly where your application is spending time so you can quickly fix issues and feel good about the code you push.

Download the latest version

Learn how to get started with application performance monitoring using the Elastic Stack.

Watch video

Take a deep dive into Elastic APM with our APM training.

View training

See how to get your observability initiative up and running quickly with Elasticsearch Service.

Watch video


Automatically determine the cause of slowdowns with APM correlations. Plus native support for OpenTelemetry traces and metrics.

Start root cause investigations here


You just received an alert about an unusually high error rate. What’s next? Open up the services overview page for a summary of a service’s transactions, dependencies, and critical metrics so you can understand the scope of issues in real time. Once you’re ready to dig deeper, our dedicated UI uses the power of search to help you identify bottlenecks and zero in on problematic changes at the code level.


Connect the dots with service maps

Get a visual representation of how your services are connected in one, clear-cut view. See how they’re performing with highlighted KPIs, identify potential problem areas with health indicators powered by machine learning, and zoom in on individual services to identify blockers. Start here to investigate outage impacts and take action to optimize performance across all of your services.

String it all together with distributed tracing

Wondering how requests are flowing through your entire infrastructure? String transactions together with a distributed trace and get a clear view of how your services are interacting. See which messaging frameworks (like Kafka) were utilized and visualize service calls across them, find where latency issues are arising in the path, and pinpoint the components that need optimizing. Test code locally using multistep synthetic monitoring capabilities, and then monitor user experience live from a curated view.

Detect anomalous response times with machine learning

Enable machine learning-based anomaly detection directly from the APM app in Kibana. Find the abnormal behavior and the problematic pieces with machine learning features that automatically model your data. Per-environment machine learning automatically identifies transaction anomalies as your applications scale up or out.

Get alerted, then react

Our dashboards and apps are pretty, but you’ll probably have to look away at some point. Stay up-to-date on how your code is performing with our alerting features. Create anomaly-based alerts tied to the severity of the detections, or threshold-based alerts for when you are nearing your SLAs. Get notifications via email, Slack, PagerDuty, and more so you never miss a thing.

It’s developer-friendly and language-friendly

Elastic APM ships with support for Java, Go, Node.js, Python, PHP, Ruby, .NET, and Real User Monitoring (JavaScript) for multiple-page and single-page applications — with more languages on the way. Plus, with support for open standards like Jaeger and OpenTelemetry, sending data from existing instrumented apps to Elastic APM is a breeze. Don’t see what you need? Build it or leverage the open source community. Explore all the languages we support.


Keep it simple. No pricing by agent.

No matter how you start or grow with Elastic, you shouldn’t be constrained by how you get value from our products. Just pay for the resources you need, deploy them how you'd like, and do even more great things with Elastic.

Just four lines of code will get you started

Deploy a cluster on Elastic Cloud or grab a fresh installation of the Elastic Stack, spin up an APM Server, and add a bit of code to instrument your app with agents. That's all it takes to send your application performance data to Elasticsearch. Use the server-side agent to track your application, and Real User Monitoring (RUM) to catch any problems in the browser. Have questions or want to tweak your install? Visit the Elastic APM documentation or join us on the Elastic APM forum.

What just happened?

The APM agent installed in your application collects and streams application performance metrics to your APM server, where they are processed and stored in Elasticsearch. In a matter of minutes you can start viewing your performance data either in the dedicated APM app or prebuilt dashboards.

Advanced configuration?

Please refer to the APM documentation.

APM is just one way to slice your data

Have security events? Website or server logs? Documents with tons of text? Centralize it all in the Elastic Stack and use free and open Elastic Observability to expand your analyses, lower operational costs, and make your use case even richer.



Fast and scalable logging that won't quit.


Do the numbers: CPU, memory, and more.


Monitor and react to availability issues across your apps and services.