Community · Help

Sheetward User Guide

Turn an Excel or OpenDocument workbook (or Google Sheet) into a multi-user web app — forms, validation, lookups, import/export and more.

Field data types

Every field has a type, and the type does quiet work for you: it decides how the field is checked, entered and shown. Money gets a currency picker, a date gets a calendar, an SSN is masked, a dropdown offers a list — all without any setup on your part.

You rarely set a type by hand. Sheetward reads it from the field's name and your sample data — a column called Unit Price holding dollar amounts becomes a currency field on its own. To be explicit, put the type in the Rules sheet's Data type column (many friendly spellings work). Here is the full catalogue:

TypeWhat it accepts and shows
text / textareaFree text. Cap the length with text(20) — at most 20 characters (works for textarea too).
integerWhole numbers only — counts of things you can't split, like seats or boxes.
number / decimalNumbers with decimal places (also accepted: numeric, decimal, float). Shows 2 decimals by default; write decimal(4) for more.
quantityA decimal amount with a unit of measure — "12.50 kg". The field gets a Unit picker so each record can choose its own unit. See Currencies & units for how units are detected and shared.
currency / amountMoney (also accepted: amount, money). The field gets a Currency picker so each record can choose its currency; left blank, the app's default currency applies. See Currencies & units for how the picker is detected, shared and placed.
percentA percentage, shown with a % sign (15 → "15%").
ratingA star rating for scores and reviews. Renders as five clickable stars (blank until rated); the grid and print show read-only stars. Stored as a whole number 1–5. Auto-detected from a column named Rating or Stars. On dashboards a rating is always averaged, never summed — an average of 4.2 stars means something, a sum of stars doesn't, so sum isn't offered. Need a different scale? Declare rating(n) in the Rules sheet's Data type column for any whole number of stars from 2 to 10 — rating(7) gives seven stars, rated 1–7. A bare rating means the standard 5.
dateA calendar date (YYYY-MM-DD), entered with a date picker.
yearA 4-digit year, e.g. 2026. Shown as a year dropdown; auto-detected from a whole-number column named Year, Fiscal Year or FY.
monthA month with its year, stored as YYYY-MM (e.g. 2026-07). Shown as a month picker; auto-detected from a date column named Month.
datetimeA date plus a time of day, e.g. 2026-07-13 14:30. Shown as a date-and-time picker; auto-detected when the sample cells carry a real time.
timeA time of day, HH:MM (e.g. 09:30). Shown as a time picker; auto-detected from time-of-day cells.
emailEmail address.
booleanA yes/no answer, shown as a checkbox.
dropdownA value chosen from a list — a List_ sheet you provide, or a built-in standard list.
multiPick several options from a list — shown as checkboxes. Declare multi in the Data Type column and bind a List_ sheet the same way a dropdown does (by field name, or name the sheet in the Value column). Required means at least one pick; exports write the selections as A; B; C. Include an Other (please specify) option in the list and Sheetward adds a text box beside the field, required exactly while Other is selected.
ssnA US Social Security number, masked on screen.
zipA 5-digit US ZIP code, or ZIP+4.
phoneA phone number with a country-prefix dropdown (default +1).
credit_cardA card number — 13–19 digits with a validity check (the Luhn check), masked on screen. Only the last 4 digits are kept: the full number is checked once when the record is saved and never stored, so it can't leak later.
upc / routing_numberA UPC-A barcode or a 9-digit US bank (ABA) routing number, each verified by its check digit.
urlA web link.
fileAny file attachment (the size limit is shown under the field). Images, PDFs and text preview in the browser; scripts are refused. For a specific kind of media, use the image / video / audio / doc types below.
imageAn image (jpg, png, webp, gif, bmp — no SVG). Shows a thumbnail; click for full size, or download.
videoA video (mp4, mov, webm). Shows a thumbnail; click to play in place, or download.
audioAn audio clip (mp3, wav, ogg, m4a). Plays inline, with a download button.
docA document, read-only. PDF, text and CSV preview in the browser; Word, Excel and PowerPoint download. Only safe document types are accepted.
relationA link to a record in another form of the same app — an order line that points at a product, a claim that points at an employee. Shows as a searchable record picker that stores the chosen record's key (that form's business key).
ulid / nanoidAn identifier the app generates and fills in when the record is created — read-only, so ids are never mistyped or reused. ulid is a 26-character id that sorts by creation time; nanoid is a compact random id, 21 characters unless you choose otherwise (nanoid(10) → 10). Both use Crockford base32 — uppercase letters and digits with the look-alikes I, L, O and U left out.
Checked in this orderWhere the type comes from
1 · The Rules sheetAn explicit Data type entry always wins — e.g. rating(7) or text(20).
2 · The field's nameNames carry meaning: date → date; price, amount, total, cost, fee → currency; quantity / qty → quantity; count / number_of → integer (a unit column is a quantity's unit picker, not a count); rating / stars → rating; likewise ssn, zip, phone, email and file; and for media, image / photo → image, video → video, audio / sound → audio, document / pdf → doc.
3 · Your sample dataThe values and cell formatting decide: whole numbers → integer, numbers with decimals → number, and a cell formatted as money ($ € £ …) → currency.
OtherwiseThe field is plain text.

The Unit and Currency dropdowns need no type of their own. They are dropdown fields bound to the built-in standard lists, so leave the Rules sheet's Data type column blank on any row that targets one — whatever you write there is ignored. What matters is the type on the value column beside it: quantity is what summons a Unit picker and currency is what summons a Currency picker. Declaring integer or number instead gives you a plain number with no picker at all — the usual reason an expected dropdown never appears.

How the type is decided (highest wins): (1) an explicit Data type in the Rules sheet; (2) the field name — names with date → date, price/amount/total/cost/fee → currency, quantity/qty → quantity, count/number_of → integer, rating/stars → rating, plus ssn, zip, phone, email, image/photo → image, video → video, audio/sound → audio, document/pdf → doc, and file; (3) the sample data's values and cell formatting — whole numbers → integer, numbers with decimals → number, and a cell formatted as money ($ € £ …) → currency; (4) otherwise text.

That's every field type. For the built-in standard lists (countries, currencies, units…), region-aware formatting, and everything a relation can do, see the Data type reference.