Troubleshooting
Solutions to common SheetLinkWP issues, error messages, Google quota limits, retry queue, license problems, and how to get help.
No Data in Sheet
This is the most common issue. Below are the typical causes and how to resolve them.
I submitted a form but nothing appeared in my Google Sheet.
- Check the Delivery Log (SheetLink > Log) - if the entry shows "Success", the data was sent. Make sure you're looking at the right sheet and tab.
- If it shows "Failed", check the error message. See the Failed Deliveries section below for common errors and fixes.
- If there is no log entry at all, the form plugin hook may not be firing. Verify:
- The correct form plugin is selected in your sync rule
- The form is actually submitting (check the form plugin's own logs/entries)
- The SheetLinkWP plugin is activated
The test button works but real form submissions don't appear.
- Make sure the correct form plugin is selected in the sync rule.
- Check that the form ID matches - some plugins require selecting a specific form.
- Verify the form is actually submitting successfully (check the form plugin's own submissions/entries page).
Data appears but columns are wrong or missing.
- Check your field mapping in the sync rule - each form field should be mapped to the correct column.
- If you added new fields after the initial setup, the Apps Script auto-adds columns for new field names.
- Column headers are created from field names/IDs, so changing field names may create new columns instead of updating existing ones.
Failed Deliveries
When a delivery fails, the error message in the Delivery Log tells you what went wrong. Here are the most common errors and how to fix them.
| Error Message | Cause | Fix |
|---|---|---|
| cURL error 28: Connection timed out | Google's servers didn't respond in time | Automatic retry will handle this. Check your server's outbound HTTPS connectivity. |
| HTTP 403 | Apps Script not deployed as web app, or "Who has access" not set to "Anyone" | Re-deploy the script: Deploy > Manage deployments > Edit > set access to "Anyone" > Deploy |
| HTTP 401 | Script authorization expired or was revoked | Open the Apps Script editor, run the doPost function manually to re-authorize |
| HTTP 500 | Error in the Apps Script code | Open the Apps Script editor, check the Executions log for error details |
| Script function not found | The script doesn't have a doPost function |
Verify the script code - the function must be named exactly doPost (case-sensitive) |
| Invalid URL | The Receiver URL is not a valid Google Apps Script URL | The URL must start with https://script.google.com/macros/s/ and end with /exec |
Google Apps Script Errors
These errors appear in the Google Apps Script editor's Executions log, not in SheetLinkWP.
Google Quotas & Limits
Google Apps Script has account-level quotas that SheetLinkWP cannot control. If you hit a quota, deliveries will fail until the quota resets (typically daily at midnight Pacific Time).
Key limits by account type:
| Resource | Consumer (Free) | Google Workspace |
|---|---|---|
| Script executions | 5,000/day | 20,000/day |
| Script runtime | 6 min/execution | 6 min/execution |
| Spreadsheet cells | 10 million | 10 million |
| API calls | 20,000/day | 100,000/day |
For the full and up-to-date list, see the official Google Apps Script quotas documentation.
Shared Quota
These limits are per Google account, not per sheet. If you have multiple sheets using Apps Script, they share the same quota.
Tip
For high-volume sites (1,000+ submissions/day), consider using a Google Workspace account which has significantly higher quotas.
Retry Queue
When a delivery fails, SheetLinkWP automatically queues it for retry. No data is lost.
- Retries happen every 15 minutes, up to 3 attempts
- After 3 failed attempts, the entry is marked as permanently failed
- View the retry queue at SheetLink > Retry Queue
- You can manually retry any failed entry from the Retry Queue page
- You can also manually retry individual entries from the Delivery Log
WP-Cron Note
The retry queue uses a WordPress cron job. If your site has low traffic, WP-Cron may not fire frequently enough. Consider setting up a real server cron job:
*/5 * * * * curl -s https://yoursite.com/wp-cron.php > /dev/null 2>&1
License Issues
These apply to the Agency Edition only. The Free Edition does not require license activation.
Free Edition
Free Edition works on any single WordPress site without registration or license activation. If you're using the Free Edition, you can ignore license-related errors entirely.
Getting Help
If the solutions above don't resolve your issue, we're happy to help.
Contact Support
support@sheetlinkwp.comWhen contacting support, please include:
- WordPress version and PHP version
- SheetLinkWP version (shown on the Dashboard page)
- The form plugin you're using (and its version)
- The error message from the Delivery Log (if applicable)
- Whether the Test button works
We typically respond within a few hours during business days.
Related Guides
Ready to Get Started?
Install SheetLink Forms and connect your first form in under 10 minutes.