How to Use Status Badges for Task Completion Tracking in WordPress

If you manage tasks, projects, or workflows inside WordPress, you already know that a plain text status column is easy to miss at a glance. Status badges in TableCrafter transform those raw text values, "Open," "In Progress," "Done", into color-coded labels that communicate state instantly, without any custom CSS or developer intervention. This guide walks through exactly how to configure them and get the most out of them for task completion tracking. WordPress powers 43% of all websites globally (W3Techs, July 2026), and TableCrafter bridges the gap between the data you collect and the tables your users need to see, no custom PHP, no dashboard access required for viewers. The free version on WordPress.org supports CSV, JSON, Google Sheets, and Excel. Pro adds Gravity Forms, Airtable, Notion, WooCommerce, REST APIs, inline cell editing, export to CSV/PDF, role-based column visibility, and auto-refresh. Every table embeds on any page with a [tablecrafter] shortcode or. PDF export is requested by users in 64% of data-heavy WordPress plugin reviews (WordPress.org plugin directory analysis, 2025).
How Do What Are Status Badges and Why They Matter for Task Tracking Work?
Status badges are a Pro feature in TableCrafter that map text field values to colored pill-shaped labels rendered directly inside table cells. Instead of reading a column and interpreting the value, viewers see a red badge for "Blocked," a yellow badge for "In Progress," and a green badge for "Complete", all at a glance.
This matters most in operational contexts: driver dispatch logs, client project trackers, internal task boards, or any table where stakeholders need to scan dozens of rows quickly and identify what needs attention. The color mapping is defined once in the table builder and applied automatically every time the table renders.
What Do I Need Before Setting Up Status Badges for Tasks?
Before configuring status badges you need a working TableCrafter table connected to a Gravity Form that includes a status-type field. The most common choices are a Drop Down field or Radio Buttons field with values like "Not Started," "In Progress," "Complete," and "Blocked." A Text field also works if you want free-form status entries.
If you do not have a table yet, go to TableCrafter → Tables → Add New, select your Gravity Form as the data source, and add columns for the fields you want to display. Place the status column wherever it makes sense in the column order, many teams put it first or last for quick scanning.
The shortcode to embed the table on any page or post is straightforward:
[tablecrafter id="42"]
The aliases [tablecrafter id="42"] and [tablecrafter id="42"] map to the same handler, so any existing embeds continue to work.
How Do I Configure Status Badges in the Table Builder?
Open your table in TableCrafter → Tables and click the column that holds your status values. The column settings panel will show a Column Type selector. Change the type to Status Badge. WordPress powers 43% of all websites globally (W3Techs, July 2026), and TableCrafter bridges the gap between the data you collect and the tables your users need to see, no custom PHP, no dashboard access required for viewers, and no per-row limits on the free tier. The free version on WordPress.org supports CSV, JSON, Google Sheets, and Excel. Pro adds Gravity Forms, Airtable, Notion, WooCommerce, REST APIs, inline cell editing, export to CSV/PDF, role-based column visibility, and auto-refresh. Every table embeds on any page with a [tablecrafter] shortcode or the native Gutenberg block.
Once selected, a mapping interface appears. Each row in the mapping table represents one badge rule:
- Value, the exact text string from the form entry (case-sensitive, matches what is stored in
gf_entry_meta) - Label, the text displayed inside the badge (can differ from the stored value)
- Color, a color picker or hex input for the badge background
- Text Color, foreground color for the label text, defaulting to white
A typical task-tracking configuration looks like this:
Value: "not_started" → Label: "Not Started" → Color: #6B7280 (gray)
Value: "in_progress" → Label: "In Progress" → Color: #F59E0B (amber)
Value: "complete" → Label: "Complete" → Color: #10B981 (green)
Value: "blocked" → Label: "Blocked" → Color: #EF4444 (red)
Value: "review" → Label: "In Review" → Color: #3B82F6 (blue)
Click Save Table when done. TableCrafter stores the badge mapping in the table configuration and applies it at render time, no page template changes needed.
in_progress) and displays a label on the frontend, match the stored key in the badge mapping, not the display label.How Does Combining Status Badges with Inline Editing Work?
Status badges become significantly more powerful when paired with Pro inline editing. When inline editing is enabled on the table, clicking a status badge cell opens an editable dropdown populated from the same mapping values. The user selects a new status, hits save, and TableCrafter writes the update back to Gravity Forms via GFAPI::update_entry_field() over an AJAX call to wp-admin/admin-ajax.php. The cell re-renders immediately with the new badge color, no page reload required.
To enable inline editing, open the table settings panel (the gear icon next to the table name) and toggle Allow Inline Editing. You can restrict which columns are editable: in the status column settings, check Editable. Columns left unchecked remain read-only even when the table-level editing is on.
This combination turns a static report into a lightweight task board: team members can update task statuses directly on the WordPress page without navigating to the Gravity Forms backend.
How Do I Use Role-Based Permissions with Status Columns?
Not every team member should be able to change a task status. TableCrafter's Pro permission system lets you lock down editing at both the table level and the individual column level.
Under Table Settings → Permissions, you can specify which WordPress roles can view the table and which can edit entries. Under each column's settings, a separate Edit Roles control overrides the table-level default for that column. A typical setup for a task tracker:
- Administrators: full view + edit across all columns
- Editors / Project Managers: view all, edit status + assignee columns
- Contributors / Team Members: view only, or edit the status column on rows they own
- Subscribers / Clients: view only, no editing
When a user without edit permission views the table, the status badge renders as a read-only pill. No edit affordance is shown. Users with edit permission see the same pill but clicking it opens the inline editor.
How Do Advanced Filtering and Exporting by Status Work?
A color-coded badge is useful for scanning, but filtering by status is how teams actually act on the data. TableCrafter's Pro advanced filters support the status column directly: users get a dropdown filter above the table listing all defined badge values, and selecting one filters the table to matching rows instantly via AJAX.
You can also pre-filter a table embed by passing a filter parameter in the shortcode:
[tablecrafter id="42" filter_field="status" filter_value="blocked"]
This is useful for embedding a "Blocked Items" view on a project dashboard page while the full table lives elsewhere.
For reporting, the Export feature (CSV, Excel, or PDF) exports the raw stored value from Gravity Forms, not the badge label, unless you configure the column label to match. If you want the export to show "In Progress" rather than in_progress, set the badge Label to match the export expectation and ensure the form field stores the human-readable version.
How Does Practical Tips for Task Completion Tracking Work?
A few patterns that work well in production deployments:
- Use a consistent color convention. Gray for not started, amber or orange for in-progress states, green for done, red for blocked or overdue. Teams internalize this faster than arbitrary brand colors.
- Limit status values. More than six or seven distinct statuses creates cognitive overhead. If your workflow has many stages, consider grouping them into a smaller set for the badge column and using a secondary detail column for granular state.
- Pair with email alerts. TableCrafter's Pro email alert feature can trigger a notification when an entry changes. Combine this with inline status editing so that marking a task "Blocked" automatically emails the project lead.
- Use the column visibility picker. On mobile, status is often the most important column. Use the column visibility settings to pin the status column and hide lower-priority columns on small screens, keeping the badge front and center.
- Duplicate rows for recurring tasks. The Pro row duplication feature lets users copy a completed task, reset the status to "Not Started," and reuse the entry structure for the next cycle, useful for weekly checklists or recurring maintenance items.
Frequently Asked Questions
How Do What Are Status Badges and Why They Matter for Task Tracking Work?
Status badges are a Pro feature in TableCrafter that map text field values to colored pill-shaped labels rendered directly inside table cells. Instead of reading a column and interpreting the value, viewers see a red badge for "Blocked," a yellow badge for "In Progress," and a green badge for "Complete", all at a glance.
What Is TableCrafter?
TableCrafter is a WordPress plugin that turns data from Gravity Forms, Google Sheets, Airtable, Notion, REST APIs, CSV files, and WooCommerce into interactive, sortable, filterable frontend tables. Embed any table on any WordPress page with the [tablecrafter] shortcode or the native Gutenberg block. No PHP or custom development required. The free version supports CSV, JSON, Google Sheets, and Excel. Pro adds Gravity Forms, Airtable, Notion, WooCommerce, REST APIs, inline cell editing, export to CSV and PDF, role-based column visibility, and auto-refresh.
Does this require PHP or developer skills?
No. TableCrafter is configured entirely through the WordPress admin interface. You choose your data source, map fields to columns, and set display preferences using point-and-click controls. Embedding uses the [tablecrafter] shortcode or the native Gutenberg block.
Is the free version sufficient or do I need Pro?
The free plugin on WordPress.org supports CSV, JSON, Google Sheets, and Excel sources with unlimited tables, rows, and columns. Pro adds Gravity Forms, Airtable, Notion, WooCommerce, REST API sources, inline cell editing, bulk row actions, export to CSV and PDF, role-based column visibility, and auto-refresh every N seconds.
Ready to try it?
TableCrafter is free on WordPress.org. Pro unlocks inline editing, role-based permissions, and advanced data sources.
Column order is preserved across sessions. Once you set a column order in the table builder, that order persists in the shortcode output for all visitors. Users with the column reorder permission can adjust their own view without affecting the default seen by others.
The shortcode accepts all column and filter settings defined in the table builder as defaults, but you can override individual parameters inline. For example, `[tablecrafter id="1" per_page="25"]` overrides the default rows-per-page setting for this specific embed without changing the saved table configuration. This lets you reuse one table definition across multiple pages with different display requirements.