The max aggregation type selects the highest value of a specified event property from all received events.

MAX calculation method

MAX billable metric

Here is how you can create a max aggregation from the UI:

  1. Access the “Billable metrics” section via the side menu;
  2. Create a new billable metric;
  3. Define a name, a code and an optional description;
  4. Select “max” as the aggregation type;
  5. Define the property to aggregate;
  6. Apply dimension groups if any; and
  7. Click “Add billable metric”.

This billable metric is metered only, meaning it cannot be recurring, and the number of billing units resets to 0 at the end of each period.

Calculation example

Lago calculates the MAX(events.properties.property_name) for the two following events received.

//Event received #1
{
    "transaction_id": "transaction_1",
    "external_customer_id": "1",
    "timestamp": "2022-03-16T00:00:00Z",
    "code": "api_requests",
    "properties": {
        "total_requests": 20
    }
}

//Event received #2
{
    "transaction_id": "transaction_2",
    "external_customer_id": "1",
    "timestamp": "2022-03-17T00:00:00Z",
    "code": "api_requests",
    "properties": {
        "total_requests": 10
    }
}

In that case, with this aggregation type, Lago takes the higest value of total_requests property from all events, resulting in a billable value of 20 units.