<!--
{
  "availability" : [
    "iOS: 26.0.0 -",
    "iPadOS: 26.0.0 -",
    "macCatalyst: 26.0.0 -",
    "macOS: 26.0.0 -",
    "tvOS: 26.0.0 -",
    "visionOS: 26.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "GameKit",
  "identifier" : "/documentation/GameKit/GKGameActivity/properties",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "GameKit"
    ],
    "preciseIdentifier" : "c:objc(cs)GKGameActivity(py)properties"
  },
  "title" : "properties"
}
-->

# properties

Properties that contain additional information about the activity.

```
var properties: [String : String] { get set }
```

## Discussion

This takes precedence over [`defaultProperties`](/documentation/GameKit/GKGameActivityDefinition/defaultProperties) on the activity
definition.

1. The framework initializes this dictionary with the default properties from the activity definition and deep linked properties, if any.
2. If deep linking contains the same key as the default properties, the deep linked value overrides the default value.
3. You can update the properties at runtime.

---

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)