Skip to main content
itzseo
Phase 36

Notion-style tables.
Built for SEO data.

Per-project typed tables with 7 column types, per-row revision history, 30-day trash with restore, CSV import/export. Replace every ad-hoc Google Sheet your team uses.

Unlocks on Starter ($29/mo).

The Google Sheets habit

Every team has 30+ untracked spreadsheets.

Vendor lists. Outreach trackers. Backlink prospects. Brief drafts. Competitor notes. Most agencies maintain dozens of ad-hoc sheets across team drives — and lose track of which is current.

No type safety

Someone enters “n/a” in the date column. Pivot tables explode.

No revision history

Sheet was “working yesterday.” Three people edited overnight. Nobody knows what changed.

Lives outside the workspace

The brief is in Docs. The keyword sheet is in Drive. The tasks are in ItzSEO. Three places to check.

Sharing pain

Adding a new teammate means re-sharing 14 sheets one by one.

7 column types

Typed columns. Validated cells.

Pick a type per column. The cell editor matches. Invalid values bounce before save.

TEXT

Single-line or multi-line. No length limit.

NUMBER

Integer or decimal. Numeric sort works.

DATE

Date picker. ISO format under the hood.

DROPDOWN

Predefined options. Coerces on import.

CHECKBOX

True/false. Filters work like flags.

PERSON

Pick a workspace member by name.

URL

Validated as URL. Click to open.

(more)

Email, file, formula — on the roadmap.

No formulas in v1 — explicit non-feature. We picked speed + reliability over Excel parity. Formulas are on the roadmap behind a feature flag.

Capabilities

More than a spreadsheet.

Per-row revision history

Every cell edit writes a RecordsRowRevision. Open any row → View history → see chronological revisions with who + when + what changed.

30-day trash + restore

Row delete is soft. Marked deletedAt, hidden from grid. Trash page lists deleted rows + tables. One-click restore. Daily cron hard-deletes >30d.

CSV import wizard

Upload a CSV. Auto-detect column types. Map CSV headers to table columns or create new columns. Preview before confirm. Bulk row coercion.

CSV export

Export the current filtered + sorted view to CSV. Or export all rows. Round-trip works — export, edit in Excel, re-import without data loss.

Filter + sort

Client-side filter + sort state persists in URL. Save your favorite view and bookmark it. Multi-column sort. Per-type filter operators.

Per-project scoping

Tables live at /projects/[id]/records. Each project has its own table set. No accidental cross-project leakage. Workspace owners see all.

What teams build

Real tables from real agencies.

Vendor list

Suppliers, freelancers, contractors. Name (TEXT), category (DROPDOWN), rate (NUMBER), last-used (DATE), portfolio URL.

Outreach tracker

Prospect (TEXT), contact email (URL), status (DROPDOWN), follow-up date (DATE), owner (PERSON).

Backlink prospects

Domain (URL), DR (NUMBER), niche (DROPDOWN), pitched (CHECKBOX), responded (CHECKBOX), notes (TEXT).

Brief queue

Title (TEXT), target keyword (TEXT), assignee (PERSON), brief due (DATE), draft due (DATE), status (DROPDOWN).

Competitor watch

Competitor (TEXT), domain (URL), tracking since (DATE), strengths (TEXT), weak spots (TEXT).

Client roster

Client (TEXT), monthly retainer (NUMBER), start date (DATE), AE (PERSON), renewal due (DATE), status (DROPDOWN).

Comparison

vs Notion / Airtable / Sheets.

ItzSEO RecordsNotionAirtableGoogle Sheets
Per-seat costbundled$10+/user$10+/user$12/user
Built into SEO workspace
Typed columns
Per-row revision historyLimitedLimited
Soft-delete trash (30d)Limited
CSV import wizard
Formulas
Per-project scoping

Notion + Airtable are excellent at what they do. Records isn't trying to replace them for cross-tool data work. It replaces the ad-hoc spreadsheets your SEO team makes inside Drive with something typed, versioned, and scoped to the project.

FAQ

Records questions.

Why no formulas?
Three reasons. First, formulas are a complexity tarpit — every formula engine eventually grows into a half-Excel that nobody fully understands. Second, the use cases we cared about (vendor lists, outreach trackers, prospect data) rarely need formulas — they need typed columns + good filtering. Third, formulas are on the roadmap behind a feature flag for tables that actually need them. We chose speed + reliability over Excel parity for v1.
Can I migrate an existing Google Sheet?
Yes. Export the sheet to CSV → click Import CSV in any Records table → the wizard auto-detects column types and maps them. You confirm the mapping, preview the first 10 rows, then click Import. Bulk row coercion handles type fixes (e.g., dates that came in as strings).
How does the soft-delete work?
Click delete on a row → marked deletedAt, hidden from the grid. The row stays in /projects/[id]/records/trash for 30 days. Click Restore → row reappears with all history intact. After 30 days, the daily purge cron hard-deletes (irreversible).
Can I see who edited a specific cell?
Yes. Row menu → View history → modal shows chronological revisions with user + timestamp + old/new value per cell. The full history persists for the lifetime of the row (no decay).
What's the row limit per table?
No hard limit. Performance stays smooth up to ~10K rows. For 50K+ rows you should probably use a real database — Records is designed for human-scale data, not analytics warehouse.
Can clients see Records via the portal?
Not by default. Records are internal to the workspace. If you want to expose specific tables to a client, the visibility scoping is on the Phase 38.x roadmap.
Can I share a Record table publicly via URL?
Not in v1. Tables are workspace-scoped, accessible only to project members. Public sharing is on the roadmap but requires additional auth + rate limiting work.

Replace your ad-hoc sheets.

14-day trial. Import a sheet and see how it feels typed.