Google Sheets WordPress Integration: 11 Ways, 6 Tested

Updated
Part of the guide: Programmatic SEO and local landing pages in WordPress

WordPress has no built-in Google Sheets integration, so you connect Google Sheets to WordPress with a plugin or a service like Zapier. A Google Sheets WordPress integration does one of three jobs: show the sheet as a table on a page, create or update pages from the sheet's rows, or send WordPress form entries into a sheet. We compared 11 ways to do these jobs and tested 6 of them hands-on in a lab with the same public sheet. The other 5 need a Google account or a paid upgrade, so we took them as far as the lab could and say where each one stopped.
Best for a live table: FlexTable, which reads the sheet again on every page view and needs no Google account. Best free table features: TablePress, which imports a copy with sorting, search and pages in 7 steps. #1 for pages from rows: LPagery, which we make, based on LPagery Pro, which built 30 pages with all six columns from the shared sheet link in 9 seconds with no Google sign-in; the free version reads only 3 columns from an uploaded CSV, and we did not see the scheduled sync (Extended plan) pick up a change in the sheet. The other plugins' paid plans for this job were not tested in our lab. For form entries into a sheet: a connector for your form plugin, such as GSheetConnector for Contact Form 7. Every method in that direction needs you to sign in with Google, so none of them was tested hands-on.
Last tested 14 October 2026 on WordPress 7.1.3. We make LPagery, one of the plugins in this comparison. We are not affiliated with any other plugin here, and nobody paid to be included.
Job | Pick | Google account needed | Free version | Measured |
|---|---|---|---|---|
Show a sheet as a table | FlexTable | No (link-shared sheet) | Live table, search, no sorting by default | 8 steps, adds 688 KB |
Show a sheet as a table | TablePress | No | Copy of the sheet; automatic re-import is Max | 7 steps, adds 198 KB |
Pages from sheet rows | LPagery (ours), #1 | No (link-shared sheet, paid plans) | CSV upload, first 3 columns | Pro: 30 pages, all 6 columns, 9 s from the sheet link; free: 30 pages from a 3-column CSV; sync of a changed sheet not observed; rivals' paid plans not tested |
Form entries into a sheet | GSheetConnector for CF7 (not tested hands-on) | Yes, Google sign-in | One sheet per form | Set up to the sign-in screen only |
Every number on this page comes from our lab run or from the vendor's own pages, read on the test date. Weights are uncompressed and only comparable with each other.
What does a Google Sheets WordPress integration do?
It moves data in one direction. Reading from the sheet into WordPress (a table, or pages built from rows) works with a sheet shared as anyone with the link, and needs no Google account in any of the plugins we tested. Writing from WordPress into the sheet (form entries, orders, users) needs write access, so every plugin for it asks you to sign in with Google or to create Google Cloud credentials. A two-way integration is two of these jobs set up side by side, which is why the sections below follow the direction of the data.
How we tested
We collected WordPress.org data for 18 plugins that mention Google Sheets and installed 13 of them (12 candidates plus Contact Form 7, which GSheetConnector needs), each on a fresh WordPress install. The six we did not install are listed with the reason under "Plugins we left out, and why". The lab runs WordPress 7.1.3 with the Twenty Twenty-Five theme and PHP 8.3 in Docker. Jonas Lindemann ran the tests with scripts that click through each plugin's own screens, so every step count is a count of real clicks.
The test sheet is Google's public sample spreadsheet "Class Data": 30 students in 6 columns, shared as anyone with the link can view and not published to the web. We created nothing in Google. For each plugin we measured:
- Steps from activating the plugin to a published page with the data on it.
- Rows shown, and whether visitors can sort, search and page through the table.
- The layout on a 390 px wide phone screen.
- When a change in the sheet would reach the page. We could not edit Google's sample sheet, so we logged every request WordPress sent to Google and every request the visitor's browser made, over two page views 5 seconds apart.
- What the table adds to the page for a logged-out visitor, against the same page without it.
- What the free version blocked during the task.
Plugins that need a connection to a Google account (Google's Sheets API, a service account or your own Google Cloud project) could not be tested hands-on. We installed them, went as far as the screen that asks for the account, photographed it, and took the rest of the setup from their documentation. Those entries say so.
How to show a Google Sheet as a table in WordPress
The quickest way to display Google Sheets data on a WordPress page is a table plugin that reads the sheet's link. These are the steps with FlexTable, the plugin that kept the table in step with the sheet in our test:
- In Google Sheets, click Share and set General access to Anyone with the link, then copy the link from the browser's address bar.
- In WordPress, install and activate FlexTable (its WordPress.org name is Sheets to WP Table Live Sync).
- Open FlexTable, click Create new table, paste the link and click Create table from URL.
- Click Save changes, then copy the shortcode with the copy button next to it.
- Paste the shortcode into a Shortcode block on your page and publish it.
If you want a copy you can edit in WordPress, TablePress does the same with the sheet's CSV export link. Without any plugin, you can also paste Google's iframe into a Custom HTML block, which is the heaviest option we measured.
1. FlexTable (Sheets to WP Table Live Sync)
FlexTable is the plugin to pick when the table on your page must follow the Google Sheet without anyone re-importing it.
It took 8 steps. The first screen asked whether to share usage data, with No thanks on offer. FlexTable took the link from the browser's address bar as it was and built the table from it. On every page view, WordPress fetched the sheet's CSV export from Google again: one request to Google in each of our two loads. That keeps the table current, and each view waits for Google. FlexTable's free version has a cache setting with a duration in days, which is off by default.
One trap: the table editor shows the shortcode as [gswpts_table="1"], but the copy button copies [gswpts_table id="1"]. When we typed the shortcode as shown, the page said Table maybe deleted or can't be loaded. Use the copy button.


- Setup: 8 steps, no Google account, a link-shared sheet was enough.
- Rows: all 30, 10 per page; search for "Senior" left 6 rows. Clicking a column header did not sort the table with the default settings.
- Freshness: WordPress requested the sheet from Google on each page view (1 request per load).
- Phone at 390 px: the table is 888 px wide and was cut off after the third column; we found no element that scrolls sideways to reach the rest.
- Weight: adds 688 KB to the page, 400 KB in 7 files from the plugin.
Pros
- Takes the normal sheet link, no publishing or API key.
- Changes in the sheet reach the page on the next view.
- Free version has unlimited tables and rows, per its WordPress.org page.
Cons
- The shortcode shown in the editor does not work; only the copied one does.
- No sorting with the default settings.
- On a phone, columns past the third were cut off.
- Each page view waits for Google unless you turn the cache on.
FlexTable Pro adds table themes, row hiding, frozen headers and AI summaries, per its WordPress.org page; the vendor's price list loads with JavaScript and did not show prices to our fetch, so check it on the vendor's site. FlexTable on WordPress.org (3,000+ active installs) and the FlexTable site.
2. TablePress
TablePress is the plugin to pick when the data changes rarely and you want the best free table features.
TablePress imports a copy of the sheet. Under Import a Table we chose URL, pasted the link and clicked Import, 7 steps in all. The link matters. With the link from the address bar, TablePress imported Google's web page instead of the data: 102 rows and 23 columns with row numbers and column letters. With the CSV export link (the same link ending in /export?format=csv instead of /edit), it imported the clean 30 rows and 6 columns.
After the import, the page never contacts Google: we logged no requests on either page view. A change in the sheet shows up only after you import it again. The Automatic Periodic Table Import box on the same screen says that automatic imports are a premium feature.


- Setup: 7 steps, no Google account.
- Rows: all 30, 10 per page; sorting, search ("Senior" left 6 rows) and pagination worked out of the box.
- Freshness: a copy; no requests to Google on page views.
- Phone at 390 px: the 640 px table made the whole page scroll sideways.
- Weight: adds 198 KB, 105 KB in 2 files, the lightest table we tested.
Pros
- Sorting, search and pages with no settings.
- Lightest table in the test.
- No calls to Google when visitors load the page.
Cons
- The address-bar link imports Google's page layout instead of your data.
- Sheet changes need a manual re-import on the free version.
- The table is wider than a phone screen.
TablePress Pro costs 89 euros a year and Max 189 euros a year for one site, read on the vendor's pricing page on 14 October 2026; Automatic Periodic Table Import is in Max. TablePress on WordPress.org (600,000+ active installs) and tablepress.org.
3. wpDataTables Lite
wpDataTables Lite is the plugin to pick when you want print, Excel and CSV buttons on the table and do not mind a heavier page.
In the free version, Google Spreadsheet is in the data source list with the label Available in Premium. The way around it is the CSV file source with URL from any domain. Our first try with the CSV export link failed with File format not supported!, because the link does not end in .csv. Adding &name=class.csv to the end fixed it. That made 9 steps.
With its cache option off, which is the default in the plugin's code, wpDataTables reads the source when the table renders, so sheet changes should appear on the next view. Our request log could not confirm this, because wpDataTables fetches the file with its own code instead of WordPress's HTTP functions, which the log watches.



- Setup: 9 steps, including the .csv workaround.
- Rows: all 30, 10 per page; sorting, search ("Senior" left 6 rows) and pagination worked.
- Phone at 390 px: the 891 px table made the page scroll sideways.
- Weight: adds 1.2 MB, 1005 KB in 20 files, the heaviest table plugin we tested.
- Free version: Google Spreadsheet source is Premium, and the table carries a Generated by wpDataTables link.
Pros
- Print, Excel, CSV and Copy buttons on the table.
- Sorting, search and pages by default.
Cons
- Google Sheets as a source needs Premium; the CSV route needs a URL trick.
- Several promotion banners on its admin screens.
- Heaviest of the three table plugins.
wpDataTables shows its prices only after its page script runs, so check them on the vendor's pricing page. Its docs say the Google Spreadsheet source works with a sheet published to the web, and with a browser link only when a Google API service account is connected. wpDataTables on WordPress.org (60,000+ active installs) and the Google Sheets docs.
4. EmbedPress
EmbedPress is the plugin to pick when you want the sheet to look like Google Sheets on your page, with its grid and tabs, and page weight does not matter.
We pasted the sheet link into EmbedPress's shortcode and published, 2 steps. EmbedPress shows Google's own spreadsheet view in a frame, so the data is always the sheet's current state. That view is heavy: a visitor's browser made 138 requests to Google and the page grew by 32.2 MB uncompressed. Google picked the interface language itself (German for our lab, whatever the browser asked for) and showed its sign-in button above the cells.

- Setup: 2 steps, no Google account.
- Freshness: live, Google serves the sheet on every view.
- Sorting and search: Google's own view in a frame; visitors can scroll the data but cannot search it on your page.
- Weight: adds 32.2 MB, by far the most in the test.
Pros
- Always shows the current sheet.
- Two steps, no settings.
Cons
- Loads Google's whole spreadsheet interface.
- The data is in a frame, so it is not in your page's own HTML.
- Google's sign-in button shows to visitors.
EmbedPress Pro costs $55 a year for one site, read on its pricing page on 14 October 2026. EmbedPress on WordPress.org (100,000+ active installs) and embedpress.com.
5. No plugin: Google's iframe embed
Google's iframe is the way to embed Google Sheets in WordPress without a plugin, and it suits a read-only view you do not need to style.
Google's documented route is File > Share > Publish to web > Embed, which gives you an iframe code for a Custom HTML block. Our sample sheet is shared by link and not published, so we used its /preview link in an iframe, which showed the data without Google's menus. The page then grew by 8.4 MB and the browser made 10 requests to Google per view.

- Setup: 2 steps, no plugin and no Google account for a shared sheet.
- Freshness: live, served by Google on every view. Google's help says a published sheet can take a few minutes to republish after changes.
- Weight: adds 8.4 MB.
Pros: nothing to install. Cons: heavy, unstyled, and the data sits in a frame. See Google's help on publishing a file for the embed code.
How to create WordPress pages from Google Sheets rows
When every row should become its own page, such as one page per location, service or team member, you need a plugin that fills a template page with each row. You can do it for free with a CSV export of the sheet, or connect the sheet itself on a paid plan so new and changed rows update the pages on a schedule. If your rows describe pages for SEO, our guide to creating pages from a spreadsheet covers how to lay out the columns, and programmatic SEO in WordPress covers what makes such pages worth indexing.
We rank this job by what each plugin can do across its plans to build and keep many pages from one sheet: read a shared sheet without a Google sign-in, fill every column, and keep the pages in step when rows are added, changed or removed. LPagery is #1 on that basis, from the LPagery Pro run (30 pages, all six columns, 9 seconds from the sheet link; the sync settings need the Extended plan). Its free version reads only 3 columns, and we did not see a scheduled sync pick up a change. WP All Import Pro and Spreadsheet Integration were not tested in our lab: WP All Import's free version stopped at the URL step, and Spreadsheet Integration needs a Google service account.
Free version | Read the sheet link | Columns used | Pages made in our test | Follows sheet changes |
|---|---|---|---|---|
LPagery free | No, CSV or Excel upload | Up to 3 | 30 from 30 rows | No (sync is Extended) |
WP All Import free | No, file upload only (URL import is Pro) | All | Not run (stopped at the URL step) | No (scheduling is Pro) |
Best free for pages from rows: LPagery free, the only free version we ran to finished pages, as long as your template needs three columns or fewer. WP All Import's free version maps every column but was not run past the URL step in our test.
6. LPagery
LPagery is our #1 pick when each row of the sheet should become a WordPress page and the pages should follow the sheet, based on LPagery Pro (30 pages, all six columns, 9 seconds from a shared sheet link, no Google sign-in); the free version reads 3 columns from an uploaded CSV, and we did not see the Extended plan's sync pick up a change.
LPagery is our bulk page generator, so we tested it the same way as the others, starting with the free version from WordPress.org. We made a template page titled {student name}, {major} student, downloaded the sheet as CSV (File > Download > Comma-separated values) and uploaded it under Create. The review screen listed all 30 rows with the note The free version uses up to 3 placeholder columns and ignores the rest. The first three columns of the sheet (student name, gender, class level) were usable, and the major column was marked Pro, so the title would have come out without the major.

The fix on the free version is to keep only the columns the template uses, at most three, in the file you upload. We saved a CSV with student name, major and home state, used a template text of {student name} studies {major} and comes from {home state}., and created the pages: 30 published pages in 8 steps from installing the plugin. The page titled "Lisa, Art student" reads "Lisa studies Art and comes from SC." The pages are normal WordPress pages, and LPagery loaded no files of its own on them.
On the paid plans you skip the download. In the plugin's code, Google Sheet as the input is unlocked on every paid plan (Standard and up), and the Enable Google Sheet Sync switch needs Extended. LPagery reads the sheet through its own API server with your license key, so the sheet only has to be shared as anyone with the link; there is no Google sign-in. The sync checks the sheet hourly by default, and you can switch to twice daily, daily or weekly in Settings, or start a run with Sync Now. You choose per page set whether new rows create pages, changed rows update them and deleted rows remove them. Pages you edited by hand keep their changes unless you switch on Overwrite manual changes, per the feature page.
We ran the paid version from the plugin's source code with a test license, picked Google Sheet as the input, pasted the sample sheet's link and switched on Enable Google Sheet Sync: 8 steps. All 30 pages existed 9 seconds after we confirmed, with all six columns filled. Our request log showed WordPress fetching the rows from LPagery's API server, and no request to Google from the generated pages, which are normal WordPress pages. The panel then read Next Sync: 59 minutes from now. After that: hourly. We could not edit Google's sample sheet, so we did not watch a sync pick up a change.
All three sync boxes were ticked when we switched the sync on, Sync Page Deletions included. If a row removed from the sheet should keep its page, untick that box before you create the pages.

- Free version: CSV or Excel upload, up to 3 placeholder columns, 30 pages created from 30 rows in 8 steps.
- Paid version from the sheet link: 30 pages in 9 seconds, 8 steps, all six columns.
- Paid plans: the Google Sheet link as the source (Standard), scheduled sync with create, update and delete (Extended).
- Google account: none; the sheet must be shared as anyone with the link.
- Weight on a generated page: 0 KB from the plugin; the pages are normal WordPress pages.
Pros
- One page per row from any template page, built with any editor.
- Sync creates, updates and removes pages from the sheet on a schedule.
- No Google sign-in or Cloud project.
Cons
- Free version reads only 3 columns and has no sheet link or sync.
- Sync is on the Extended plan.
- Not a table plugin: it makes pages, it does not show the sheet as a table.
LPagery Standard costs $19 a month, Extended (with Google Sheet Sync) $27 a month and Ultimate $77 a month, less with yearly billing, read on lpagery.io/pricing on 14 October 2026. The Google Sheet Sync feature page shows the sync settings, and the guide to bulk creating pages in WordPress covers the template side. LPagery on WordPress.org (3,000+ active installs).
7. WP All Import
WP All Import is the plugin to pick when your rows are records such as products, listings or posts with custom fields, and you will pay for the Pro edition.
The free version takes uploaded files only. When we chose Download a file > From URL and pasted the sheet link, the screen showed Upgrade to the Pro edition of WP All Import to Download from URL. So in the free version you download the sheet as CSV and upload it, and the import does not follow later changes. Our comparison of ways to bulk create posts in WordPress shows that upload route step by step. Its documentation describes the Pro route: share the sheet as anyone with the link, paste it under From URL, map the columns and turn on scheduling.

- Free version: file upload only; URL import and scheduling need Pro.
- Google account: none for a link-shared sheet, per its docs.
WP All Import's Import Pro package costs $199 a year for unlimited sites, and URL import is in every paid package, read on its pricing page on 14 October 2026. WP All Import on WordPress.org (100,000+ active installs) and its Google Sheets guide.
8. Spreadsheet Integration (WPGSI)
Spreadsheet Integration is the free plugin to pick when you are comfortable creating a Google Cloud service account and want sheet rows to create or update posts.
Not tested hands-on. WPGSI connects through a Google service account: you create a project in Google Cloud, create the service account credentials, paste them into the plugin and share the sheet with the service account's email address. That needs a Google account, so the lab stopped at the plugin's settings screen. Its WordPress.org page lists post and page updates from a sheet and sheet-to-table display in the free version. The plugin was last updated on 2026-02-14 and is tested up to an older WordPress version than the lab runs. Its settings screen, Google service account Settings, asks you to paste the downloaded credentials file and says the sheet must be shared with the service account's email.

Spreadsheet Integration on WordPress.org (2,000+ active installs).
How to send WordPress form entries to Google Sheets (not tested hands-on)
Sending data from WordPress to Google Sheets always needs write access to your Google account, so every plugin for this job asks you to sign in with Google or create Google Cloud credentials. We took Forminator and GSheetConnector to that screen; WPForms and Bit Integrations come from their documentation. The difference between them is how much Google setup you do yourself:
- GSheetConnector for Contact Form 7: sign in with Google through the vendor's app, no Cloud project.
- WPForms: a Continue with Google button, but only on the Pro license.
- Forminator: your own Google Cloud OAuth client with a Client ID and Client Secret.
- Bit Integrations: your own Google Cloud project with the Sheets and Drive APIs turned on, per its docs.
If you already use Contact Form 7, the steps from GSheetConnector's documentation are: install the connector, open Contact > Google Sheets, sign in with Google, then enter the sheet name, sheet ID, tab name and tab ID in the form's settings. The sheet's first row needs column headers that match your form's field names.
9. GSheetConnector for Contact Form 7
GSheetConnector is the plugin to pick when your forms are Contact Form 7 and you want entries in a sheet without setting up anything in Google Cloud.
Not tested hands-on, because it needs a Google sign-in. Activating Contact Form 7 and the connector and opening its settings took 4 steps; the first open showed an opt-in screen with Skip, then Authenticate with Your Google Account with an Authenticate Now button, and the Integration tab marked Auth Required. Per its WordPress.org page, the free version sends each form to one sheet and tab that you enter by ID, and field names must match the column headers. Pro lets you pick sheets from a list and map fields.

Pro costs $39 a year for one site, read on the vendor's page on 14 October 2026. GSheetConnector on WordPress.org (40,000+ active installs).
10. Forminator
Forminator is the free form plugin to pick when you can create a Google Cloud OAuth client, because its Google Sheets integration is free.
Not tested hands-on. Under Forminator > Integrations, the + next to Google Sheets opened Set Up Google Sheets Client, which asks for a Client ID and Client Secret from the Google API console and shows the redirect URI to register there, 3 steps from activation. Creating those credentials needs a Google account and a Cloud project.

Forminator on WordPress.org (600,000+ active installs).
11. WPForms
WPForms is the pick when you already pay for WPForms Pro and want the simplest Google connection: a Continue with Google button.
Not tested hands-on. The Google Sheets addon needs the Pro license or higher, per WPForms' documentation, so WPForms Lite cannot send entries to a sheet. WPForms Pro costs $199.50 for the first year, read on its pricing page on 14 October 2026. WPForms Lite on WordPress.org (5 million+ active installs) and the Google Sheets addon docs.
Google Sheets WordPress integration test results side by side
Method | Steps | Rows shown | Sort / search | Phone 390 px | Sheet changes reach the page | Adds to page |
|---|---|---|---|---|---|---|
FlexTable | 8 | 30, 10 per page | No / Yes | Cut off after 3 columns | Every view (live fetch) | 688 KB |
TablePress | 7 | 30, 10 per page | Yes / Yes | Page scrolls sideways | After a re-import | 198 KB |
wpDataTables Lite | 9 | 30, 10 per page | Yes / Yes | Page scrolls sideways | On render, cache off (from its code) | 1.2 MB |
EmbedPress | 2 | Google's view | Google's view | Fits | Every view (Google) | 32.2 MB |
Google iframe | 2 | Google's view | Google's view | Fits | Every view (Google) | 8.4 MB |

Plugin | Job | Google account needed | Free version blocks |
|---|---|---|---|
LPagery | Pages from rows | No | Sheet link and sync (paid), more than 3 columns |
WP All Import | Posts and pages from rows | No | Download from URL, scheduling |
Spreadsheet Integration | Rows to posts, both ways | Yes, service account | Third-party plugin integrations |
GSheetConnector for CF7 | Form entries to a sheet | Yes, Google sign-in | Sheet picker, field mapping, more feeds |
Forminator | Form entries to a sheet | Yes, own Cloud OAuth client | Nothing for Sheets |
WPForms | Form entries to a sheet | Yes, Google sign-in | The whole addon (Pro) |
Ninja Tables | Sheet as a table | No | Google Sheets and external CSV (Pro) |
Which Google Sheets plugin should you choose?
- Choose FlexTable if the table must show what is in the sheet right now and you want it free.
- Choose TablePress if the data changes a few times a year and you want sorting and search on a light page.
- Choose wpDataTables if visitors need print and export buttons on the table.
- Choose Google's iframe or EmbedPress only for a quick read-only view, and not on pages where speed matters.
- Choose LPagery, our #1 for pages from rows, if each row should become its own page, such as location or service pages, and the pages should follow the sheet. Pro built all 30 pages from the sheet link; the free version uses 3 columns, and we did not watch the sync pick up a sheet change.
- Choose WP All Import if your rows are posts, products or listings with custom fields and you will buy Pro for URL imports.
- Choose GSheetConnector, Forminator or WPForms to send form entries to a sheet, by the form plugin you already use.
If you are weighing bigger page generators against each other, our test of mass page generators and the list of programmatic SEO tools compare them on the same task.
Plugins we left out, and why
- Visualizer (not installed): its WordPress.org page puts importing from Google Sheets in the Pro version, and it is a chart plugin first.
- Data Tables Generator by Supsystic (not installed in this round): its WordPress.org page lists Google Sheets import but does not say whether the free version includes it.
- WP Ultimate CSV Importer (not installed in this round): its WordPress.org page says it imports from a published Google Sheets CSV URL, so it is the next candidate for pages and posts from rows.
- WP Sheet Editor (not installed): it edits WordPress posts in a spreadsheet inside WordPress, and its WordPress.org page describes export and import for Excel or Google Sheets, with no connection to a live sheet.
- Advanced Form Integration (not installed): sends form entries to Google Sheets and many other apps, and like the other form connectors it needs a Google account connection.
- Uncanny Automator (not installed): pushes form entries and site events to Google Sheets through its own app credits (250 free, per its WordPress.org page) and a Google account connection.
- Ninja Tables: its free version marks both Connect Google Sheets and Connect External CSV as Premium features.
- Bit Integrations: Google Sheets needs your own Google Cloud project with the Sheets and Drive APIs, per its docs, so it could not be tested; Forminator shows the same kind of setup.
- Zapier: works without a plugin (a Google Sheets trigger and a WordPress action), but needs Zapier and Google accounts. Its free plan has 100 tasks a month and checks for new rows every 15 minutes, per its pricing page.

FAQ
Can you connect Google Sheets to WordPress without a plugin?
Yes, for display only. Publish the sheet with File > Share > Publish to web, copy the embed code and paste it into a Custom HTML block. In our test that added 8.4 MB to the page, and visitors see the data in a frame. Creating pages or posts from rows needs a plugin or a service like Zapier.
Does the Google Sheet have to be public?
For reading, it has to be shared as anyone with the link or published to the web. FlexTable, TablePress, wpDataTables, EmbedPress and LPagery all worked with a link-shared sheet in our test or in their code. Keep private data out of that sheet. Plugins that read private sheets do it through a Google service account or a Google sign-in.
How often does WordPress update when the sheet changes?
It depends on the method. FlexTable and Google's embed show changes on the next page view, TablePress only after a re-import, and LPagery's sync runs hourly by default with Sync Now for an immediate run. Google's help notes that a sheet published to the web can take a few minutes to republish after edits. A page cache plugin can also keep serving the old page until its cache expires; see how to clear the cache in WordPress.
How do I send WordPress form entries to Google Sheets for free?
Use GSheetConnector with Contact Form 7, which signs in through the vendor's Google app, or Forminator with your own Google Cloud OAuth client. Both are free. WPForms needs its Pro license for the Google Sheets addon.
Can I create WordPress pages from Google Sheets rows?
Yes. Download the sheet as CSV and upload it to a page generator such as LPagery, or connect the sheet's link on a paid plan so new and changed rows update the pages on a schedule. The plumber location pages tutorial walks through a full run with a template page and one row per town.
I've worked in SEO for more than ten years and helped over 100 businesses rank higher, mostly local businesses, e-commerce stores and SaaS companies. As co-founder of LPagery I work on local SEO, programmatic SEO and AI search visibility, and I test the strategies in these articles on our own sites and with our customers.
I've worked in SEO for more than ten years and helped over 100 businesses rank higher, mostly local businesses, e-commerce stores and SaaS companies. As co-founder of LPagery I work on local SEO, programmatic SEO and AI search visibility, and I test the strategies in these articles on our own sites and with our customers.