Title: EntryPort for Gravity Forms
Author: SPINX Digital
Published: <strong>October 14, 2026</strong>
Last modified: October 14, 2026

---

Search plugins

![](https://ps.w.org/entryporter-for-gravity-forms/assets/banner-772x250.png?rev
=3746412)

![](https://ps.w.org/entryporter-for-gravity-forms/assets/icon-256x256.png?rev=3746318)

# EntryPort for Gravity Forms

 By [SPINX Digital](https://profiles.wordpress.org/spinxdigitaldev/)

[Download](https://downloads.wordpress.org/plugin/entryporter-for-gravity-forms.1.0.2.zip)

 * [Details](https://kea.wordpress.org/plugins/entryporter-for-gravity-forms/#description)
 * [Reviews](https://kea.wordpress.org/plugins/entryporter-for-gravity-forms/#reviews)
 *  [Installation](https://kea.wordpress.org/plugins/entryporter-for-gravity-forms/#installation)
 * [Development](https://kea.wordpress.org/plugins/entryporter-for-gravity-forms/#developers)

 [Support](https://wordpress.org/support/plugin/entryporter-for-gravity-forms/)

## Description

Import Gravity Forms entries from CSV or Excel files in the Exportly for Gravity
layout, with strict file checks and a one-click sample CSV.

### 🚀 Spreadsheet Rows to Gravity Forms Entries, In a Few Clicks

**EntryPort for Gravity Forms** adds a dedicated import screen inside the Gravity
Forms admin menu. Select a form, upload a CSV or Excel (XLSX) file, and the plugin
creates one new Gravity Forms entry for each row in your file.

EntryPort is the companion to **Exportly for Gravity**. Where Exportly downloads
your form entries to a spreadsheet, EntryPort reads that spreadsheet back in and
recreates the entries inside a Gravity Form. Together they let you move, restore,
and migrate form data with ease.

Getting existing data into Gravity Forms — from a spreadsheet, an old system, or
another website — is normally slow and error-prone. EntryPort makes it a guided 
task, and it checks your file before importing: if the file does not match the exact
column structure of the selected form, the import stops with a clear message before
any entry is created.

### ✨ Why Choose EntryPort for Gravity Forms?

 * **One Simple Screen** — No extra menus or settings pages. Pick a form, choose
   a file, and import.
 * **CSV and Excel** — Upload a `.csv` or `.xlsx` file, whichever your team prefers.
 * **Mistakes Caught Early** — Strict structure validation rejects a mismatched 
   file and tells you exactly which column is wrong.
 * **Ready-Made Template** — One click downloads a sample CSV with the exact columns
   the selected form requires.
 * **Clear Results** — Every import reports how many entries were imported, how 
   many rows were skipped, and why.
 * **Safe for Existing Data** — Imports only add new entries. Current entries are
   never modified or deleted.
 * **Admin-Only** — Nothing changes on the public-facing website. Visitors see no
   difference.

### ⚙️ How It Works

 1. **Choose** — Open `Forms > EntryPort for Gravity Forms` and select the form you
    want to import entries into.
 2. **Prepare** — Use a file exported by Exportly for Gravity for the same form, or
    click `Download Sample CSV` to get a correctly formatted template.
 3. **Validate** — When you upload a file, EntryPort reads its header row and compares
    it, column by column, with the structure Exportly for Gravity produces for that
    form: six fixed columns followed by one column per form field, using the field 
    labels as headers. If the columns do not match, the import stops and an error explains
    exactly which column is wrong.
 4. **Import** — When the structure matches, each remaining row is turned into a Gravity
    Forms entry with `GFAPI::add_entry()`. The fixed columns populate the entry’s metadata
    and the remaining columns populate the matching form fields.
 5. **Review** — A notice reports how many entries were created and lists any rows 
    that could not be imported. The new entries appear under `Forms > Entries` for 
    that form.

### 🧩 Features at a Glance

 * **CSV Import** — Import Gravity Forms entries from a CSV file.
 * **XLSX Import** — Import Gravity Forms entries from an Excel (XLSX) file, read
   with the bundled PhpSpreadsheet library.
 * **Strict Structure Validation** — The uploaded file must match the selected form’s
   Exportly layout, or the import is rejected with a specific error, such as the
   wrong number of columns or a column in the wrong place.
 * **Download Sample CSV** — A one-click button generates a template with the exact
   columns for the selected form, plus example rows you can replace with your own
   data.
 * **Clear Import Results** — An on-screen message reports how many entries were
   imported, how many rows were skipped, and a short explanation for any row that
   could not be added.
 * **Multi-Part Field Support** — Fields such as Name, Address, and Checkboxes are
   supported, with one column per part, so their information is imported correctly
   rather than lost.
 * **Content-Based File Verification** — Uploaded files are verified by their actual
   contents, not just their file extension.
 * **Formula-Injection Round Trip** — Restores values that Exportly escaped to prevent
   spreadsheet formula injection, so they come back as they were originally entered.
 * **Standards-Compliant CSV Reading** — CSV reading follows strict RFC 4180, so
   values containing backslashes import unchanged.
 * **Sensible Row Handling** — Completely blank rows are skipped automatically, 
   and rows without a valid Entry Date are given the current date and time.
 * **Permission-Aware** — Uses the WordPress admin area and Gravity Forms capabilities
   to control who can import.
 * **Accessible Import Screen** — Reduced-motion support and a visible focus indicator
   in Windows High Contrast Mode.

### 📄 Know Exactly What Your File Needs

For an import to succeed, your file’s columns must exactly match what the selected
form expects. This is the same layout Exportly for Gravity produces, so a file exported
by that plugin for the same form imports without changes.

**Standard information columns** come first, in this order:

 * **Entry Date** — the date and time of the entry (leave blank to use the current
   time)
 * **User Agent** — browser and device information (optional)
 * **User IP** — the submitter’s IP address (optional)
 * **Source Url** — the page the entry came from (optional)
 * **Is Starred** — whether the entry should be starred (use 1 for yes, 0 for no)
 * **Is Read** — whether the entry should be marked as read (use 1 for yes, 0 for
   no)

**Your form’s field columns** follow: one column per form field, in form order, 
using each field’s label. Multi-part fields such as Name or Address use one column
per part. Display-only elements — section headings, page breaks, plain HTML blocks,
and CAPTCHA — are not included.

Do not rename, add, remove, or reorder the columns. The import checks them exactly,
and any change causes the file to be rejected. The safest starting point is always
a file exported by Exportly for Gravity for the same form, or the Sample CSV.

### 🔐 Who Can Import

Access to the import screen is controlled by WordPress and Gravity Forms permissions,
so only trusted staff can add entries to your forms:

 * **Administrators** — full access.
 * **Roles granted the Gravity Forms “edit entries” permission** — can open the 
   import screen and import entries.
 * **Editors, Authors, and Contributors** — no access unless they are explicitly
   granted that permission.
 * **Subscribers, customers, and visitors** — no access.

### 🔒 Privacy & Data Handling

 * Importing only adds new entries to the form you choose. Existing entries are 
   left untouched.
 * There is no separate settings page and nothing is saved between sessions. You
   make your choices each time you import.
 * The plugin works entirely inside the WordPress admin area and makes no changes
   to your theme, pages, or forms.
 * Import files can contain personal information. Store them securely and remove
   the ones you no longer need.

### 🔁 Round-Trip With Exportly for Gravity

Pair EntryPort for Gravity Forms with Exportly for Gravity for a complete export-
and-import toolkit: export from one place, import into another.

 * **Move entries between sites** — export a form on the source site, then import
   the file into the matching form on the destination site. The destination form
   must have the same fields, in the same order, as the source form.
 * **Restore a previous export** — upload a file you exported earlier into the same
   form.
 * **Back up before large imports** — export a form’s existing entries first, so
   you can always return to a known-good state.

EntryPort is a separate plugin and does not modify Exportly for Gravity. You can
run both at the same time.

### 💡 Best For

 * Agencies and site owners moving entries from a staging site to a live site, or
   between websites.
 * Teams bulk-loading entries from a spreadsheet or an old system instead of adding
   them by hand.
 * Administrators restoring entries from an earlier Exportly export.
 * Anyone who wants a file check before the import, not a clean-up after it.

### 📋 Requirements

 * WordPress 5.8 or newer.
 * Gravity Forms, installed and activated.
 * A Gravity Form to import into. The form must already exist.
 * PHP 8.1 or newer, because the bundled PhpSpreadsheet dependency requires PHP 
   8.1.

### Disclaimer

This plugin requires Gravity Forms to be installed and active. It is an independent
product and is not affiliated with, endorsed by, or sponsored by Rocketgenius, Inc.
or Gravity Forms. Gravity Forms is a trademark of Rocketgenius, Inc.

## Installation

#### WordPress Admin Method

 1. In your WordPress admin, go to `Plugins > Add New`.
 2. Search for `EntryPort for Gravity Forms`.
 3. Click `Install Now`, then `Activate`.

#### Upload Method

 1. In your WordPress admin, go to `Plugins > Add New > Upload Plugin`.
 2. Choose the plugin file and click `Install Now`.
 3. Click `Activate`.

#### FTP Method

 1. Upload the `EntryPort-for-gravity-forms` folder to the `/wp-content/plugins/` directory.
 2. Activate EntryPort for Gravity Forms from the WordPress `Plugins` screen.

#### After Activation

 1. Make sure Gravity Forms is installed and activated.
 2. Go to `Forms > EntryPort for Gravity Forms`.
 3. Select the form you want to import entries into.
 4. Click `Download Sample CSV` if you need a template, and prepare your file so its
    columns exactly match it.
 5. Choose your file under Import File and click `Import Entries`.
 6. Read the result message, then open `Forms > Entries` for that form to see the new
    entries.

If Gravity Forms is not active, the import screen shows a notice asking you to activate
it. Activate Gravity Forms and reload the page.

The first time you import into a form, test with a small file of a few rows. Once
the layout is accepted, import the full file.

## FAQ

### Does this plugin require Gravity Forms?

Yes. EntryPort for Gravity Forms depends on Gravity Forms. If Gravity Forms is not
active, the import screen shows the admin notice “Gravity Forms must be installed
and activated to use EntryPort for Gravity Forms” instead of the import options.

### What files can I import?

Only CSV or XLSX files that follow the Exportly for Gravity structure for the selected
form. Any other file type is rejected. The easiest way to get a valid file is to
export the form with Exportly for Gravity, or to download the sample CSV from the
import screen.

### How do I create a file to import?

Select your form and use the `Download Sample CSV` button on the import screen. 
It generates a template named after the form (for example `contact-form-import-sample.
csv`) with the correct columns and a couple of example rows. Replace the example
rows with your data, one row per entry, keep the column headings unchanged, and 
save the file as CSV or XLSX.

### Which columns does my file need?

Six standard columns — Entry Date, User Agent, User IP, Source Url, Is Starred, 
and Is Read — followed by one column per form field, in form order, using each field’s
label. The sample CSV for your form shows the exact headings.

### Why do I get a “file structure does not match” error?

The uploaded file’s columns do not match the selected form. This usually means the
file was exported for a different form, the columns were edited, or the form’s fields
changed after the file was exported. Download the sample CSV for the form and compare
the header row.

### What do “Expected X columns but the file has Y” and “Column N should be … but the file has …” mean?

The first means your file has the wrong number of columns: add or remove columns
so the count matches the template. The second means a column is in the wrong place
or has been renamed: correct the heading and the column order to match the template.

### I see “Unsupported file type”. What should I do?

The file is not a CSV or XLSX file. Save your file as CSV or Excel (.xlsx) and try
again. Uploaded files are verified by their actual contents, not just their file
extension.

### Will importing overwrite my existing entries?

No. Importing only adds new entries. It never edits or deletes entries you already
have.

### Will importing create duplicate entries?

EntryPort always creates new entries. It does not match or update existing entries,
so importing the same file twice adds the rows twice. Import each file only once.
If you are restoring a backup into a form that still holds the original entries,
import into an empty form or remove the old entries first.

### Can I undo an import?

There is no automatic undo. If you need to remove imported entries, delete them 
from `Forms > Entries`.

### Can I leave the Entry Date blank?

Yes. Rows without a valid date are given the current date and time automatically.

### What values do Is Starred and Is Read take?

Use 1 for yes and 0 for no.

### What happens to blank rows and rows with errors?

Completely blank rows are skipped automatically, so trailing blank lines will not
cause errors. If some rows cannot be imported, the result message lists the reason
for each. Fix those rows and re-import only them.

### Are multi-part fields such as Name, Address, and Checkboxes supported?

Yes. They use one column per part, so the information in those fields is imported
correctly.

### Where do imported entries appear?

Under `Forms > Entries` for the form you imported into, just like normal submissions.

### Can I move entries from one site to another?

Yes. Export the form’s entries on the source site with Exportly for Gravity, then
on the destination site open `Forms > EntryPort for Gravity Forms`, choose the matching
form, and upload the exported file. The destination form must have the same fields,
in the same order, as the source form. Comparing a Sample CSV from each site is 
the easiest way to confirm this.

### My form’s fields changed. Do I need to do anything?

Yes. Download a fresh Sample CSV before your next import so your file matches the
updated column layout.

### Who can use the import screen?

Administrators, and any role that has been granted the Gravity Forms “edit entries”
permission. Other roles cannot see or use the import screen.

### Can website visitors see or use this tool?

No. It is available only to authorised users inside the WordPress admin area, and
it makes no changes to the public-facing website.

### Does this change how Exportly for Gravity works?

No. EntryPort for Gravity Forms is a separate plugin and does not modify Exportly
for Gravity. You can run both at the same time.

### How do I get support?

When opening a support request, please include:

 * The form you were importing into
 * The file you were importing
 * The exact on-screen message you saw, including any column error

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“EntryPort for Gravity Forms” is open source software. The following people have
contributed to this plugin.

Contributors

 *   [ SPINX Digital ](https://profiles.wordpress.org/spinxdigitaldev/)

[Translate “EntryPort for Gravity Forms” into your language.](https://translate.wordpress.org/projects/wp-plugins/entryporter-for-gravity-forms)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/entryporter-for-gravity-forms/),
check out the [SVN repository](https://plugins.svn.wordpress.org/entryporter-for-gravity-forms/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/entryporter-for-gravity-forms/)
by [RSS](https://plugins.trac.wordpress.org/log/entryporter-for-gravity-forms/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.2

 * Renamed the plugin from Importly for Gravity to EntryPort for Gravity Forms.
 * The import screen is now at `Forms > EntryPort for Gravity Forms`.
 * The plugin folder and text domain are now `EntryPort-for-gravity-forms`. Activate
   EntryPort for Gravity Forms, then deactivate and delete Importly for Gravity.
   Existing Gravity Forms entries are not affected and there are no settings to 
   migrate.

#### 1.0.1

 * Uploaded files are now verified by their actual contents, not just their file
   extension.
 * CSV reading now follows strict RFC 4180, so values containing backslashes import
   unchanged.
 * Fixed a round-trip issue affecting values that begin with a quote and a formula
   character, such as `'=total`.
 * Fixed a PHP 8.4 deprecation notice.
 * Removed unused interface styles inherited from Exportly for Gravity.
 * Added reduced-motion support and a visible focus indicator in Windows High Contrast
   Mode.

#### 1.0.0

 * Initial release.
 * Added Gravity Forms admin submenu.
 * Added CSV import.
 * Added XLSX import using PhpSpreadsheet.
 * Added strict file-structure validation against the selected form.
 * Added a Download Sample CSV template generator.

## Meta

 *  Version **1.0.2**
 *  Last updated **2 days ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 7.1 or higher **
 *  Tested up to **7.1.3**
 *  PHP version ** 8.1 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/entryporter-for-gravity-forms/)
 * Tags
 * [csv](https://kea.wordpress.org/plugins/tags/csv/)[entries](https://kea.wordpress.org/plugins/tags/entries/)
   [excel](https://kea.wordpress.org/plugins/tags/excel/)[gravity forms](https://kea.wordpress.org/plugins/tags/gravity-forms/)
   [import](https://kea.wordpress.org/plugins/tags/import/)
 *  [Advanced View](https://kea.wordpress.org/plugins/entryporter-for-gravity-forms/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/entryporter-for-gravity-forms/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/entryporter-for-gravity-forms/reviews/)

## Contributors

 *   [ SPINX Digital ](https://profiles.wordpress.org/spinxdigitaldev/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/entryporter-for-gravity-forms/)