A list is a small table that lives in a workspace. Workflows read and write its rows as they run, and anyone in the workspace can open it and change a row by hand.

What a list is for

  • Remembering what has been handled. A row per invoice number already processed, so the next run skips it. One column, marked unique.
  • Looking something up. Customer to account manager: a step finds the row, and the rest of the workflow uses what it found.
  • Collecting results a person will read or export later.
  • Settings a person can change — the GST rate, or the amount above which a bill needs approval — changed in the list, not in a step.

What a list is not for

  • Not a database for your business. Lists hold thousands of rows, not millions. Free has 2 lists and 1,000 rows, Starter 10 lists and 25,000 rows, counted across the whole company. A cell holds up to 32 KB and a row up to 256 KB.
  • Not for linking lists together. There are no relationships between lists, and no joins. A step reads one list at a time.
  • Not a file store. Keep documents and images where they already live, and put a link in the list.
  • Not a trigger. Changing a row does not start a workflow.
  • Not for code steps or other systems. Lists are reached through the six list steps and the Lists page; there is no API for them.
  • Not a copy you can test against. A test run writes to the same list a live run does. The designer says so on every step that writes.

When you outgrow a list

Connect a PostgreSQL or Microsoft SQL Server database from Connections, and use its query step instead. Export the list as CSV first; the file imports into a database table as it is.

When a list fills up

At 80% of your plan's rows the company's owner and admins are told. At 100%, writes stop and reads keep working: a step that adds or changes a row fails with the reason, and a step that only finds rows carries on. Deleting rows always works, and makes room at once.