diff --git a/docs/platforms/native/metrics/index.mdx b/docs/platforms/native/metrics/index.mdx
new file mode 100644
index 0000000000000..88f1d492f0d0a
--- /dev/null
+++ b/docs/platforms/native/metrics/index.mdx
@@ -0,0 +1,30 @@
+---
+title: Set Up Metrics
+sidebar_title: Metrics
+description: "Metrics allow you to send, view and query counters, gauges and measurements from your Sentry-configured apps to track application health and drill down into related traces, logs, and errors."
+sidebar_order: 5756
+beta: true
+---
+
+With Sentry Metrics, you can send counters, gauges, and distributions from your applications to Sentry. Once in Sentry, these metrics can be viewed alongside relevant errors, and searched using their individual attributes.
+
+
+ This feature is currently in open beta. Features in beta are still in progress
+ and may have bugs.
+
+
+## Requirements
+
+
+
+## Usage
+
+
+
+## Options
+
+
+
+## Default Attributes
+
+
diff --git a/docs/product/explore/metrics/getting-started/index.mdx b/docs/product/explore/metrics/getting-started/index.mdx
index 914a9ba59bc53..367eb29662534 100644
--- a/docs/product/explore/metrics/getting-started/index.mdx
+++ b/docs/product/explore/metrics/getting-started/index.mdx
@@ -301,6 +301,14 @@ To set up Sentry Metrics, use the links below for supported SDKs. After it's bee
url="/platforms/go/metrics/"
/>
+### Native
+
+-
+
## Upcoming SDKs
We're actively working on adding Metrics functionality to additional SDKs. Check out these GitHub issues for the latest updates:
diff --git a/platform-includes/metrics/default-attributes/native.mdx b/platform-includes/metrics/default-attributes/native.mdx
new file mode 100644
index 0000000000000..de3788ce95f18
--- /dev/null
+++ b/platform-includes/metrics/default-attributes/native.mdx
@@ -0,0 +1,5 @@
+The Native SDK automatically attaches the following attributes to every metric:
+
+
+
+
diff --git a/platform-includes/metrics/options/native.mdx b/platform-includes/metrics/options/native.mdx
new file mode 100644
index 0000000000000..f434f21980e9d
--- /dev/null
+++ b/platform-includes/metrics/options/native.mdx
@@ -0,0 +1,25 @@
+### before_send_metric
+
+To filter metrics or modify them before they are sent to Sentry, use the `before_send_metric` option:
+
+```c
+static sentry_value_t
+before_send_metric_callback(sentry_value_t metric, void *user_data)
+{
+ (void)user_data;
+
+ // Drop metrics with specific attributes
+ sentry_value_t attributes = sentry_value_get_by_key(metric, "attributes");
+ if (!sentry_value_is_null(sentry_value_get_by_key(attributes, "debug"))) {
+ sentry_value_decref(metric);
+ return sentry_value_new_null();
+ }
+
+ // Return the metric to send it
+ return metric;
+}
+
+sentry_options_set_before_send_metric(options, before_send_metric_callback, NULL);
+```
+
+The `before_send_metric` function receives a metric object and optional `user_data`, and should return the metric object if you want it to be sent to Sentry, or it should free the metric using `sentry_value_decref(metric)` and return a `sentry_value_new_null()` if you want to discard it.
diff --git a/platform-includes/metrics/requirements/native.mdx b/platform-includes/metrics/requirements/native.mdx
new file mode 100644
index 0000000000000..3d6ce67ae2226
--- /dev/null
+++ b/platform-includes/metrics/requirements/native.mdx
@@ -0,0 +1 @@
+Metrics for Native are supported in Sentry Native SDK version [0.12.6](https://github.com/getsentry/sentry-native/releases/tag/0.12.6) and above.
diff --git a/platform-includes/metrics/usage/native.mdx b/platform-includes/metrics/usage/native.mdx
new file mode 100644
index 0000000000000..a3f382f70c4f5
--- /dev/null
+++ b/platform-includes/metrics/usage/native.mdx
@@ -0,0 +1,67 @@
+To enable metrics, set the `enable_metrics` option during SDK initialization:
+
+```c
+sentry_options_t *options = sentry_options_new();
+sentry_options_set_enable_metrics(options, true);
+// set other options
+sentry_init(options);
+```
+
+Once enabled, you can send metrics using the `sentry_metrics_*()` APIs.
+
+### Metric Types
+
+| Type | Use For |
+| -------------- | -------------------------------------------- |
+| `count` | Events (orders, clicks, API calls) |
+| `gauge` | Current values (queue depth, connections) |
+| `distribution` | Value ranges (response times, payload sizes) |
+
+### Counters
+
+Track the number of times something happens:
+
+```c
+sentry_metrics_count("api.requests", 1, sentry_value_new_null());
+```
+
+### Gauges
+
+Track current values that can go up or down:
+
+```c
+sentry_metrics_gauge("active_connections", 42, NULL, sentry_value_new_null());
+```
+
+### Distributions
+
+Track a range of values (e.g., response times):
+
+```c
+sentry_metrics_distribution("response.time", 150.5, SENTRY_UNIT_MILLISECOND, sentry_value_new_null());
+```
+
+### Custom Attributes
+
+Add attributes to filter and group metrics in Sentry:
+
+```c
+sentry_value_t attributes = sentry_value_new_object();
+sentry_value_set_by_key(attributes, "endpoint",
+ sentry_value_new_attribute(sentry_value_new_string("/api/orders"), NULL));
+sentry_value_set_by_key(attributes, "region",
+ sentry_value_new_attribute(sentry_value_new_string("us-west"), NULL));
+
+sentry_metrics_count("api.calls", 1, attributes);
+```
+
+When no custom attributes are needed, pass `sentry_value_new_null()`.
+
+### Units
+
+For `gauge` and `distribution` metrics, specify a unit to help Sentry display values in a human-readable format. The SDK provides `SENTRY_UNIT_*` constants for common units like `SENTRY_UNIT_MILLISECOND`, `SENTRY_UNIT_BYTE`, etc. Pass `NULL` when no specific unit applies.
+
+```c
+sentry_metrics_gauge("memory.usage", 1024, SENTRY_UNIT_BYTE, sentry_value_new_null());
+sentry_metrics_distribution("latency", 42.5, SENTRY_UNIT_MILLISECOND, sentry_value_new_null());
+```