---
id: delete
title: "Delete data: delete()"
slug: delete
custom_edit_url: https://github.com/supabase/supabase/edit/master/web/spec/supabase.yml
---

import Tabs from '@theme/Tabs';
import TabsPanel from '@theme/TabsPanel';

Performs a DELETE on the table.

<Tabs
  defaultActiveId="js"
  groupId="reference/supabase-js"
  values={[{ label: 'JavaScript', value: 'js' }]}>

<TabsPanel id="js" label="js">

```js
const { data, error } = await supabase
  .from('cities')
  .delete()
  .match({ id: 666 })
```


</TabsPanel>

</Tabs>

## Parameters


<ul className="method-list-group">
  
<li className="method-list-item">
  <h4 className="method-list-item-label">
    <span className="method-list-item-label-name">
      __namedParameters
    </span>
    <span className="method-list-item-label-badge required">
      required
    </span>
    <span className="method-list-item-validation">
      <code>object</code>
    </span>
  </h4>
  <div class="method-list-item-description">

No description provided. 

  </div>
  
<ul className="method-list-group">
  <h5 class="method-list-title method-list-title-isChild expanded">Properties</h5>

<li className="method-list-item">
  <h4 className="method-list-item-label">
    <span className="method-list-item-label-name">
      returning
    </span>
    <span className="method-list-item-label-badge required">
      required
    </span>
    <span className="method-list-item-validation">
      <code>minimal</code> | <code>representation</code>
    </span>
  </h4>
  <div class="method-list-item-description">

If `true`, return the deleted row(s) in the response.

  </div>
  
</li>


<li className="method-list-item">
  <h4 className="method-list-item-label">
    <span className="method-list-item-label-name">
      count
    </span>
    <span className="method-list-item-label-badge required">
      required
    </span>
    <span className="method-list-item-validation">
      <code>null</code> | <code>exact</code> | <code>planned</code> | <code>estimated</code>
    </span>
  </h4>
  <div class="method-list-item-description">

Count algorithm to use to count rows in a table.

  </div>
  
</li>

</ul>

</li>

</ul>


## Notes

- `delete()` should always be combined with [filters](/docs/reference/javascript/using-filters) to target the item(s) you wish to delete.
- If you use `delete()` with filters and you have
  [RLS](/docs/learn/auth-deep-dive/auth-row-level-security) enabled, only
  rows visible through `SELECT` policies are deleted. Note that by default
  no rows are visible, so you need at least one `SELECT`/`ALL` policy that
  makes the rows visible.










## Examples

### Delete records



<Tabs
  defaultActiveId="js"
  groupId="reference/supabase-js"
  values={[{ label: 'JavaScript', value: 'js' }]}>

<TabsPanel id="js" label="js">

```js
const { data, error } = await supabase
  .from('cities')
  .delete()
  .match({ id: 666 })
```


</TabsPanel>

</Tabs>