<!--
{
  "availability" : [
    "iOS: 8.0.0 -",
    "iPadOS: 8.0.0 -",
    "macCatalyst: 8.0.0 -",
    "tvOS: 10.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "HomeKit",
  "identifier" : "/documentation/HomeKit/HMCharacteristicMetadata",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "HomeKit"
    ],
    "preciseIdentifier" : "c:objc(cs)HMCharacteristicMetadata"
  },
  "title" : "HMCharacteristicMetadata"
}
-->

# HMCharacteristicMetadata

Metadata that describes a characteristic’s value and that may be useful for presentation purposes.

```
class HMCharacteristicMetadata
```

## Overview

Querying a characteristic’s metadata enables you to build a user interface that reflects the underlying units, minima, and maxima, and other aspects of the characteristic value.

## Topics

### Describing a characteristic

[`manufacturerDescription`](/documentation/HomeKit/HMCharacteristicMetadata/manufacturerDescription)

A description of the characteristic provided by the accessory manufacturer.

### Bounding the value

[`validValues`](/documentation/HomeKit/HMCharacteristicMetadata/validValues)

The subset of valid values supported by the characteristic when the format is of type unsigned integer.

[`minimumValue`](/documentation/HomeKit/HMCharacteristicMetadata/minimumValue)

The minimum value for the characteristic.

[`maximumValue`](/documentation/HomeKit/HMCharacteristicMetadata/maximumValue)

The maximum value for the characteristic.

[`stepValue`](/documentation/HomeKit/HMCharacteristicMetadata/stepValue)

The minimum interval between values for the characteristic.

[`maxLength`](/documentation/HomeKit/HMCharacteristicMetadata/maxLength)

The maximum number of UTF-8 characters allowed in a characteristic that uses a string format.

### Formatting the value

[`format`](/documentation/HomeKit/HMCharacteristicMetadata/format)

The format of the values for the characteristic.

[Characteristic Data Formats](/documentation/HomeKit/characteristic-data-formats)

Constants for identifying the data format of characteristic values.

### Specifying units

[`units`](/documentation/HomeKit/HMCharacteristicMetadata/units)

The units of the characteristic value.

[Characteristic Units](/documentation/HomeKit/characteristic-units)

Descriptions of the units of a characteristic.

## Relationships

### Conforms To

[`CVarArg`](/documentation/Swift/CVarArg)

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

[`Equatable`](/documentation/Swift/Equatable)

[`Hashable`](/documentation/Swift/Hashable)

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

[`Sendable`](/documentation/Swift/Sendable)

### Inherits From

[`NSObject-swift.class`](/documentation/ObjectiveC/NSObject-swift.class)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)