Game Data Workbench Core is a professional table-based data editor for Unity that turns your ScriptableObjects into a sortable, filterable, inline-editable spreadsheet - without touching your data pipeline.
What it does
Browse and edit all your records in one place. Select a ScriptableObject type and every asset of that type appears as a row. Edit any field inline. Full Undo support throughout.
Computed columns with a real expression engine. Add formula-based columns like [damage] * [attackSpeed] for DPS, or ([value] - avg([value])) / avg([value]) for deviation from mean. 20+ built-in functions including aggregates (sum, avg, median), math (clamp, lerp, pow), and conditionals (if with short-circuit evaluation). Results update live.
Batch Operations queue. Select any number of rows and build a multi-step operation pipeline: Set Value, Add, Multiply, Linear Sequence, Random Range, or a custom expression. Each step shows a live preview with green/red diff coloring. Save queues as personal or project-scoped presets (project presets are version-controlled and shared with the team).
Excel and Google Sheets interop. Copy rows with Ctrl+C - you get TSV with a header row. Paste directly into Google Sheets or Excel. Edit there. Copy back. Paste into GDW. Column matching is by header name so order doesn’t matter.
Advanced search and filtering. Text search, property filters using a query syntax (damage>50 element=Fire), per-column filter popups, and filter chips. Cross-schema search (Ctrl+Shift+F) searches every registered schema simultaneously - useful when you know the value but not which type it’s in.
Record link navigation. Ctrl+Click any reference field to navigate directly to the referenced record, even if it’s a different schema. A breadcrumb bar tracks your history. Alt+Click opens in a new window for side-by-side comparison.
Summary row. Click Σ in the toolbar to add per-column aggregate formulas (sum, avg, min, max, count, median, or custom expression) evaluated against the currently visible filtered records. Persisted per schema in ProjectSettings.
Cell annotations. Right-click any cell to add a note. Notes show as a blue triangle indicator with author and timestamp on hover. Searchable with note:keyword in the search bar. Stored in ProjectSettings and shared via version control - useful for “don’t touch, tutorial depends on this” or post-playtest feedback.
Row grouping. Group records by any enum, bool, or text field into collapsible sections. Group enemies by faction, items by rarity, spells by element. State persists per schema.
Changed-cell highlights. After a bulk operation, affected cells get a colored left border so you can see at a glance what moved. Configurable: timer-based fade, persist until next action, or manual clear.
Schema Creator. Design new ScriptableObject types visually - add fields, define enums and structs, configure namespaces and CreateAssetMenu paths - and generate the C# file with a click. Live code preview updates as you work.
Import / Export (CSV and JSON). Full round-trip with column mapping, key-field-based record matching (update existing vs. create new), type coercion (including Color hex and asset resolution by GUID/path/name), and a review step before anything is applied.
What’s included
- Spreadsheet-style table view built on UIToolkit MultiColumnListView
- Multi-column sort, column show/hide, reorder, resize
- Inline editing with full Undo for every operation
- Collections editor (lists and nested data in a dedicated side panel)
- Find & Replace, Smart Rename (rename asset files from a field value)
- Bookmarks and pinned records
- Recent Changes Log (per-session audit trail, exportable as CSV)
- Command Palette (Ctrl+K)
- Fully customizable keyboard shortcuts
- Extensibility API: custom cell drawers, search parsers, IDataSource adapters
Architecture note for programmers
Every feature in the tool - the table view, search and filtering, computed columns, bulk operations, import/export, the Balance charts - talks to a single IDataSource interface. Nothing in the application touches ScriptableObject, SerializedObject, or AssetDatabase directly. The built-in ScriptableObject adapter is the default implementation, but it’s just one implementation of that interface.
If your data lives somewhere other than .asset files, you can implement IDataSource yourself and the entire editing environment works against your backend without modification. The interface is documented and the ScriptableObject adapter serves as a concrete reference implementation.
The upcoming Sync module will ship additional IDataSource implementations out of the box: XML, JSON, CSV, and Google Sheets - so the full table editing environment works directly against those sources, not just as an import/export bridge.
Links
- Asset Store: Game Data Workbench Core – Table-Based Data Editor for Unity | Utilities Tools | Unity Asset Store
- Documentation: Game Data Workbench | GDW
- Discord: Game Data Workbench
Currently 30% off at launch - $20.99.
Additional modules coming as separate packages: Balance (visual charts: line, histogram, scatter, radar, box plot, heatmap, comparison - with drag editing and snapshots), Sync (live data sources for XML, JSON, CSV, and Google Sheets), and Validation.
Happy to answer questions about the architecture or specific features.




















