Permanent CSV URLs for Airtable → Google Sheets
Stream unlimited Airtable rows into Google Sheets through one permanent URL — no 2,000-row cap, linked and lookup fields resolved automatically. The same export also gives you JSON and XML URLs for scripts, apps, and feeds.
Built where other Airtable exporters stop
Most CSV-export tools for Airtable cap each file at 2,000 records — past that you filter, chunk, and stitch files back together in Sheets. ExportAirtable has no such cap: one permanent URL streams the whole table.
How ExportAirtable compares
Most alternatives are either a generic multi-source exporter or a giant Airtable-automation bundle. We do one thing — turn any Airtable table into a permanent, always-fresh CSV URL — and we do it without the quiet row caps that break large views.
IMPORTDATAFeature comparisons are based on the public pricing pages and docs of the respective services at the time of writing.
Everything you need to ship data to Sheets
Built specifically for Airtable + Google Sheets workflows — no generic integration middleware.
Unlimited rows
Paginated streaming export — no 2 000-row cap. Works with the biggest Airtable tables.
Linked & lookup fields
Recursive resolution turns record IDs into human-readable primary values, no matter how deep the chain.
CSV, JSON & XML exports
One export, three formats: CSV for Google Sheets
IMPORTDATA, JSON for APIs and automations, XML for
feeds and integrations.
Auto refresh & cache
Configurable refresh intervals and built-in caching keep your Airtable API quota under control.
From Airtable token to Google Sheet in 3 steps
Connect Airtable
Paste a Personal Access Token with read-only access to the bases you care about. Tokens are encrypted at rest.
Configure the export
Pick base, table, view, and columns. Linked records and lookups are auto-resolved to the primary field.
Paste into Sheets
Paste the IMPORTDATA formula for CSV. Use the JSON and
XML URLs from the same export elsewhere; Sheets refreshes when Google
refetches the CSV.
Your Airtable data, handled like it matters
A small, focused team — with boring, well-known primitives underneath. Everything below is how ExportAirtable actually ships today.
HTTPS everywhere
TLS terminates at Caddy with auto-renewed Let's Encrypt certs. Every request — admin, billing, and every CSV fetch — travels over encrypted HTTP/2.
Payments by Stripe
Card details never touch our servers. Stripe Checkout is PCI DSS Level 1 — we only receive a customer token and webhook events to keep your plan in sync.
Tokens encrypted at rest
Your Airtable personal access token is sealed with
AES-256-GCM before it hits disk. A compromised
backup file is unreadable without the server's secret key.
Strong password hashing
Passwords are stretched with scrypt
(N=16384, r=8, p=1) and a per-account random salt. No plaintext,
no reversible hashes, no shared pepper.
Bot & abuse protection
Per-IP rate limits on /e/*.csv, auth, and
admin endpoints, with an elevated allowance for verified
Google IP ranges so Sheets imports stay fast. SSH itself
is behind fail2ban.
Unguessable CSV URLs
Every export link carries a 48-hex token from a CSPRNG (2192 combinations). Unknown, disabled, or deleted exports all return an identical 404 — no oracle for brute force.
Least-privilege scopes
We ask Airtable only for what the product needs:
schema.bases:read and
data.records:read. No write access, no
webhook scopes, no workspace admin.
Daily encrypted backups
The SQLite database is snapshotted every night, gzipped, and kept for 30 days on disks that never leave the server. Sensitive fields stay encrypted inside the dump.
Share links, not credentials
Export URLs use only an opaque id and random token. Your Airtable personal access token stays encrypted on the server — it is never appended to CSV, JSON, or XML links you share.
Found something that doesn't look right? Email security@exportairtable.com and we'll respond within one business day.
Simple, predictable pricing
Start free. Upgrade when you outgrow it — credits are prorated day-by-day.
Free
Solo / trial.
Forever free, no card required.
- 1 export
- CSV, JSON & XML per export
- Up to 200 API calls / month
- Auto refresh: 6 h or daily
- 30-day usage log retention
Plus
Teams on Airtable Team.
Launch offer
Billed monthly. Cancel anytime.
- Up to 10 exports
- CSV, JSON & XML per export
- Up to 10,000 API calls / month
- Auto refresh: 1 h / 6 h / daily
- 30-day usage log retention
- Prorated upgrades & downgrades
Business
Agencies, Airtable Business/Enterprise.
Launch offer
Billed monthly. Cancel anytime.
- Up to 100 exports
- CSV, JSON & XML per export
- Unlimited API calls (fair use)
- Auto refresh from 5 min
- 90-day usage log retention
- Prorated upgrades & downgrades
- Templates: Google, RSS, Atom, Sitemap
Prices in USD. Payments will be processed securely by Stripe — we're finalising checkout right now and payment is simulated in your dashboard until it's live.
| Feature | Free$0 | Plus$30/mo | Business$70/mo |
|---|---|---|---|
| Permanent export URLs | 1 | 10 | 100 |
| Monthly API calls to Airtable | 200 | 10,000 | Unlimited* |
| Auto refresh intervals | 6 h / 1 d | 1 h / 6 h / 1 d | 5 min / 15 min / 1 h / 6 h / 1 d |
| Usage log retention | 30 days | 30 days | 90 days |
| Prorated plan changes | ✓ | ✓ | ✓ |
| Google Sheets IMPORTDATA helper | ✓ | ✓ | ✓ |
| CSV, JSON & XML exports | ✓ | ✓ | ✓ |
| Curated XML templates | — | — | ✓ |
| Priority support | — | — | ✓ |
* Business "Unlimited" is governed by a fair-use threshold to protect Airtable's own quotas — we'll reach out before any enforcement.
Frequently asked
Does it hit the 2,000-row limit I see in other tools?
No. Popular Airtable exporters cap each file at 2,000 records; ExportAirtable streams paginated API requests, so one permanent URL returns 50,000+ rows with the same setup.
How does upgrading mid-cycle work?
Unused days on your current plan are converted to credit at your current daily rate. That credit is applied toward the new plan — you only pay the difference.
What about downgrading?
Your remaining credit is re-priced at the cheaper plan's daily rate, which extends your end date automatically. You keep every dollar you've paid.
How do I pay?
Cards are processed by Stripe Checkout over TLS — your card number never touches our servers. Upgrades, downgrades, and cancel-at-period-end are handled inline from your billing page with full proration.
Can I use it with my Airtable plan?
Yes. ExportAirtable's limits are independent of Airtable's API quota. We recommend Plus for Airtable Team workspaces and Business for Airtable Business/Enterprise.
Are my Airtable tokens safe?
Tokens are encrypted at rest with a secret only the application server holds. We only request read-only scopes needed to list bases and fetch records.
Can I share the CSV URL with tools other than Sheets?
Absolutely. The CSV is plain HTTP — it works with Excel, Power BI, Looker Studio, cron jobs, n8n, Zapier, or almost any other script.
Do you support JSON or XML exports?
Yes. Every export includes stable .json and
.xml URLs alongside CSV, with the same resolved
fields. Generic XML is on all plans; Business can attach curated
XML layouts (for example ?google for a Merchant-style
product feed).
Does every IMPORTDATA refresh hit my Airtable base?
No. Google Sheets and other tools only fetch your ExportAirtable URL. We read Airtable on your behalf according to your export settings (including optional caching), so those clients never talk to Airtable’s API directly.
Ready to ship Airtable data into Sheets?
Start on Free, upgrade when you need it. No lock-in.