See how your application performs without configuring Prometheus or Grafana. Encore automatically collects metrics and provides dashboards that show what matters.
Most metrics setups require instrumenting every endpoint, choosing metric names, and configuring exporters. Encore collects application metrics automatically, so you get visibility from day one.For every API endpoint, Encore tracks request rate, latency percentiles, and error rates. For databases, it tracks query counts and durations. For pub/sub, it tracks message throughput and processing times.
Automatic metrics cover the common cases, but sometimes you need business-specific metrics. Encore provides a simple API for counters and gauges — plus labelled groups — that works locally and in production.Custom metrics show up in the same dashboard alongside automatic metrics, and can be exported to your existing monitoring tools.
import { Counter, CounterGroup } from "encore.dev/metrics";
// A simple counter
export const ordersProcessed = new Counter("orders_processed");
// Or group a counter by labels
interface Labels {
success: boolean;
}
export const ordersByOutcome = new CounterGroup<Labels>("orders_by_outcome");
function process(order: Order) {
// ...
ordersProcessed.increment();
ordersByOutcome.with({ success: true }).increment();
}Encore's built-in dashboards work immediately. If you already use Datadog, Grafana, or another monitoring tool, you can export metrics via Prometheus or OpenTelemetry.
Use both: Encore's dashboards for quick checks, and your existing tools for advanced alerting and correlation.
“What used to take days or weeks of back-and-forth between developers and infra teams is now automated and completed in minutes.”
Get visibility from day one.
Paste into your coding agent to install Encore and scaffold an app.