---
title: influxdb.cardinality() function
description: influxdb.cardinality() returns the series cardinality of data retrieved from InfluxDB.
url: https://docs.influxdata.com/flux/v0/stdlib/influxdata/influxdb/cardinality/
estimated_tokens: 2748
product: Flux
version: v0
---

# influxdb.cardinality() function

-   Flux 0.92.0+
-   View InfluxDB support

`influxdb.cardinality()` returns the series cardinality of data retrieved from InfluxDB.

Although this function is similar to InfluxQL’s [`SHOW SERIES CARDINALITY`](/influxdb/v1/query_language/spec/#show-series-cardinality), it works in a slightly different manner.

`influxdb.cardinality()` is time bounded and reports the cardinality of data that matches the conditions passed into it rather than that of the bucket as a whole.

##### Function type signature

```js
(
    start: A,
    ?bucket: string,
    ?bucketID: string,
    ?host: string,
    ?org: string,
    ?orgID: string,
    ?predicate: (r: {B with _value: C, _measurement: string, _field: string}) => bool,
    ?stop: D,
    ?token: string,
) => stream[{_value: int, _stop: time, _start: time}] where A: Timeable, D: Timeable
```

For more information, see [Function type signatures](/flux/v0/function-type-signatures/).

## Parameters

### bucket

Bucket to query cardinality from.

### bucketID

String-encoded bucket ID to query cardinality from.

### org

Organization name.

### orgID

String-encoded organization ID.

### host

URL of the InfluxDB instance to query.

See [InfluxDB Cloud regions](/influxdb/cloud/reference/regions/) or [InfluxDB OSS URLs](/influxdb/v2/reference/urls/).

### token

InfluxDB API token.

### start

(Required) Earliest time to include when calculating cardinality.

The cardinality calculation includes points that match the specified start time. Use a relative duration or absolute time. For example, `-1h` or `2019-08-28T22:00:00Z`. Durations are relative to `now()`.

### stop

Latest time to include when calculating cardinality.

The cardinality calculation excludes points that match the specified start time. Use a relative duration or absolute time. For example, `-1h` or `2019-08-28T22:00:00Z`. Durations are relative to `now()`. Default is `now()`.

The default value is `now()`, so any points that have been written into the future will not be counted unless a future `stop` date is provided.

### predicate

Predicate function that filters records. Default is `(r) => true`.

## Examples

-   [Query series cardinality in a bucket](#query-series-cardinality-in-a-bucket)
-   [Query series cardinality in a measurement//](#query-series-cardinality-in-a-measurement)
-   [Query series cardinality for a specific tag](#query-series-cardinality-for-a-specific-tag)
-   [Query series cardinality of Data Written In the Last 4 Hours](#query-series-cardinality-of-data-written-in-the-last-4-hours)

### Query series cardinality in a bucket

```js
import "influxdata/influxdb"

influxdb.cardinality(bucket: "example-bucket", start: time(v: 1))
```

Note: if points have been written into the future, you will need to add an appropriate `stop` date

### Query series cardinality in a measurement//

```js
import "influxdata/influxdb"

influxdb.cardinality(
    bucket: "example-bucket",
    start: time(v: 1),
    predicate: (r) => r._measurement == "example-measurement",
)
```

### Query series cardinality for a specific tag

```js
import "influxdata/influxdb"

influxdb.cardinality(bucket: "example-bucket", start: time(v: 1), predicate: (r) => r.exampleTag == "foo")
```

### Query Cardinality of Data Written In the Last 4 hours

```js
import "influxdata/influxdb"

influxdb.cardinality(bucket: "example-bucket", start: -4h)
```

#### Related

-   [SHOW CARDINALITY in InfluxQL](/influxdb/v1/query_language/spec/#show-cardinality)
-   [usage.limits() function](/flux/v0/stdlib/experimental/usage/limits/)

[metadata](/flux/v0/tags/metadata/)
