Datadog vs. Sentry: a side-by-side comparison for 2024

Jenda Tovarys
Updated on January 6, 2024

Datadog and Sentry are among the most popular tools for monitoring your applications. While their features overlap, they do not offer the same product. So, which one to choose?

To put it briefly, if you find error tracking and real-time application performance data crucial for your monitoring stack, then Sentry is the right tool. If you are building an observability suite and want to start with something out-of-the-box, Datadog is just the right tool. If you want to learn more, scroll down to see my side-by-side comparison of Datadog and Sentry.

šŸ‘‰ What is error tracking, and how does it fit into APM?

Error tracking is a specific way of extracting data about every operation resulting in a message like ZeroDivisionError: float division by zero. You can leverage these insights to troubleshoot new issues in the application's code that slipped past testing. Error tracking it's often used by or integrated into APM solutions.

Application Performance Monitoring (APM) is a broad term, sheltering a set of tools and practices for analyzing the performance of services. So if a successful API call takes more time than usual, an APM solution will help you start tracking and solve this issue.

Datadog vs. Sentry: side-by-side comparison

I've coded a simple python app made to send an HTTP request to a Django server. Then raised errors by not running the server, abruptly killing the script, not importing modules, or dividing by zero.

Based on the collected data, I compared them based on the following criteria:

  • Application performance monitoring and error tracking features
  • Ease of integration and onboarding support
  • Alerting and incident management
  • Pricing
  • Third-party reviews and my personal preferences

1. Error Tracking and APM features

Sentry_Dash

Sentry is a dedicated error tracking and performance monitoring service. The UI offers multiple views for each of the included tools Applications are divided into projects based on the language or framework. Projects UI offers a centralized view of the entire service and key performance data. From the Issues and Performance UIs, you can query data based on different criteria and access cross-project data, issues influencing multiple services, etc. Each issue view allows you to navigate along an entire trace and quickly get information about the issue without ever leaving the tab.

All issues and events are enriched with additional data. Such as a trail of events leading to the error (breadcrumbs), data about the end-user.

In summary, Sentry offers following features:

  • Standalone error tracking
  • Unified application performance monitoring (from a wide support of languages and frameworks)
  • Basic issue (incident) management
  • Cross-platform issue tracking
  • Custom dashboards
  • Release (version) impact
  • Code ownership

dd_apm_dash

Datadog offers APM as an add-on to the existing Pro or Enterprise Infrastructure monitoring plan. Error tracking, depending on the platform, is a part of APM and RUM solutions. Captured traces serve not only for workflows, from generating metrics, logs correlation, trend analysis, and even SecOps, depending on your setup.

After successfully instrumenting your service, Datadog offers multiple different views allowing from which you can access and further evaluate the data from the isolated Error tracking to a saturated view of your entire operation in the Event explorer.

Datadog has the upper hand in further data processing, since you can corellate APM data with metrics from synthetic monitoring of the rest of your infrastructure, ingested logs and security insights.

Datadog, as a platform offers following features:

  • APM & Code profiling ( + error tracking)
  • UX Monitoring ( + error tracking)
  • Incident management
  • Infrastructure monitoring
  • Cloud and application security tools
  • Custom queries, views and dashboards
  • Log management

šŸ”­ A complete log management tool offers observability far beyond error tracking.

Fill observability gaps with Logtail in 5 minutes.

2. Onboarding and ease of use

With Sentry, it takes about 10 minutes to the instrument and collects performance data. I started by creating a python project. During the setup, I got to pre-configure basic alerting and project ownership. Following project creation, Sentry provided me with an automatically generated code needed for capturing errors.

sentry_sdk_snippet

After instrumenting my app in a virtualenv environment. I ran my script from the console with python my_app.py each time, purposefully causing an error in a different way. All this resulted in registering new errors, creating a performance view, triggering an alert, and sending me an e-mail.

sentry_code

As for the onboarding support, Sentry offers two dummy projects for backend and frontend monitoring, guiding you through the process. There's also an interactive sandbox showcasing how the platform looks in production. Overall, Sentry has well-written documentation for each feature, from error tracking to developing your integrations.

dd_host_agent

By design, you can't run Datadog's APM without Datadog's infrastructure monitoring agent. This was easily done by copypasting a generated command.

Once again, I was working in a virtualenv.I installed the tracer by running pip install ddtrace and instrumenting the code.

After running a few checks on the function, all I need to do is to use the UI to generate your own snippet and run it from the console.

dd_code

Instrumenting Datadog's APM felt more difficult. Personally, I find the documentation poorly structured mainly because individual troubleshooting pages, tips, and guides are tough to navigate since they are not linked together and require additional effort from the end-user to find them.s

After a successful ddtrace-run flow with the configuration you can see above, we received the error in the Error Tracking UI like this:

dd_code

The entire process took more time and leaves a bigger footprint. However, it's fair to say, with some groundwork, you can leverage the power of the entire Datadog platform to match Sentry's features, and benefit from additional features not available in Sentry, like logging for example.

