File

Attachment in this cell. Esc or click outside closes. Rename with F2 on the cell or Rename….

This cell is empty

Pick with ↑↓ and Enter, or press the letter. Esc to cancel.

Find

Searches the current path first, then nested structures when scope allows. ↑↓ move, Enter jump, Esc close.

Queries

Saved API connections live in this workbook. Each query is numbered (#1, #2…) — the same label appears on its target cell. They do not refresh on their own. Esc closes.

From API

GET a URL and paste the response into the selected cell. Saved as a workbook query (URL + credentials) unless you uncheck that. Queries never auto-refresh. Esc cancels.

Names

A name points at a cell. Use it in any formula as #name. Esc closes.
Name the selected cell

Function library

Insert a function into the selected cell and start pointing at its arguments. ↑↓ then Enter.

Command library

Write verbs take explicit paths. Ribbon commands that act on a selection take target in a cell; independent ones are /UNDO(). ↑↓ then Enter or Space.

Show fields

Pick which fields stay visible. Hidden fields stay in the table — formulas still see them.

Filter

Hide rows that don’t match. Formulas still see every row. Works on tables and lists.
ConditionValue
One rule to start. Space on Condition opens the list. Extra rows AND together.

Data type

Set the allowed type for a table field or list values. Structures fill every record of a table field; Field sources allowed values from a numbered list or table column.

Users

People who can be granted access in this workbook. Cloud sharing matches a Metagrid account (email is the login). This roster lives in the sheet.
EmailNameAccount id

Groups

Named groups of users. A group may also contain another group. Admin is created for you and has view, edit, and grant by default. Everyone’s default is set under Permissions → Workbook default.

No group selected

MemberKind

Permissions

Who may view, edit, or grant access. Slice the same rules by path or by group. Admin can do all three on every path, and you cannot take that away from yourself. Everyone starts with no access; you can change that. New users join Everyone. Nested paths inherit. Live view only — export JSON still contains everything.

View as

Preview the sheet as another user or group. You only see people and groups whose access is a subset of yours.

Sign in

Sign in with your Metagrid account to open cloud sheets on any device.

Set new password

Choose a new password for your Metagrid account.

My sheets

Private cloud workbooks for your account. Local editing still works offline.

Save changes to this form?

You edited this form. Save applies the changes; Discard puts it back the way it was when you pressed Edit.

Table headers

Where are the headers? ↑↓ choose, Enter inserts, Esc cancels.

Settings

Browser prefs stay on this device. Addresses and API keys live on your account.
Used when you type a date into a cell.
Applies to newly created tables only. Use Transpose on an open table to flip an existing one.
Copy a cell that holds a list/table/grid, then paste into another Metagrid tab or workbook. Large pastes are capped (~1.5 MB JSON).
Hides every ribbon command that already has a Ctrl keyboard shortcut (Copy, Paste, Find, insert/delete row & column, Save, …). Commands only reachable via keytips stay visible.
Overlays names on chrome (Top bar, Tabs, Sections, Formula bar, Sheet…). Use these names when describing a change.
/EMAIL and /TEXT open a draft by default. Pass a linked address (or its label) as from, and send to deliver through Metagrid. Gmail drafts use that inbox when you are signed into it. Email send uses Reply-To as your linked address. SMS send needs a configured text provider.
For language models and scripts. API docs · endpoint /api/metagrid. The secret is shown once.

Keyboard reference

Everything in Metagrid is reachable without a mouse. Esc closes this.
UI areas (use these names when asking for changes)
Top barFull-width strip: logo, Undo/Redo, Path (dotted directory: workbook.structure.field.record; numeric fields quoted as '12'.12), cloud/profile.
TabsLeftmost ribbon column: Insert (default), Formulas, Commands, Queries, Data, Forms, Access, then the structure you are in (Table, Dictionary, Field, Pivot Table, Chart, Grid, or Form). Account/save/protect live in the profile menu (top right).
SectionsColumn next to Tabs. Every section button (Insert, Formulas, Sort & filter, …) opens a metasheet of commands.
Ribbon menuDropdown that opens from a section button. It is a metasheet — the same nested list/dictionary as the main sheet. ↑↓ move. Enter, Space, and → open a submenu or run the row. ← and Esc go back. Edit lets you rename, nest, and delete items (saved in this browser).
MetasheetAny popup menu (ribbon section, profile, field ☰, empty-cell picker) is a mini-sheet. Field menus stay live because they depend on the current field. Protect sheet and View as are on the Access ribbon.
Formula barEditable formula/value field under the Top bar, right of the Ribbon. Drag grip resizes height.
SheetMain grid. Path is in the top bar as a dotted directory (workbook.structure.field.record). Field menu is the ☰ dropdown on headers/fields.
Status barBottom strip: hints, aggregates, keytip banner.
UI mapSettings → Show UI area labels paints these names on the live chrome.
Move & select
↑↓←→Move · Shift+arrow expands a range · Ctrl+arrow jumps to the edge · Ctrl+A select all data. Large grids virtualize (only visible rows/cols paint).
Tab / EnterRight / down (Shift reverses)
Go deeper, come back
SpaceOpen the structure, file, or text URL in this cell (or insert a table if empty — including inside tables; or toggle a checkbox). On a command cell (/COPY…) Space runs the command. After Ctrl+X on a structure, Space inserts a table on top of it and opens that table so you can paste the cut data one level deeper. Other structure types: Insert ribbon. Bare files always preview. Set up PDF harness… in the PDF viewer (opt-in) wraps the file as Name / Source / Fields / Output. Space on Output fills and previews. In a table with Type Any, structures are linked across records by default (insert fills the field).
/ commandsLike = for formulas, / writes. The cell shows the command name; Space (or click) runs it. /COPY and /CUT are cell→cell. /APPEND / /SUBMIT add a form dictionary onto a table (map bakes on commit). /CLEAR blanks values; /DELETE removes the cell/structure. Ribbon ids in a cell need a target (/TRANSPOSE(Budget)). Workbook cmds may be bare (/UNDO, /RECALC). Commands tab → Library inserts / like Formulas inserts =.
Lock formulasNested table/list columns always share fields (headers or list indexes). Structure → Lock formulas also shares column formulas across nested tables. Click again to unlock formulas only.
From a list…Validation or empty-cell picker: navigate the sheet to the list you want (arrows, Space to open), then Enter to set it as the allowed-values source.
EscClear copy marquee, or go up one level
Edit & formulas
type · F2Replace · edit in place (cursor starts at the end). Also renames table headers & list indexes. Typing over a nested structure replaces it; in a table that also clears the column structure type. Alt+Enter inserts a new line in the cell or formula (formula bar auto-expands up to 6 lines; drag its bottom edge for more).
Commands tabLibrary of slash verbs. Independent cmds are /UNDO(). Anything that uses the ribbon selection takes target in a cell. Type / — autocomplete from the first letter; Space / Tab / Enter accepts.
=Type a formula — text appears in the cell and the formula bar. Autocomplete suggests functions (Tab accepts with (). Argument help shows under the caret. ƒx marks formula mode. Library under Formulas. COUNT(ListName) counts list items. Long formulas can use Alt+Enter line breaks for readability.
drag headersClick and drag a row number or column header to rearrange that row/column (or the selected block). Drag the header’s right edge to resize instead.
column edges / fitDrag a header’s right edge to set a manual width. Double-click the edge for auto-fit (content). Field menu → Format → Column fit (top-row field headers): Auto (content up to ~240px), Auto (column name) (header only), or Manual.
↑↓←→ in a formulaPoint at cells · Space dive · Shift+Space surface · F2 toggle point vs text-cursor · refs insert at the caret · Esc cancel
list / table headersSelectable (row H). Space opens the field menu. Submenus open with Enter, Space, or →. ← and Esc go back.
referencesTable: bare Total = whole column; Total. = this row. Nested same-row fields: Address.City (City is a list index / nested field — not a row label). Cross-row by number: Address.1.City. Cell values (e.g. Vendor “Amazon”) are never path segments. Column formulas: =Q1.+Q2.. A field formula that returns a list (=SEQUENCE(100)) fills that field item-by-item; if it is the first field, the table grows or shrinks to that many records. Other field formulas like =x^2 then calculate per record. Grids: B4. Power is ^. Build tables from formulas: TABLE(SEQUENCE(5),"Sq",LAMBDA(x,x*x)), ADDCOL, FIELDS(table), RECORDS(table). Defined names: #name.
Ctrl+C/X/VCopy / cut / paste ranges. Data ranges overwrite (no insert row/field). Structure insert only from row gutter or header-only copy. Paste JSON to build nested lists/tables/grids. Ctrl+D fill down. Ctrl+R refresh. Ctrl++/- insert/delete (context-sensitive).
DeleteData cells → clear values only (including a full row/column of values). Header → delete column/record. Row gutter → delete row/field. Same on classic and transposed tables. Deleting a field with nested structures or formulas that reference it asks for confirmation first.
Data
Sort / FilterTable headers: sort ▲▼ and filter ⏷ buttons. Data tab also sorts/filters lists. Criteria include contains, equals, starts/ends with, comparisons, empty. Formulas still see hidden rows.
Data typeHeader menu Type: Any, Field, Value, Structure, File, Toggles (T). Value holds Number / Text / Checkbox. Field (the structure) sources allowed values from a field or table column. Table and Dictionary can link fields across records (default) or allow different fields per record. Type Any also links structures across records by default. Table fields also have Formulas linked across records (default): a formula fills the whole column when other cells are empty (or already share that formula); otherwise you are asked before replacing values. Uncheck so formulas apply only to the cell you edit. On a Field-typed cell (including empty table growth rows), Space opens a dropdown — (blank) is last.
DatesTyping 3/15/2024 or 3/15 (M/D, current year) stores an Excel serial and applies your default date format (File → Profile → Preferences; default M/D/YYYY). Formulas: TODAY, DATE, EDATE, EOMONTH, NETWORKDAYS, YEAR/MONTH/DAY, etc. Optional args can be skipped with commas: =SEQUENCE(180,,10).
Cut structureSelect header cells only (or row gutters) → copy/cut then paste to insert columns/rows. Full data selections paste as values and never insert structure.
Cloud
Access / View asAccess tab: Users (you by default), Groups (Admin by default), Permissions (Workbook default: Everyone can view; Admin has view/edit/grant). View as is a dropdown of users/groups whose access is a subset of yours. Live view only — export JSON still contains everything.
Sign in / filesCreate an account for private cloud sheets. Autosave is always on (local browser storage; cloud when signed in and a sheet is open). Use My sheets to open, rename, or delete. Export writes metagrid-v2 JSON. Import puts a file into the selected cell. Space on a PDF builds a package (Template + Smart Fields + Filled). Field ☰ → Create list from column values places the list outside the table, in the field before it. Metagrid JSON replaces the document. Excel/CSV becomes a Dictionary of sheets.
Format & Type
Field menu ☰Filter, Sort, Type (T — includes Unique identifier), Format (number codes, font/alignment, conditional formatting, Column fit, Hide field). Color scales and highlight-duplicates live under Format. Access holds View / Edit / Grant for this field. Create list from field values. Hidden fields come back from the structure tab → Show fields. Display formats only — values stay raw. Letter underlines for hotkeys (no keytip badges here).
Ribbon
AltKeytips: tab → section → command in a metasheet. One-section tabs skip the extra pick (Alt, I, T = Insert → Table). Arrows exit keytips and move the sheet. Esc steps back. Tabs — Insert I, Formulas M, Commands O, Queries Q, Data D, Forms F, Access A, then the structure (Table T, Field E, Dictionary C, Pivot Table V, Chart C, Grid G, Form R). Profile P then item letter. Undo/Redo use Ctrl+Z/Y.
Insert from a selectionOn a grid, select a region (or row gutters / column letters) then Insert → Table, Dictionary, or Field. Those cells move into the new structure at the region’s top-left. Table keeps the rectangle (generated column names). Field reads left to right, top to bottom. Dictionary: two columns are Name/Value; two rows that aren’t two columns use the top row as names. A single cell still inserts an empty structure. Insert → Grid does not take the selection.
LAMBDA / arraysDefine =LAMBDA(x, y, x+y); call =f(a,b). Arrays: SEQUENCE(5), TABLE(SEQUENCE(5),"Double",LAMBDA(x,x*2)), ADDCOL, FIELDS, RECORDS, MAKEARRAY, MAP, BYROW, BYCOL, REDUCE, SCAN, UNIQUE, SORT, HSTACK/VSTACK, TAKE/DROP.
TransposeTable tab → Transpose: records become columns, fields become rows.
Table ↔ fieldDictionary → Convert to table: each name becomes a field and the values are one record. Convert to Name/Value table: two fields (Name, Value), one record per entry. Field → one-field table. Table → Convert to field / dictionary when it has one field or one record.
CutCtrl+X marks the range (dashed marquee) without removing data. Paste completes the move. After cutting a structure, Space or Insert (table/list/grid/dictionary) puts a new structure in the same cell and opens it — paste inside to nest further. Gutter/header cuts insert structure; data cuts clear values after paste. Esc cancels a pending cut.
shortcutsCtrl+C/X/V · D fill down · R refresh · +/- insert/delete · A select all · H replace · S save · Z/Y undo/redo · F find · F9 recalc · F1 help