Native OpenTelemetry for Dart & Flutter

You're Going to Need It Anyway.

The OpenTelemetry project (OTel) is a Cloud Native Computing Foundation Graduated Project that standardizes observability across computing languages, platforms and observability vendors. OpenTelemetry is the CNCF's second most active project, after Kubernetes. Most of the industry has already moved to OpenTelemetry. Dart was the last of the fifteen target languages to get an OpenTelemetry SDK. The standard is here. Using OTel bring the benefits of interoperability and compatibility with observability that exists in the rest of most organizations and the rest of the of the industry. As usual, the longer proprietary observability is used, the more expensive the bill and the greater the pain of switching later.

Built in the Open. Sharpened for Pro.

Dartastic.io is made by the original authors of dartastic_opentelemetry, which is in the process of becoming the official OpenTelemetry SDK for the Dart Language. We provide leadership in the OpenTelemetry Dart and Flutter SIG that is currently forming. Beyond our commitment to helping maintain the official SDK, Dartastic.io creates and maintains extensive documentation, examples, demos and over 600 libraries to make the adoption of OTel as easy as possible.

The official dartastic_opentelemetry SDK is strictly Dart. Dartastic.io offers a native matching OpenTelemetry SDK that's much more capable than the official SDK. It's nearly a drop-in replacement, the only change needed after modifying pubspec.yaml is a one-line code change replacing OTel.initialize() with DOTel.initialize(). That small change to a native SDK has clear advantages:

  • Off-event-loop processing. Span encoding and export happen entirely on native threads, not your UI isolate, so span.end() returns in microseconds no matter how large the batch.
  • Telemetry that survives app closing. Spans are held in a persistent, secure queue and replayed on next launch. The official Dart SDK cannot persist traces and important observability data - the spans before the app closes - are typically lost.
  • Crash reporting. The Dartastic native SDK catches native crashes. Every crash report opens directly to the trace that caused it. The official pure Dart SDK dies in a crash. Only the native SDK can capture these critical errors.
  • Native Metrics for all platforms.OTel Pro Dart doesn't give access to native metrics. Dart can't even compute an app's startup time. You can't ship a Dart profile build. To get standard observability for how your app is performing in production, you must use native Dartastic Pro.
    • True app startup time and time to First Contentful Paint
    • Resident memory usage for all Dart and Flutter platforms.
    • Flutter frame build rates, raster rates, dropped frames, jank ratio.
    • Flutter per-widget frames points a finger at slow widgets.
    • Flutter navigation durations.
    • ANR detection - know when your application has become unresponsive.
    • All metrics in iOS MetricKit
    • All metrics in Android Vitals
    • Linux server metrics. Uptime, disk.io, threads, memory faults & swaps, cpu time, network io & connections, container cpu & memory
  • Release health. OTel Pro Crash-free sessions, adoption per version.
  • Backpressure aware. OTel Pro When the backend is overloaded, the app holds off sending telemetry until later.
  • Redaction of personal informationOTel Pro like emails, IPs, auth tokens, SSNs, and credit cards before they ever reach your observability backend. Scrubbing is performed off the UI thread to keep your apps snappy. It's critical for maintaining compliance and avoid legal hassles.

Never lose a crash

The Pro engine fsync's every span batch to disk before span.end() returns. When the app re-launches after a crash, persisted batches are replayed to the OTLP backend automatically. Every span that ended before the crash survives.

Pro engine: recovered from a prior crash, with 3 persisted batches replaying
Recovered batches replay on next launch
Pro engine: pre-crash steps captured, live spans pre-crash inspector
Pre-crash spans inspected in-app
Pro engine: fresh-start state, queue directory empty
Fresh start: queue empty after replay

PII scrubbing on the wire

Engine-side scrubbing of emails, IPs, auth tokens, SSNs, Luhn-valid credit cards and common PII attribute keys. Marked spans get a pii.scrubbed=true breadcrumb so downstream audits can confirm. Dev / staging environments can be allowlisted so raw values flow during local debug.

