TableCrafter – Data to Beautiful Tables
TableCrafter builds fast, responsive, sortable data tables in WordPress from the sources you already use – no code required. Add a shortcode (or the TableCrafter block / Elementor widget) and you are done. Upgrade to Pro to edit your data inline, right on the frontend, like a spreadsheet.
Free data sources
- JSON / REST APIs (any public endpoint)
- CSV files (URL)
- Public Google Sheets
- Excel (.xlsx) files
Free features
- Gutenberg block + Elementor widget +
[tablecrafter]shortcode - Sorting, live search, pagination, and column labels
- Responsive / mobile layouts and accessibility
- CSV / Excel / PDF export
- One-click demo tables to get started in seconds
This plugin is the successor to the original “TableCrafter – Data to Beautiful Tables” plugin. Existing installs continue to work – your tables, settings, and shortcodes are preserved, so the upgrade is seamless and fully backward compatible (your existing data and shortcodes keep working).
Upgrade to Pro
TableCrafter Pro unlocks the connected integrations and editing suite:
- Gravity Forms entries and WooCommerce products
- Airtable and Notion databases as live tables
- XML feeds and External Databases (MySQL / MS SQL)
- Frontend inline editing, bulk fill, and row duplication
- Two-way sync / write-back (Airtable, Notion, External DB)
- Advanced filters, conditional formatting, role-based permissions, scheduled export, and background (SWR) refresh
Pro support, licensing, and automatic updates are delivered through your TableCrafter account.
Usage
Visual builder (recommended)
Go to the TableCrafter admin menu, pick a data source, toggle the options you want (search, filters, export), preview, and copy the generated shortcode:
[tablecrafter id="123"]
Inline shortcode (no builder needed)
You can also point the shortcode straight at a JSON API, CSV file, or public Google Sheet:
[tablecrafter source="https://api.example.com/data.json"]
Parameters:
source– URL to a JSON API, CSV file, or public Google Sheet.root– dot-path to the data array inside a JSON response (e.g.root="data.results").include– comma-separated list of columns to show, in order (e.g.include="name,price,symbol").exclude– comma-separated list of columns to hide.id– render a table you built in the visual builder.
Examples:
Nested JSON, curated columns:
[tablecrafter source="https://api.example.com/items.json" root="items.list" include="name,price"]
A public Google Sheet (set sharing to “Anyone with the link”):
[tablecrafter source="https://docs.google.com/spreadsheets/d/SHEET_ID/edit"]
