Guide

Create Column in Table

Overview

Supabase is a PostgreSQL-based backend-as-a-service platform that lets you manage databases directly through a web interface. The Table Editor provides a visual way to modify your database schema without writing SQL. Adding columns is a common operation when your application requirements evolve—for example, when you need to store additional user attributes or product details. This workflow walks you through the process of creating a new text column, which stores variable-length character strings suitable for names, descriptions, emails, and other text data.

Before you begin

  • A Supabase account (free tier available at supabase.com)
  • An existing Supabase project with at least one database table created
  • Access to the Table Editor in your Supabase project dashboard
  • Appropriate permissions to modify table schemas (typically the project owner or a role with schema modification rights)

Step by step

1
ClickTable Editor

Open the Table Editor by clicking the Table Editor link in the Supabase navigation. This is the primary interface for managing your database tables visually.

Tip. If you have multiple tables, ensure you're viewing the correct table before proceeding. The table name appears at the top of the editor.
Step 1
2
ClickInsert

Click the Insert button (usually located in the top toolbar) to open the menu for adding new elements to the table.

Tip. The Insert button typically appears near the top-right of the table interface, next to other action buttons.
Step 2
3
TypeName

Type the name of your new column into the Name field that appears. Choose a descriptive, lowercase name using underscores for multi-word names (e.g., 'user_email' or 'phone_number').

Tip. Follow PostgreSQL naming conventions: use lowercase letters, numbers, and underscores. Avoid spaces and special characters. Keep names concise but meaningful.
4
ClickInsert column Insert a new column into test-table I then C

Select 'Insert column' from the menu to confirm you want to add a new column (as opposed to other insert operations like adding rows).

Tip. This menu option may appear contextually. If you see other options like 'Insert row', ensure you're selecting the column insertion option.
Step 4
5
TypeName

Re-enter or confirm the column name in the Name field (this may appear in a second dialog or form). Use the same naming conventions as before.

Tip. Some interfaces show a confirmation step. If the name is already filled in correctly, you can skip directly to the next field.
6
ClickType

Click the Type dropdown (combobox) to open the list of available PostgreSQL data types for your column.

Tip. The dropdown will display common data types like text, integer, boolean, timestamp, etc. You can also type to search within the dropdown.
Step 6
7
Typecombobox

Type 'text' into the Type field to filter the data type options and find the variable-length character string type you need.

Tip. As you type, the dropdown will narrow to matching options. The 'text' type is suitable for emails, names, descriptions, and any variable-length string data.
8
Clicktext Variable-length character string

Click on the 'Variable-length character string' option in the dropdown to select the text data type for your column.

Tip. This is the standard PostgreSQL 'text' type, which has no length limit and is efficient for most string storage needs. If you need to enforce a maximum length, consider 'character varying(n)' instead.
Step 8
9
ClickSave ⌘ ↵

Click the Save button (labeled 'Save ⌘ ↵') to apply the new column to your table. The column will be added to your table schema in Supabase.

Tip. You can also press Cmd+Enter (Mac) or Ctrl+Enter (Windows/Linux) as a keyboard shortcut to save.
Warning. Once saved, the column is created in your database. While you can delete it later, ensure the column name and type are correct before saving to avoid unnecessary schema modifications.
Step 9

Confirm it worked

  1. 1The new column appears in the table's column list in the Table Editor interface
  2. 2The column is labeled with the name you specified and shows 'text' as its data type
  3. 3You can see the column in the table preview, displayed as a new header alongside existing columns
  4. 4No error messages appear after clicking Save, and the interface returns to the normal table view

Common issues

Keep reading