# User & Attributes

### Managing User Data

The `NetmeraUser` class allows you to send structured information about your application's users to Netmera. The ideal time to update user attributes is **right after the user logs into your application.**

{% hint style="warning" %}
**User ID Management**

For optimal performance and data integrity:

* **Update user information at login**: It’s crucial to update the user information as soon as the user logs in.
* **Unique userId**: Ensure that each user has a unique `userId`. Assigning the same `userId` to multiple users leads to data inconsistencies and is not recommended.
  {% endhint %}

### Updating User Information

After login, create a `NetmeraUser` object, set the attributes, and call `UpdateUser`

```
NetmeraUser user = new NetmeraUser();
user.SetUserId("your_xid");
user.SetBirthday("1991", "06", "30");
user.SetCity("Istanbul");

// Update the user profile in Netmera
NetmeraCore.Instance.UpdateUser(user.JsonNode);
```
