---
title: Encodable
framework: swift
role: symbol
role_heading: Protocol
path: swift/encodable
---

# Encodable

A type that can encode itself to an external representation.

## Declaration

```swift
protocol Encodable
```

## Topics

### Instance Methods

- [encode(to:)](swift/encodable/encode(to:).md)

## Relationships

### Inherited By

- [SIMD](swift/simd.md)

### Conforming Types

- [Array](swift/array.md)
- [Bool](swift/bool.md)
- [ClosedRange](swift/closedrange.md)
- [CollectionDifference](swift/collectiondifference.md)
- [CollectionDifference.Change](swift/collectiondifference/change.md)
- [ContiguousArray](swift/contiguousarray.md)
- [ContinuousClock.Instant](swift/continuousclock/instant.md)
- [Dictionary](swift/dictionary.md)
- [Double](swift/double.md)
- [Duration](swift/duration.md)
- [Duration.TimeFormatStyle](swift/duration/timeformatstyle.md)
- [Duration.TimeFormatStyle.Attributed](swift/duration/timeformatstyle/attributed-swift.struct.md)
- [Duration.TimeFormatStyle.Pattern](swift/duration/timeformatstyle/pattern-swift.struct.md)
- [Duration.UnitsFormatStyle](swift/duration/unitsformatstyle.md)
- [Duration.UnitsFormatStyle.Attributed](swift/duration/unitsformatstyle/attributed-swift.struct.md)
- [Duration.UnitsFormatStyle.FractionalPartDisplayStrategy](swift/duration/unitsformatstyle/fractionalpartdisplaystrategy.md)
- [Duration.UnitsFormatStyle.Unit](swift/duration/unitsformatstyle/unit.md)
- [Duration.UnitsFormatStyle.UnitWidth](swift/duration/unitsformatstyle/unitwidth-swift.struct.md)
- [Duration.UnitsFormatStyle.ZeroValueUnitsDisplayStrategy](swift/duration/unitsformatstyle/zerovalueunitsdisplaystrategy.md)
- [Float](swift/float.md)
- [Float16](swift/float16.md)
- [Int](swift/int.md)
- [Int128](swift/int128.md)
- [Int16](swift/int16.md)
- [Int32](swift/int32.md)
- [Int64](swift/int64.md)
- [Int8](swift/int8.md)
- [LocalTestingActorID](distributed/localtestingactorid.md)
- [Never](swift/never.md)
- [ObservationRegistrar](observation/observationregistrar.md)
- [Optional](swift/optional.md)
- [PartialRangeFrom](swift/partialrangefrom.md)
- [PartialRangeThrough](swift/partialrangethrough.md)
- [PartialRangeUpTo](swift/partialrangeupto.md)
- [Range](swift/range.md)
- [SIMD16](swift/simd16.md)
- [SIMD2](swift/simd2.md)
- [SIMD3](swift/simd3.md)
- [SIMD32](swift/simd32.md)
- [SIMD4](swift/simd4.md)
- [SIMD64](swift/simd64.md)
- [SIMD8](swift/simd8.md)
- [SIMDMask](swift/simdmask.md)
- [Set](swift/set.md)
- [String](swift/string.md)
- [String.Comparator](swift/string/comparator.md)
- [String.LocalizationValue](swift/string/localizationvalue.md)
- [String.LocalizationValue.Placeholder](swift/string/localizationvalue/placeholder.md)
- [String.StandardComparator](swift/string/standardcomparator.md)
- [SuspendingClock.Instant](swift/suspendingclock/instant.md)
- [TaskPriority](swift/taskpriority.md)
- [UInt](swift/uint.md)
- [UInt128](swift/uint128.md)
- [UInt16](swift/uint16.md)
- [UInt32](swift/uint32.md)
- [UInt64](swift/uint64.md)
- [UInt8](swift/uint8.md)

## See Also

### Custom Encoding and Decoding

- [Encoding and Decoding Custom Types](foundation/encoding-and-decoding-custom-types.md)
- [Codable](swift/codable.md)
- [Decodable](swift/decodable.md)
- [CodingKey](swift/codingkey.md)
- [CodingKeyRepresentable](swift/codingkeyrepresentable.md)
- [CodingUserInfoKey](swift/codinguserinfokey.md)
