# Defining object properties

In your Avo Tracking Plan properties can have 5 different types, string, integer, float, boolean and object. Learn more about properties in general [in this doc](https://www.avo.app/docs/data-design/avo-tracking-plan/properties.md).

In this guide we'll go through the process of defining an object property, including constraints on its keys and values.

### Step 1: Set the property type to object

Click the type dropdown in the property drawer and select "object"

![](https://www.avo.app/docs/images/workspace/tracking-plan/property-object-type.png)

### Step 2: Define constraints on which keys and values the object should contain

Add the properties you'd like to include in the object

> 💡 All properties in Avo are shared globally throughout the tracking plan,
> this includes the sub-properties of object properties. You can [learn more
> about the global namespace in Avo in this
> doc](https://www.avo.app/docs/data-design/best-practices/global-namespace.md).

   ![](https://www.avo.app/docs/images/workspace/tracking-plan/property-object-add-property.png)

### Congrats, you've defined your first object property in Avo!

![](https://www.avo.app/docs/images/workspace/tracking-plan/property-object-with-sub-properties.png)

### What's next?

- [Learn how to pin values of specific object keys in this guide on pinned properties](https://www.avo.app/docs/data-design/guides/pinned-properties.md)
- [Learn more about properties in general](https://www.avo.app/docs/data-design/avo-tracking-plan/properties.md)
