Sum bucket aggregations
The sum_bucket aggregation is a sibling aggregation that calculates the sum of a metric in each bucket of a previous aggregation.
The specified metric must be numeric, and the sibling aggregation must be a multi-bucket aggregation.
Parameters
The sum_bucket aggregation takes the following parameters.
| Parameter | Required/Optional | Data type | Description |
|---|---|---|---|
buckets_path | Required | String | The path of the aggregation buckets to be aggregated. See Buckets path. |
gap_policy | Optional | String | The policy to apply to missing data. Valid values are skip and insert_zeros. Default is skip. See Data gaps. |
format | Optional | String | A DecimalFormat formatting string. Returns the formatted output in the aggregation’s value_as_string property. |
Example
The following example creates a date histogram with a one-month interval from the OpenSearch Dashboards e-commerce sample data. The sum subaggregation calculates the sum of bytes for each month. Finally, the sum_bucket aggregation calculates the total number of bytes per month by totaling these sums:
POST opensearch_dashboards_sample_data_logs/_search { "size": 0, "aggs": { "visits_per_month": { "date_histogram": { "field": "@timestamp", "interval": "month" }, "aggs": { "sum_of_bytes": { "sum": { "field": "bytes" } } } }, "sum_monthly_bytes": { "sum_bucket": { "buckets_path": "visits_per_month>sum_of_bytes" } } } } Example response
The aggregation returns the sum of bytes from all the monthly buckets:
{ "took": 10, "timed_out": false, "_shards": { "total": 1, "successful": 1, "skipped": 0, "failed": 0 }, "hits": { "total": { "value": 10000, "relation": "gte" }, "max_score": null, "hits": [] }, "aggregations": { "visits_per_month": { "buckets": [ { "key_as_string": "2025-03-01T00:00:00.000Z", "key": 1740787200000, "doc_count": 480, "sum_of_bytes": { "value": 2804103 } }, { "key_as_string": "2025-04-01T00:00:00.000Z", "key": 1743465600000, "doc_count": 6849, "sum_of_bytes": { "value": 39103067 } }, { "key_as_string": "2025-05-01T00:00:00.000Z", "key": 1746057600000, "doc_count": 6745, "sum_of_bytes": { "value": 37818519 } } ] }, "sum_monthly_bytes": { "value": 79725689 } } }