<!--
{
  "availability" : [
    "iOS: 7.0.0 -",
    "iPadOS: 7.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.9.0 -",
    "tvOS: 9.2.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "MapKit",
  "identifier" : "/documentation/MapKit/MKRoute",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "MapKit"
    ],
    "preciseIdentifier" : "c:objc(cs)MKRoute"
  },
  "title" : "MKRoute"
}
-->

# MKRoute

A single route between a requested start and end point.

```
class MKRoute
```

## Overview

An `MKRoute` object defines the geometry for the route — that is, it contains line segments associated with specific map coordinates. A route object may also include other information, such as the name of the route, its distance, and the expected travel time.

You don’t create instances of this class directly. When you use an [`MKDirections`](/documentation/MapKit/MKDirections) object to request directions from Apple, the returned [`MKDirections.Response`](/documentation/MapKit/MKDirections/Response) object contains the possible routes.

## Topics

### Getting the route geometry

[`var polyline: MKPolyline`](/documentation/MapKit/MKRoute/polyline)

The detailed route geometry.

[`var steps: [MKRoute.Step]`](/documentation/MapKit/MKRoute/steps)

The array of steps that create the overall route.

[`class Step`](/documentation/MapKit/MKRoute/Step)

One portion of an overall route.

### Getting additional route details

[`var name: String`](/documentation/MapKit/MKRoute/name)

The assigned name for the route.

[`var hasHighways: Bool`](/documentation/MapKit/MKRoute/hasHighways)

A Boolean value that indicates whether the route contains highways.

[`var hasTolls: Bool`](/documentation/MapKit/MKRoute/hasTolls)

A Boolean value that indicates whether the route has tolls.

[`var advisoryNotices: [String]`](/documentation/MapKit/MKRoute/advisoryNotices)

An array of advisory notice strings for the route.

[`var distance: CLLocationDistance`](/documentation/MapKit/MKRoute/distance)

The route distance, in meters.

[`var expectedTravelTime: TimeInterval`](/documentation/MapKit/MKRoute/expectedTravelTime)

The expected travel time, in seconds.

[`var transportType: MKDirectionsTransportType`](/documentation/MapKit/MKRoute/transportType)

The overall route transport type.

## Relationships

### Conforms To

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

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

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

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

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

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

### 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)