How to Send an Alert When a Table Field Exceeds a Threshold

Waiting to notice a critical value buried in rows of data is how problems slip through the cracks. TableCrafter's Pro email alert system lets you define a threshold on any numeric field and fire an automatic notification the moment an entry crosses it, no custom code, no third-party automation tools required. 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 the native Gutenberg block. WooCommerce powers over 6 million live online stores (BuiltWith, 2026).
What You Need Before You Start?
Threshold alerts are a Pro feature. Before configuring one, confirm the following are in place:
- TableCrafter Pro is installed and activated on your WordPress site.
- You have at least one published table connected to a Gravity Forms data source. Alerts can reference any numeric column in that table, including Number, Calculation, Rating, or any field whose values are consistently parseable as numbers.
- Your WordPress site can send email. TableCrafter uses
wp_mail()under the hood, so if your hosting blocks outbound mail you will need an SMTP plugin such as WP Mail SMTP before alerts will deliver reliably. - You know which field ID in Gravity Forms corresponds to the column you want to watch. You can find this under Forms → the form name → Edit → click the field to see its Field ID in the right panel.
Step 1: Open the table builder for your target table
Navigate to TableCrafter → Tables in the WordPress admin sidebar. Find the table whose data you want to monitor and click Edit. If you have not created a table yet, click Add New, select your Gravity Forms data source, and publish it before continuing, the alert configuration lives inside the table settings, not as a global plugin setting.
Inside the table builder you will see a tabbed interface. The tabs typically include Columns, Filters, Permissions, and Alerts. Click the Alerts tab.
The alert configuration is stored per-table in the WordPress database as part of the table's JSON settings record. Each table manages its own alert rules independently, so a rule on one table never affects any other table on your site. If you have multiple tables monitoring different data sources or different forms, configure alerts on each table separately inside that table's builder. There is no global alert panel in TableCrafter's main settings area; the Alerts tab inside the table builder is the only place where rules are created, edited, or deleted for that table. Rules take effect as soon as the table is saved, with no additional activation step required.
The column mapping you define here is stored as a JSON configuration in the WordPress database. You can export this configuration using the TableCrafter export tool and import it to another table or another site. This is useful when replicating a table layout across multiple pages or when migrating a table to a staging environment for testing before going live.
Step 2: Add a threshold alert rule
On the Alerts tab, click Add Alert Rule. A rule card expands with the following fields:
- Field, select the column you want to monitor from the dropdown. The list is populated from the columns configured on the Columns tab. If a column is missing, add it there first, then return to the Alerts tab.
- Operator, choose the comparison operator: Greater than (
>), Greater than or equal to (>=), Less than (<), Less than or equal to (<=), Equals (=), or Contains for text fields. For a numeric "exceeds" alert, use Greater than. - Threshold, enter the comparison value. For a mileage column, this might be
5000. For a ratio column,0.95. Do not include currency symbols or commas; enter plain numbers only. - Recipient, a single email address. Each rule sends to one recipient. To notify multiple people about the same threshold, add a separate rule per recipient pointing to the same field and operator.
- Attach CSV, a checkbox. When enabled, the alert email includes a CSV export of the full table attached. This is useful when the recipient needs to review surrounding rows rather than just the triggering value.
A fully configured rule for a Total Miles column with a 5,000-mile threshold might set: Field = Total Miles, Operator = Greater than, Threshold = 5000, Recipient = dispatcher@company.com, Attach CSV = checked. When a cell edit changes that column's value from below 5,000 to above 5,000, one alert email fires to dispatcher@company.com with the table's CSV attached.
Step 3: Save and verify the configuration
Click Save Table at the top right of the builder. TableCrafter writes the alert rule to the table's stored configuration in the WordPress database.
To confirm the rule is active without waiting for real data to cross the threshold, you can create a test entry in Gravity Forms directly (Forms → the source form → Entries → Add New) with a value that intentionally exceeds your threshold, then immediately edit that entry through the TableCrafter frontend using the inline editor. The alert should fire within seconds.
Remember that alerts fire only on the first crossing: when the new value satisfies the rule and the old value did not. If your test entry already exceeds the threshold before you edit it, changing it to a higher value will not trigger the alert again, because the old value already passed the rule. To reliably test, start with a value below the threshold, save the entry, then edit it through the frontend table to a value above the threshold. That transition is what fires the alert.
If the test alert does not arrive, check the WordPress debug log (if WP_DEBUG_LOG is enabled) for any wp_mail() errors, and verify your site's mail configuration using your SMTP plugin's test-send feature. TableCrafter calls wp_mail() synchronously during the save request, so delivery problems appear in the debug log immediately after the cell save completes. Once delivery is confirmed, delete the test entry from Gravity Forms to keep production data clean.
TableCrafter re-fetches this data on each page load by default. If your data source updates infrequently and your site has significant traffic, enable the built-in caching option in the table's Performance tab. This stores the fetched data for a configurable number of minutes and serves it from WordPress transients, reducing API calls to the source and improving page load time for visitors.
GFAPI::update_entry_field() through a nonce-validated AJAX request to wp-admin/admin-ajax.php. Direct edits inside the Gravity Forms admin panel do not trigger TableCrafter alert rules.Step 4: Embed the table with the shortcode
If you have not already placed the table on a page, embed it with the canonical shortcode:
[tablecrafter id="42"]
Replace 42 with your actual table ID, visible in the URL when you edit the table (post=42). You can also combine attributes, for example [tablecrafter id="42" edit="true" filter="true"] to enable inline editing and column filters on the same embed.
Once embedded, authorized users who edit a cell in the watched column trigger the alert the first time their saved value crosses the configured boundary in the monitored direction. Specifically, the alert fires when the new value satisfies the rule condition and the old value did not. If the field was already above the threshold before the edit, updating it to an even higher value does not fire another alert. From the user's perspective the edit saves normally, with no confirmation, modal, or indication that an alert was dispatched.
The configuration you set here applies to every visitor who loads a page containing this table, regardless of whether they are logged in. Role-specific overrides for columns and rows are a separate layer and do not replace these global display settings. Apply global settings first, then add role restrictions as needed for tables that serve multiple user types.
How Does Combine Alerts with Role-Based Permissions Work?
A common pattern is to restrict which roles can edit the threshold column while keeping the data visible to all. For example, drivers on a load tracking table might see their mileage figures but only dispatchers can update them. This prevents accidental alert spam from untrained users entering test values.
Configure this under the Permissions tab of the same table builder:
- Table-level permissions control who can view the table at all.
- Column-level permissions control which roles see or can edit a specific column. Set the Total Miles column to Edit for the
dispatcherrole and Read Only for thedriverrole.
Both table-level and column-level permission rules are Pro features. The Free tier renders tables as read-only for all visitors, so no inline editing, and therefore no change-triggered alerts, are possible on the free plan.
How Does Troubleshooting Alerts That Do Not Fire Work?
If you followed the steps above but emails are not arriving, work through this checklist in order:
- Check your spam folder. WordPress default mail often triggers spam filters. Configure an SMTP plugin with authenticated sending (SendGrid, Mailgun, etc.) to improve deliverability.
- Confirm the edit path. Only edits made through the TableCrafter inline editor fire alert hooks. Gravity Forms admin edits bypass the alert system entirely.
- Verify the column type. If the column stores text that happens to look numeric, the threshold comparison may fail silently. Ensure the Gravity Forms field type is Number or a Calculation field.
- Check the threshold value format. Enter thresholds without currency symbols or commas. Use
1500not$1,500. - Re-save the table. Occasionally a caching plugin will serve a stale table configuration. After making changes in the builder, save the table, then flush any page cache (NitroPack, WP Rocket, etc.) on the page hosting the shortcode.
- Inspect the browser console. When a cell is saved, TableCrafter posts to
wp-admin/admin-ajax.php. A failed nonce check or a PHP error during the save will return a non-200 response and prevent the alert from being queued. Open DevTools → Network tab → filter byadmin-ajax→ look for error responses.
Frequently Asked Questions
What do you need before you start?
Threshold alerts are a Pro feature. Before configuring one, confirm the following are in place:
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.