# User Properties

#### What are user properties? <a href="#what-are-user-props" id="what-are-user-props"></a>

User properties are attributes you send to Zata from your product about your users. They are the “adjectives” that describe your users. Examples include things like Name, Email Address, Company, Role, Created Date, etc.&#x20;

Some user properties, like Browser and Current Page URL, are automatically sent to Zata. For custom user properties specific to your application, however, you will need to send them to Zata, yourself.

#### Why send user properties to Zata? <a href="#why-send-user-props" id="why-send-user-props"></a>

One of the powerful features of Zata is the ability to very specifically target users based on who they are or where they are in their customer lifecycle. For example, you may want to target “new marketing admins”, for which you would need to know “created date”, “role”, and “team”. All of these are user properties you can send to Zata.

#### How do I send user properties? <a href="#how-send-user-props" id="how-send-user-props"></a>

Custom user properties are sent to Zata when a user is identified. Check out the section on sending user properties in our Installation Overview (for Developers) article for more information.

#### Where can I see which user properties I’m sending? <a href="#see-user-props" id="see-user-props"></a>

All your custom properties will be listed on the Events and Properties page in your Zata settings. Please note that user properties will only appear on this list after at least one user with this property has been identified in Zata.&#x20;

#### Which user properties should I send? <a href="#recommended-props" id="recommended-props"></a>

Here’s a set of recommended user properties to start sending first. You can add more later as well

**Recommended**&#x20;

| Property            | Reasoning                                                        |
| ------------------- | ---------------------------------------------------------------- |
| User ID             | To identify user                                                 |
| First Name          | For personalizing content.                                       |
| Last Name           | Also for personalizing content (but more optional).              |
| Email Address       | Can be used for various identification.                          |
| Created Date (user) | For knowing how long a user has been using your product.         |
| Company Name        | For personalizing content.                                       |
| Plan Type           | Example: trial, paid. Used for lifecycle targeting.              |
| Plan Tier           | Example: standard, enterprise.                                   |
| Role                | Example: admin, standard. However you differentiate permissions. |

**Additional / Optional**

| Property                  | Reasoning                                                                                         |
| ------------------------- | ------------------------------------------------------------------------------------------------- |
| Team                      | Example: marketing, sales. Or any other way you segment your users.                               |
| Location                  | Example: state, zip, country, etc (use multiple properties). Target on where your customer lives. |
| Version                   | If users can be on different version of your application they may need to see different content.  |
| Beta User / Feature Flags | To communicate with users who have access to certain features.                                    |
| Language                  | For multi-language applications.                                                                  |
| Renewal Date              | To remind users to renew. This is generally an account level property that is added to each user. |

The more information you pass, the more power you will have at your hands.

To pass a user attribute, you must call the zata.identify() function as shown below.

```
<script>
zata.identify( 
 "UNIQUE USER ID", // Used to identify users 
 { 
   name: "John Doe", // Full name 
   email: "customer@example.com", // Email address 
   created_at: "1519205055", // Signup date as a Unix timestamp 
   // Account parameters (optional), used to target users that belong to a certain organization.
   company: {
    id: 1, // Required, used to identify the company
    name: 'Acme Labs',
    created_at: "1519205055"
   }
   // Additional properties 
   // createdProject: "true",
   // projectId: "1",
   // trialEnds: '2019-10-31T09:29:33.401Z'
 } 
); 
</script>
```

For example, if you want to pass the user attribute projectID, you'd add projectID: 1.

**Passing date parameters**

You can pass extra date parameters other than the created\_at parameter using the ISO 8601 format.&#x20;

For example, you can pass the date where the trial for a certain user ends as follows trialEnds: '2019-10-31T09:29:33.401Z'

**IMPORTANT**: If your user’s data changes in some way without a page load, you should call the zata.identify() function again.

This will cause Zata to check for any new changes to the user’s data. You only need to include whatever has changed—you don’t need to include all user data in each update.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://zata.gitbook.io/zata-documentation/installation/user-properties.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
