---
title: recordChangeTag
framework: cloudkit
role: symbol
role_heading: Instance Property
path: cloudkit/ckrecord/recordchangetag
---

# recordChangeTag

The server change token for the record.

## Declaration

```swift
var recordChangeTag: String? { get }
```

## Discussion

Discussion When you fetch a record from the server, you get the current version of that record as it exists on the server. However, at any time after you fetch a record, other users might save a newer version of it to the server. Every time CloudKit saves a record, the server updates the record’s change token to a new value. When you save your copy of the record, the server compares your record’s token with the token on the server. If the two tokens match, the server interprets that you modified the latest version of the record and that it can apply your changes immediately. If the two tokens don’t match, the server checks your app’s save policy to determine how to proceed. In your own code, you can use change tokens to distinguish between two different versions of the same record. note: In some situations, setting a record as the parent of another record can cause the recordChangeTag to update on the parent record. This usually occurs when you save the child record.

## See Also

### Accessing the Record’s Metadata

- [recordID](cloudkit/ckrecord/recordid.md)
- [recordType](cloudkit/ckrecord/recordtype-6v7au.md)
- [CKRecord.SystemType](cloudkit/ckrecord/systemtype.md)
- [creationDate](cloudkit/ckrecord/creationdate.md)
- [creatorUserRecordID](cloudkit/ckrecord/creatoruserrecordid.md)
- [modificationDate](cloudkit/ckrecord/modificationdate.md)
- [lastModifiedUserRecordID](cloudkit/ckrecord/lastmodifieduserrecordid.md)
- [CKRecord.ID](cloudkit/ckrecord/id.md)
