<!--
{
  "availability" : [
    "iOS: 10.0.0 -",
    "iPadOS: 10.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.12.0 -",
    "tvOS: 10.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 3.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Foundation",
  "identifier" : "/documentation/Foundation/UnitDuration",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Foundation"
    ],
    "preciseIdentifier" : "c:objc(cs)NSUnitDuration"
  },
  "title" : "UnitDuration"
}
-->

# UnitDuration

A unit of measure for a duration of time.

```
class UnitDuration
```

## Overview

You typically use instances of [`UnitDuration`](/documentation/Foundation/UnitDuration) to represent specific quantities of planar angle using the [`NSMeasurement`](/documentation/Foundation/NSMeasurement) class.

### Duration

Duration is a quantity of time. The SI unit for time is the second (sec), which is defined in terms of the radioactivity of a cesium-133 atom. Duration is also commonly expressed in terms of minutes (min) and hours (hr).

> Note:
> Use the ``doc://com.apple.foundation/documentation/Foundation/NSDateComponents`` class to represent quantities of calendrical units, such as days, weeks, months, and years.

The [`UnitDuration`](/documentation/Foundation/UnitDuration) class defines its [`baseUnit()`](/documentation/Foundation/Dimension/baseUnit()) as [`seconds`](/documentation/Foundation/UnitDuration/seconds), and provides the following units, which [`UnitConverterLinear`](/documentation/Foundation/UnitConverterLinear) converters initialize with the given coefficients:

|Name   |Method                                                                      |Symbol|Coefficient|
|-------|----------------------------------------------------------------------------|------|-----------|
|Seconds|``doc://com.apple.foundation/documentation/Foundation/UnitDuration/seconds``|sec   |`1`        |
|Minutes|``doc://com.apple.foundation/documentation/Foundation/UnitDuration/minutes``|min   |`60`       |
|Hours  |``doc://com.apple.foundation/documentation/Foundation/UnitDuration/hours``  |hr    |`3600`     |

## Topics

### Accessing the Base Unit

[`+  baseUnit`](/documentation/Foundation/Dimension/baseUnit())

Returns the base unit.

### Accessing Predefined Units

[`hours`](/documentation/Foundation/UnitDuration/hours)

The hour unit of duration.

[`minutes`](/documentation/Foundation/UnitDuration/minutes)

The minute unit of duration.

[`seconds`](/documentation/Foundation/UnitDuration/seconds)

The second unit of duration.

[`milliseconds`](/documentation/Foundation/UnitDuration/milliseconds)

The millisecond unit of duration.

[`microseconds`](/documentation/Foundation/UnitDuration/microseconds)

The microsecond unit of duration.

[`nanoseconds`](/documentation/Foundation/UnitDuration/nanoseconds)

The nanosecond unit of duration.

[`picoseconds`](/documentation/Foundation/UnitDuration/picoseconds)

The picosecond unit of duration.

## Relationships

### Conforms To

[`NSCopying`](/documentation/Foundation/NSCopying)

[`NSCoding`](/documentation/Foundation/NSCoding)

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

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

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

[`NSSecureCoding`](/documentation/Foundation/NSSecureCoding)

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

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

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

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

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

### Inherits From

[`Dimension`](/documentation/Foundation/Dimension)

---

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)