3. Alerting features and incident management

Sentry_issues

Each new issue created in Sentry might be considered an incident. However, in a minimal scope. I could acknowledge and resolve issues and set up custom issue handling, code ownership, and notification workflows.

The alert configuration is a click-based setup allowing you to create alerts with conditional statements. This might feel a bit limiting, but it's fairly easy to figure out or even find a workaround if needed, for example, by creating custom metrics. But that's it; any advanced features like on-call scheduling, alerting (via phone), or incident management must be outsourced.

dd_incident_management

Datadog offers an entire incident management suite. Declaring incidents is fairly easy and can be done both manually or automatically by setting up monitors. The alerting setup requires a bit of work but is rather flexible. By declaring @parameters directly in the message text, you can custom-tailor your alerts with many variables and rules. Alerts, by default, appear within the UI and are sent to your e-mail inbox.

While Datadog allows you to handle incidents a bit better, you can't handle on-call scheduling and advanced escalations.

ā˜Žļø Want to manage alerts via Slack, get a call or create on-call calendars?

Try Better Uptime and resolve incidents from Sentry or Datadog, in minutes.

4. Pricing

sentry_pricing

Sentry offers a fairly generous free subscription. Sentry is also available in a self-hosted version, though it's a bit more limited compared to the SaaS edition. Sentry's pricing is quite transparent, and I especially like that it allows you two visualize your spending in advance. On top of that, Sentry offers a spike protection feature, which prevents accidental overspending.

dd_pricing

To get Datadog's APM, you must get it alongside Infrastructure monitoring, which effectively increases the bill by at least $15/host per month. On its own, APM starts at $31/per month per host. RUM monitoring (for frontend error tracking) is divided between Mobile and Browser subscriptions, starting at $0.45/month per 1000 sessions.

Sentry is not cheap! It's just that its pricing is easier to navigate, and you'll need an infrastructure monitoring tool anyway. Since Sentry has a really specific focus and functionality, you'll need more tools to reach observability. But if you pick the right tools, Sentry will fit in just fine, and you'll get your hands on a powerful observability stack within minutes.

5. Third-party reviews and my preferences

āš ļø Due to the disproportionality in the number of reviews both tools receive around the internet, it's fair to say that this should be considered no more than a rough guideline for your decision-making. I've decided to incorporate this part because I deem some arguments mentioned below worth exploring further.

Sentry's users appreciate the ease of deployment, onboarding support, and the freedom it gives them during setup and maintenance. Most negative reviews address the UI and how easy it is for Sentry to become noisy. It's also important to mention the controversy concerning relicensing Sentry in 2019 and it no longer being ā€œopen-sourceā€ per se. While I sympathize with some community members who felt betrayed, I can also understand the reasoning behind this decision.

In the case of Datadog, reviews come from those who love that Datadog is a fully managed and deeply intertwined platform and offers a variety of products and integrations. Slightly negative reviews mainly express second thoughts about the product, especially due to really complex pricing policies and poor onboarding support and documentation.

The unfavorable reviews are quite bitter and rely on the personal experience of users. They are based on arguments like additional fees for custom metrics in the claim that Datadog intentionally makes it harder to work with third-party tools. While I can't prove nor dismiss any of these claims, I can understand the reasoning behind complaints concerning pricing, potential vendor lock-in, and poorly written documentation.

Personally, I enjoyed working with Sentry much more. The small number of jokes and a really down-to-earth presentation made the entire experience wholesome. Needless to say, regardless of my bias, I can see myself working with Datadog in a more pragmatic sense. Mainly due to a really rich integration platform, making it easier to integrate Datadog anywhere. And in times of need, I can still consult Reddit or GitHub forums, addressing the issues documentation fails to.

Final Thoughts

Based on my own experience, I think it's fair to say that the decision will all come down to your preferences, existing stack, and operation model. Big enterprises might benefit from Datadog's integrated, ā€œall-in-oneā€ solution and can allocate the resources needed to make Datadog a powerful and reliable observability suite.

On the other hand, Sentry does one thing and does it really well and works equally well for indie developers and big business projects. The major trade-off is the limited scope, which requires you to deploy Sentry alongside other DevOps tools.

That being said, if you got all the way here, thank you for reading my article. If you want to read more, check out my Datadog vs. New Relic comparison, or other questions and guides on the Better Stack Community platform.

Make your mark

Join the writer's program

Are you a developer and love writing and sharing your knowledge with the world? Join our guest writing program and get paid for writing amazing technical guides. We'll get them to the right readers that will appreciate them.

Write for us
Writer of the month
Marin Bezhanov
Marin is a software engineer and architect with a broad range of experience working...
Build on top of Better Stack

Write a script, app or project on top of Better Stack and share it with the world. Make a public repository and share it with us at our email.

community@betterstack.com

or submit a pull request and help us build better products for everyone.

See the full list of amazing projects on github