Pro engine: PII demo with scrubber redacting email, auth token, x-api-key, IP
Production: values redacted before export
Pro engine: dev allowlist disables scrubbing for verbatim local debug
Dev allowlist: scrubbing skipped, audit breadcrumb still emitted
Dartastic Observatory span attributes — authorization, http.client_ip, user.email and x-api-key redacted, with pii.scrubbed=true
In Observatory: redacted span attributes with pii.scrubbed=true

Safe in the Swarm

Your mobile fleet ships telemetry without becoming the problem. When the backend struggles, the engine backs off gracefully. No retry storms, no battery drain, no mysterious data loss.

  • Auto-dedups crash storms: 10K identical exceptions cost one Dartastic Symbolizer call, every span still ships with source lines.
  • Honors backend Retry-After: pauses sends when your OTLP endpoint says “slow down” (429 / 503).
  • Off-event-loop transport: span.end() returns in microseconds no matter what the wire is doing.
  • Persistent on-disk queue: crashes survive to next launch. Every span that ENDED before the crash arrives at your backend.
For mobile fleets at scale

A buggy build can fire the same crash 10,000 times in a minute. The Pro engine deduplicates locally; your OTLP backend doesn't get DDoS'd by your own users' retries, and your Dartastic Symbolizer bill stays predictable.

A degraded backend can take a fleet of mobile apps down with it. The Pro engine listens for the Retry-After header and gracefully pauses; your users never feel the difference.

Using Sentry? Switch easily and save money.

No rip-and-replace, no big-bang cutover. Dartastic forwards your Sentry breadcrumbs to OpenTelemetry span events and shares trace IDs, so the same trace shows up in both Sentry and your OTel backend while you transition. Migrate one screen at a time and keep shipping. The day you flip the last one, you're fully on open standards with no vendor lock-in.

Or don't change any code at all and still save a lot of money. Just change your DSN to point to a Dartastic Hosted stack and immediately see Sentry breadcrumbs as traces in an o11y backend customized for Flutter.

See the Sentry migration path

Already on Sentry or Datadog? Estimate your savings

Subscribe to get access

OTel Dev gets you Dartastic Pro Labs (beta). Pro adds the Dartastic Symbolizer and private Dartastic Pub.

Dartastic OTel Dev

No Jank OTel

Secure checkout via Stripe

$19

per seat, per month

$190/yr · 2 mo free

  • Everything in Dartastic Pub
  • Native OTel runtime for Dart + Flutter
    • Native OTel saves frames
    • Batched export keeps the main isolate smooth
    • Production-grade Dart OpenTelemetry SDK
  • Dartastic Pro Labs — 600 otel_* packages (beta)View catalog
    • AI Observability for Anthropic, OpenAI, …
    • Payments telemetry for Stripe, Square, PayPal, …
    • Vendor bridges - Sentry, Datadog, ... we have ways of making them talk OTel
  • Learn more

Dartastic ComplianceBeta

For Regulated Industries

Secure checkout via Stripe

$1,999

per seat, per month

$19990/yr · 2 mo free

  • Engineered for regulated workflows — life sciences, finance, healthcare
  • Everything in Dartastic Pro
  • Secure on-device tamper-resistant, append-only datastore
  • Aligned with ALCOA+ data integrity principles
  • Crash-survivable on-device telemetry queue
  • License-locked binary — anti-piracy + per-customer attribution
  • On-prem Dartastic Symbolizer — production traces stay inside your perimeter
  • Dartastic Pub detailed audit.
  • Audit retention extended for compliance windows
  • Additional security and compliance attestations on the roadmap
  • Advanced PII scrubbing
    • Custom redaction rules + free-text scrubbing
    • Audit log of every redaction

See all tiers and annual pricing on dartastic.io/pricing.

Dartastic LabsBeta· 50 OSS + 600 Pro packages

