---
id: auth-updateuser
title: 'updateUser()'
slug: /auth-updateuser
custom_edit_url: https://github.com/supabase/supabase/edit/master/spec/supabase_js_v2_legacy.yml
---
import Tabs from '@theme/Tabs'
import TabItem from '@theme/TabItem'
Updates user data, if there is a logged in user.
```js
const { user, error } = await supabase.auth.updateUser({
data: { hello: 'world' },
})
```
## Parameters
-
UserAttributes
required
object
No description provided.
## Notes
User email: Email updates will send an email to both the user's current and new email with a confirmation link by default.
To toggle this behavior off and only send a single confirmation link to the new email, toggle "Double confirm email changes" under "Authentication" -> "Settings" off.
User metadata: It's generally better to store user data in a table inside your public schema (i.e. `public.users`).
Use the `update()` method if you have data which rarely changes or is specific only to the logged in user.
## Examples
### Update email for authenticated user.
Sends a "Confirm Email Change" email to the new email address.
```js
const { data, error } = await supabase.auth.updateUser({
email: 'new@email.com',
})
```
### Update password for authenticated user.
```js
const { data, error } = await supabase.auth.updateUser({
password: 'new password',
})
```
### Update a user's metadata.
```js
const { user, error } = await supabase.auth.updateUser({
data: { hello: 'world' },
})
```