Gravity Forms Frontend Table: Show Entries to Users on the Frontend

Updated June 2026 • 5 min read

By default, Gravity Forms entries live entirely inside the WordPress admin. Your users — employees, customers, drivers, clients — have no way to see them without logging in to /wp-admin. This guide shows you exactly how to publish a searchable, sortable frontend table from any Gravity Forms form, with full control over who sees what.

The Problem: Gravity Forms Entries Are Admin-Only by Default

Gravity Forms is excellent at collecting data. What it does not do is display that data back to users on the frontend of your site. Every entry goes into the Gravity Forms entry list in /wp-admin/admin.php?page=gf_entries — a screen that requires administrator or editor access to reach.

This creates a real gap for a wide range of workflows:

In each case the data is already in Gravity Forms. The missing piece is a way to surface it on the frontend, filtered and scoped to the right audience.

The Solution: TableCrafter Turns GF Entries into a Frontend Table

TableCrafter (formerly Gravity Tables) is a WordPress plugin built specifically for this. It reads entries directly from Gravity Forms via the GF API and renders them as a fully interactive table on any page or post via a shortcode. No custom code. No REST API configuration. No external database.

You pick a Gravity Forms form, choose which fields become columns, configure filters and permissions, and drop one shortcode on a page. That is the entire workflow.

Important scope note: TableCrafter works exclusively with Gravity Forms entries. It does not import CSV files, connect to Google Sheets, or pull from external APIs. If your data lives in Gravity Forms, it is the right tool. If your data lives elsewhere, it is not.

Step-by-Step: Creating Your First Gravity Forms Frontend Table

The setup takes about five minutes once the plugin is installed.

1. Install TableCrafter

Install the free version directly from WordPress.org: go to Plugins > Add New, search for TableCrafter (or Gravity Tables), install, and activate. No API key required for the free tier.

2. Create a Table Configuration

In your WordPress admin, navigate to TableCrafter > Tables > Add New. The table builder will ask you to select a Gravity Forms form. Once selected, every field in that form becomes an available column.

Drag the columns you want into the active list. For a load tracker, that might be: Driver Name, Date, Origin, Destination, Load Weight, Status. For an employee directory: Name, Department, Role, Phone, Email.

3. Configure Access Permissions

Under the Access tab, choose which WordPress user roles can view the table. You can restrict it to logged-in users only, specific roles (like subscriber or a custom driver role), or leave it public. This determines who can reach the page — not just who can see the shortcode.

4. Place the Shortcode

Save your table configuration. TableCrafter assigns it a numeric ID — let's say it is 1. Open any page or post and add the shortcode:

[tablecrafter id="1"]

Publish the page. Visit it on the frontend. Your Gravity Forms entries now appear as a live, paginated table.

The table ID in the shortcode matches the configuration ID shown in TableCrafter > Tables — not the Gravity Forms form ID. If you have multiple table configurations for the same form (for example, one for admins and one for drivers), each gets its own ID and shortcode.

Role-Based Access: Who Sees Which Entries

Showing the table to logged-in users is one layer of control. Filtering which entries each user sees is a separate, equally important layer — and this is where most real-world use cases get interesting.

Show Users Only Their Own Entries

TableCrafter supports filtering by the WordPress user who submitted the entry. Enable the Filter by Current User option in the table configuration, and a driver logging in will see only their own loads. A customer will see only their own orders. This works via Gravity Forms' built-in created-by field — no custom coding required.

Admins See Everything, Users See Their Own

A common pattern is to create two table configurations from the same form:

  1. Admin table (ID 1): All entries, all columns, restricted to the administrator role. Embedded on an admin-only dashboard page.
  2. Driver table (ID 2): Filtered to current user, limited columns (no internal notes column, for example), open to the driver role. Embedded on the driver portal page.

Both tables pull from the same Gravity Forms form. Each has its own shortcode. This setup handles the majority of role-based data access requirements without any custom PHP.

Column Visibility by Role Pro

If you need column-level control — not just row-level — TableCrafter Pro adds per-column role visibility. You can configure a column so that administrators see a Cost field while drivers do not, even if both are viewing the same table on the same page.

This is useful when your form captures internal data (margins, admin notes, vendor contacts) alongside data that is appropriate for the end user to see. Instead of building two separate tables, you build one and toggle visibility per column per role.

Filtering, Search, and Sorting

Every TableCrafter table ships with search and sorting built in — no configuration needed. These are free features:

For a load tracking system, a dispatcher might filter by driver name and date range to see that day's completed loads. For an order tracker, a customer might search by order number. All of this works with zero code.

CSV Export

TableCrafter includes a CSV export button Free that exports the currently filtered view. If a user has filtered the table to their own entries for a date range, the export reflects exactly that — not the full dataset.

This is particularly useful for drivers who need to submit weekly mileage reports, or customers who need a record of their orders for accounting purposes. The export respects access permissions: a driver exporting their own table cannot download another driver's entries.

Real-World Use Cases

Load Management System

Drivers submit loads via a Gravity Form. A frontend table shows each driver their own history. Dispatchers see the full board filtered by date and status.

Employee Directory

HR collects staff information via a form. The table surfaces it company-wide as a searchable directory — no database plugin needed.

Order Tracker

Customers submit orders via Gravity Forms and check status on a portal page. Filtering by current user ensures each customer sees only their orders.

Project / Task Board

Project submissions feed a frontend table visible to team members. Status badges highlight which tasks are open, in progress, or complete.

Inline Editing on the Frontend Pro

TableCrafter Pro adds the ability to edit entries directly in the frontend table — no round-trip to the WP admin required. Click a cell, type a new value, and the change saves back to Gravity Forms via AJAX.

For a load tracker, a dispatcher can update a delivery status from In Transit to Delivered directly in the table. For a project board, a team member can mark a task complete without leaving the page. Inline edit validation ensures data integrity: required fields cannot be blanked out, and format constraints from the original form are respected.

Additional Pro editing features include:

Status Badges and Data Bars

Two display features make the table readable at a glance:

Status Badges Free map choice field values to color-coded pill badges. If your form has a Status field with values like Open, In Progress, and Closed, you configure each value to a color. The column renders as color badges instead of plain text — immediately scannable.

Data Bars Pro render numeric fields as horizontal progress bars relative to the column maximum. For a load weight column, for instance, each row shows a bar indicating the load relative to the heaviest entry in the current view.

Requirements and Compatibility

TableCrafter has minimal requirements:

It works alongside any WordPress theme and does not require Elementor, WooCommerce, or any other plugin. The free version is fully functional with no usage limits on the number of tables or entries.

TableCrafter does not add custom database tables. It reads directly from Gravity Forms' entry tables (wp_gf_entry, wp_gf_entry_meta). Your data stays in Gravity Forms — TableCrafter is purely a display and editing layer on top of it.

Free vs. Pro: What You Get

The free version covers most display and filtering needs:

Pro adds write-back and advanced display capabilities:

Start with the free version to verify it fits your use case, then upgrade if you need editing or role-based column control.

Try TableCrafter Free

Install from WordPress.org in two minutes. No account required. Upgrade to Pro when you need inline editing or role-based column visibility.