Instrument the Dart and Flutter packages you already use. No hand-written spans, no glue code. Dartastic Labs ships 50 open-source otel_* wrappers on pub.dev (Apache 2.0, free forever). Dartastic Pro Labs adds 600 Pro packages on your private Dartastic Pub, with PII scrubbing, frame-budget care, and crash → trace linking layered on top. Pro Labs depend only on other Pro Labs and core Dartastic infrastructure, never on OSS, so your telemetry surface stays internally consistent.

And it stays current: we ship new otel_* wrappers as the Dart and Flutter ecosystem evolves, so your instrumentation keeps pace with your stack. Categories below.

AWS Cloud (47):otel_amplifyotel_aws_amplifyotel_aws_api_gatewayotel_aws_appsyncotel_aws_athenaotel_aws_bedrockotel_aws_cloudfrontotel_aws_cloudwatchotel_aws_cognitootel_aws_comprehendotel_aws_dynamodbotel_aws_ecrotel_aws_ecsotel_aws_eksotel_aws_eventbridgeotel_aws_glueotel_aws_iot_coreotel_aws_kinesisotel_aws_kmsotel_aws_lambdaotel_aws_mskotel_aws_neptuneotel_aws_pollyotel_aws_rdsotel_aws_rekognitionotel_aws_route53otel_aws_s3otel_aws_secretsmanagerotel_aws_sesotel_aws_snsotel_aws_sqsotel_aws_step_functionsotel_aws_stsotel_aws_textractotel_aws_transcribeotel_bigqueryotel_cloudfrontotel_cloudwatch_logsotel_dynamodbotel_dynamodb_streamsotel_eventbridgeotel_kinesisotel_lambdaotel_snsotel_sqsotel_step_functionsotel_xray
GCP Cloud (14):otel_firestoreotel_gcp_artifact_registryotel_gcp_bigqueryotel_gcp_bigtableotel_gcp_cloud_functionsotel_gcp_cloud_runotel_gcp_cloud_sqlotel_gcp_cloud_storageotel_gcp_compute_engineotel_gcp_firestoreotel_gcp_gkeotel_gcp_pubsubotel_gcp_secret_managerotel_gcp_spanner
Azure Cloud (19):otel_azure_ai_searchotel_azure_aksotel_azure_app_serviceotel_azure_blob_storageotel_azure_container_registryotel_azure_content_safetyotel_azure_cosmos_dbotel_azure_devopsotel_azure_event_hubsotel_azure_functionsotel_azure_iot_hubotel_azure_key_vaultotel_azure_monitorotel_azure_openaiotel_azure_service_busotel_azure_speechotel_azure_sql_databaseotel_azure_translatorotel_azure_vision
Firebase (8):otel_crashlyticsotel_firebase_analyticsotel_firebase_app_checkotel_firebase_authotel_firebase_functionsotel_firebase_hostingotel_firebase_in_app_messagingotel_firebase_performance
Cloudflare (7):otel_cloudflareotel_cloudflare_aiotel_cloudflare_d1otel_cloudflare_dnsotel_cloudflare_r2otel_cloudflare_streamotel_cloudflare_workers
AI — LLM foundation models (23):otel_anthropicotel_anyscaleotel_basetenotel_cohereotel_deepseekotel_fal_aiotel_fireworks_aiotel_google_aiotel_groqotel_huggingfaceotel_jina_aiotel_mistralotel_modalotel_octoaiotel_openaiotel_perplexityotel_perplexity_sonarotel_replicateotel_runpodotel_together_aiotel_vertex_aiotel_voyage_aiotel_writer
AI — LLM observability (4):otel_arizeotel_braintrustotel_heliconeotel_langfuse
AI — Agent frameworks (6):otel_autogenotel_crewaiotel_haystackotel_langchainotel_langgraphotel_llamaindex
AI — Voice agents (4):otel_bland_aiotel_retell_aiotel_vapiotel_voiceflow
AI — Speech (STT / TTS) (8):otel_assemblyaiotel_cartesiaotel_deepgramotel_elevenlabsotel_lmntotel_play_htotel_rev_aiotel_speechmatics
AI — Vision / OCR / document parsing (5):otel_llamaparseotel_mindeeotel_nanonetsotel_reductootel_unstructured_io
AI — Generative image / video / music (10):otel_heygenotel_ideogramotel_leonardo_aiotel_lumaotel_pikaotel_recraftotel_runwayotel_stability_aiotel_sunootel_synthesia
AI — Translation (2):otel_deeplotel_google_translate
AI — Enterprise / web search for LLMs (5):otel_exaotel_firecrawlotel_gleanotel_mendableotel_tavily
AI — Safety / moderation (1):otel_perspective_api
AI — On-device ML (3):otel_mlkit_barcode_scanningotel_mlkit_face_detectionotel_mlkit_text_recognition
Vector databases (7):otel_chromaotel_lancedbotel_milvusotel_pgvectorotel_pineconeotel_qdrantotel_weaviate
Search engines (5):otel_algoliaotel_elasticsearchotel_meilisearchotel_opensearchotel_typesense
Distributed SQL (3):otel_cockroachdbotel_tidbotel_yugabytedb
Time-series databases (3):otel_influxdbotel_questdbotel_timescaledb
Analytics / warehouse / lakehouse (6):otel_clickhouseotel_clickhouse_cloudotel_databricksotel_duckdbotel_redshiftotel_snowflake
OLTP — managed SQL (7):otel_appwriteotel_faunaotel_neonotel_planetscaleotel_supabaseotel_tursootel_xata
OLTP / NoSQL — self-hosted (16):otel_aerospikeotel_arangodbotel_cassandraotel_couchbaseotel_couchdbotel_dragonflyotel_etcdotel_memcachedotel_mongodbotel_mongodb_atlasotel_mysqlotel_neo4jotel_postgresotel_redisotel_scylladbotel_surrealdb
Cache / KV — managed (1):otel_upstash
Pub-sub / queues / streaming (10):otel_ablyotel_amqpotel_confluent_cloudotel_kafkaotel_natsotel_pubnubotel_pusherotel_pusher_channelsotel_rabbitmqotel_redpanda
Distributed task queues (8):otel_bullmqotel_celeryotel_deferotel_hatchetotel_inngestotel_quirrelotel_sidekiqotel_trigger_dev
Durable execution / workflows / ETL (9):otel_airbyteotel_airflowotel_dagsterotel_dbt_cloudotel_fivetranotel_prefectotel_restateotel_temporalotel_temporal_cloud
Service mesh / API gateway (6):otel_apigeeotel_envoyotel_istiootel_kongotel_linkerdotel_traefik
Container registries (1):otel_harbor
Incident / ITSM / on-call (5):otel_incident_iootel_opsgenieotel_pagerdutyotel_servicenowotel_statuspage
Frontend / web platforms / alt clouds (6):otel_digitaloceanotel_fly_iootel_netlifyotel_railwayotel_renderotel_vercel
Project mgmt / collab / docs / wikis (9):otel_airtableotel_asanaotel_clickupotel_confluenceotel_jiraotel_linearotel_mondayotel_notionotel_trello
Chat platforms (5):otel_discordotel_microsoft_teamsotel_msteamsotel_slackotel_telegram
CI/CD (7):otel_bitbucket_pipelinesotel_buildkiteotel_circleciotel_codemagicotel_github_actionsotel_gitlab_ciotel_jenkins
VCS / code hosting (2):otel_githubotel_gitlab
Code quality / security / search (3):otel_snykotel_sonarqubeotel_sourcegraph
Cross-browser / test automation (3):otel_browserstackotel_playwrightotel_saucelabs
Zero-trust / VPN / access (2):otel_tailscaleotel_teleport
IaC / orchestration / GitOps (3):otel_argocdotel_kubernetes_apiotel_terraform_cloud
Auth / identity (22):otel_appauthotel_auth0otel_clerkotel_facebook_authotel_fronteggotel_fusionauthotel_google_sign_inotel_kakaootel_keycloakotel_kindeotel_lineotel_logtootel_msalotel_oauthotel_oktaotel_oryotel_sign_in_with_appleotel_stytchotel_supertokensotel_wechatotel_workosotel_zitadel
KYC / identity verification / fraud (7):otel_alloyotel_jumiootel_onfidootel_personaotel_sumsubotel_trulioootel_veriff
Secrets / vaults (3):otel_dopplerotel_infisicalotel_vault
Payments / billing / subscriptions (14):otel_adyenotel_braintreeotel_chargebeeotel_checkout_comotel_gocardlessotel_lemonsqueezyotel_mollieotel_paddleotel_paypalotel_paystackotel_razorpayotel_recurlyotel_squareotel_stripe
Corporate cards / spend mgmt (2):otel_brexotel_ramp
Embedded finance / BaaS / card issuing (6):otel_increaseotel_lithicotel_marqetaotel_modern_treasuryotel_moovotel_unit
Open banking / financial data (5):otel_finchotel_mxotel_plaidotel_truelayerotel_yodlee
Consumer & business banking / FX (4):otel_mercuryotel_monzootel_revolutotel_wise
Tax / sales tax automation (8):otel_anrokotel_avalaraotel_numeralotel_quadernootel_sovosotel_stripe_taxotel_taxjarotel_vertex
Accounting (5):otel_freshbooksotel_oracle_netsuiteotel_quickbooksotel_sage_intacctotel_xero
Usage-based billing / metering (4):otel_lagootel_metronomeotel_orbotel_stigg
Cryptocurrency exchanges (4):otel_binanceotel_coinbaseotel_krakenotel_okx
Crypto / Web3 infrastructure (7):otel_alchemyotel_heliusotel_infuraotel_moralisotel_quicknodeotel_thirdwebotel_walletconnect
POS / retail / restaurant (4):otel_clover_posotel_lightspeedotel_shopify_posotel_toast
E-commerce platforms (9):otel_bigcommerceotel_commercetoolsotel_magentootel_medusaotel_rechargeotel_saleorotel_shopifyotel_vtexotel_woocommerce
CRM (9):otel_activecampaignotel_attiootel_closeotel_copperotel_dynamics_365otel_hubspototel_pipedriveotel_salesforceotel_zoho_crm
Sales engagement / prospecting (6):otel_apollo_iootel_clayotel_clearbitotel_outreachotel_salesloftotel_zoominfo
Email senders / ESPs / transactional mail (16):otel_beehiivotel_brazeotel_brevootel_customer_iootel_iterableotel_kitotel_klaviyootel_loopsotel_mailchimpotel_mailgunotel_mandrillotel_marketootel_postmarkotel_resendotel_sendgridotel_sparkpost
Ad platforms (9):otel_google_adsotel_linkedin_adsotel_meta_adsotel_pardototel_pinterest_adsotel_reddit_adsotel_snap_adsotel_tiktok_adsotel_x_ads
CDP / reverse ETL (5):otel_censusotel_hightouchotel_rudderstackotel_segmentotel_twilio_engage
Workflow automation SaaS (3):otel_n8notel_pipedreamotel_zapier
Product analytics (6):otel_amplitudeotel_heapotel_hotjarotel_mixpanelotel_pendootel_posthog
Feature flags / experimentation (12):otel_configcatotel_devcycleotel_eppootel_flagsmithotel_go_feature_flagotel_growthbookotel_hypertuneotel_launchdarklyotel_optimizelyotel_splitotel_statsigotel_unleash
Observability / errors / RUM / APM (14):otel_appdynamicsotel_bugsnagotel_clarityotel_datadogotel_dynatraceotel_embraceotel_fullstoryotel_honeycombotel_lightstepotel_logrocketotel_new_relicotel_sentryotel_signozotel_splunk
Mobile attribution (5):otel_adjustotel_app_linksotel_appsflyerotel_branch_iootel_singular
Mobile monetization (2):otel_google_mobile_adsotel_in_app_purchase
Comms — SMS / voice / chat APIs (4):otel_plivootel_sinchotel_twiliootel_vonage
Comms — video / RTC (9):otel_agoraotel_daily_cootel_hundredmsotel_jitsi_meetotel_livekitotel_sendbirdotel_stream_chatotel_wherebyotel_zoom
Calendar / scheduling (7):otel_calcomotel_calendlyotel_cronofyotel_google_calendarotel_nylasotel_outlook_calendarotel_savvycal
Geo / maps / IP intelligence (8):otel_google_mapsotel_here_mapsotel_ipdataotel_ipinfootel_mapboxotel_maxmindotel_radarotel_tomtom
Object storage / files (4):otel_backblaze_b2otel_boxotel_dropboxotel_wasabi
Media / image transforms (5):otel_bunnyotel_cloudinaryotel_imgixotel_muxotel_uploadcare
CDN (1):otel_fastly
Web fonts (1):otel_google_fonts
Customer support / helpdesk / inbox (10):otel_crispotel_freshdeskotel_frontotel_front_appotel_gladlyotel_gorgiasotel_helpscoutotel_intercomotel_kustomerotel_zendesk
HR / payroll / EOR (6):otel_adpotel_bamboohrotel_deelotel_gustootel_ripplingotel_workday
Recruiting / ATS (5):otel_ashbyotel_greenhouseotel_leverotel_recruiteeotel_workable
Document signing (7):otel_adobe_signotel_anvilotel_boldsignotel_docusignotel_dropbox_signotel_pandadocotel_signnow
Webhook gateways (3):otel_convoyotel_hookdeckotel_svix
In-app purchase / paywalls / subscription analytics (3):otel_apphudotel_qonversionotel_revenuecat
Notifications / push (8):otel_airshipotel_apnsotel_courierotel_expo_pushotel_fcmotel_knockotel_magicbellotel_onesignal
CMS / headless content (7):otel_contentfulotel_hygraphotel_payloadotel_prismicotel_sanityotel_storyblokotel_strapi
Localization / translation mgmt (3):otel_crowdinotel_lokaliseotel_phrase
Forms / surveys (4):otel_filloutotel_jotformotel_tallyotel_typeform
Email validation / discovery (5):otel_briteverifyotel_hunter_iootel_mailparserotel_neverbounceotel_zerobounce
Reviews / reputation (3):otel_bazaarvoiceotel_trustpilototel_yotpo
Customer feedback / roadmap (3):otel_cannyotel_featurebaseotel_productboard
Affiliate / partnerships (3):otel_firstpromoterotel_impactotel_rewardful
Local listings / local SEO (1):otel_yext
Compliance automation (4):otel_drataotel_secureframeotel_tugboat_logicotel_vanta
Healthcare / FHIR (2):otel_epic_fhirotel_redox
Sports data (1):otel_sportradar
Travel APIs (2):otel_amadeusotel_duffel
Entertainment / media APIs (1):otel_spotify
Internal tools / no-code (1):otel_retool
Flutter — state mgmt + routing (13):otel_auto_routeotel_blocotel_command_itotel_flutter_blocotel_flutter_commandotel_flutter_riverpodotel_get_itotel_go_routerotel_mobxotel_providerotel_reduxotel_riverpodotel_watch_it
Flutter — local storage (7):otel_driftotel_flutter_secure_storageotel_get_storageotel_hiveotel_isarotel_shared_preferencesotel_sqflite
Flutter — HTTP / networking / GraphQL (11):otel_chopperotel_connectivity_plusotel_diootel_graphqlotel_graphql_flutterotel_grpcotel_httpotel_mqtt_clientotel_socket_io_clientotel_url_launcherotel_web_socket_channel
Flutter — logging (6):otel_fimberotel_loggerotel_loggingotel_loggyotel_simple_loggerotel_talker
Flutter — backend / framework (3):otel_cloud_firestoreotel_cloud_functionsotel_shelf
Flutter — push / background (2):otel_flutter_local_notificationsotel_workmanager
Protocol / infra helpers (2):otel_webhookotel_websocket