Loops vs PlanetScale
Email marketing for SaaS — loops, transactional, campaigns in one
vs. Serverless MySQL (Vitess) and Postgres at scale
Pricing tiers
Loops
Free
1,000 subscribed contacts. 4,000 sends/month. All features. Loops footer on emails.
Free
Paid — 1.5k
1,500 contacts. Unlimited sends. No footer.
$15/mo
Paid — 5k
5,000 contacts. Unlimited sends.
$49/mo
Paid — 10k
10,000 contacts.
$99/mo
Paid — 25k
25,000 contacts.
$199/mo
Paid — 50k
50,000 contacts.
$349/mo
Custom
>100k contacts — contact sales.
Custom
PlanetScale
Postgres EBS single-node — PS-5
Single-node EBS, 512 MiB RAM, arm64. Entry point for Postgres.
$5/mo
Postgres EBS HA — PS-5
3-node (primary + 2 replicas), 512 MiB, arm64.
$15/mo
Vitess (non-Metal) — PS-10
Vitess MySQL sharded cluster, 1 GiB RAM.
$39/mo
Postgres Metal — M-10
3-node Metal, 1 GiB RAM + 10 GiB local storage. Much higher IOPS.
$50/mo
Vitess Metal — M-160
Vitess Metal, 16 GiB RAM + 110 GiB storage.
$609/mo
Enterprise
Custom agreements, dedicated regions, 99.99% SLA.
Custom
Free-tier quotas head-to-head
Comparing free on Loops vs pg-ebs-nonha-starter on PlanetScale.
| Metric | Loops | PlanetScale |
|---|---|---|
| ha | — | 0 nodes |
| ram mib | — | 512 MiB |
Features
Loops · 12 features
- API Keys — Scoped keys for testing vs production.
- Audiences (Segments) — Filter contacts by properties + event behavior.
- Campaign Analytics — Open/click/unsubscribe rates, heatmaps, A/B significance.
- Campaigns — One-off broadcasts to audience segments. Schedule + A/B test subject.
- Contacts — Contact records with custom properties (strings, numbers, booleans, dates).
- Email Editor — Visual block-based + Markdown + HTML modes.
- Events — Send events to trigger loops/journeys or filter audiences.
- Loops (Automations) — Event-triggered automation flows with delays + conditions.
- Mailing Lists — Opt-in lists with subscribe/unsubscribe preferences per list.
- Template Library — Pre-built templates for SaaS use cases (onboarding, digest, launch).
- Transactional API — Send transactional emails (receipts, password resets) via /transactional endpoin…
- Webhooks — Subscribe to contact/event changes.
PlanetScale · 12 features
- Backups — Automated daily backups with retention.
- Database Branching — Git-like branches of your DB schema (not data). Create, diff, merge via deploy r…
- Deploy Requests — Schema changes in a feature branch get reviewed + auto-applied to main with zero…
- HIPAA — HIPAA-compliant deployments (Enterprise).
- Metal (NVMe) — Dedicated NVMe local storage. 10x IOPS vs EBS, latency-critical workloads.
- PgBouncer Pooler — Managed PgBouncer for Postgres clusters. Optional dedicated pooler.
- PlanetScale Boost — Query result cache with sub-ms reads.
- Point-in-Time Recovery — Restore cluster to any point within retention window.
- Postgres on PlanetScale — PostgreSQL 15+ with the same branching + deploy-request flow. Launched 2024.
- Query Insights — Per-query performance analytics, slow query tracking, explain plans.
- Read-only Regions — Route reads to the nearest region for lower latency.
- Vitess (MySQL at scale) — Horizontally-sharded MySQL (YouTube-scale) — original PlanetScale offering.
Developer interfaces
| Kind | Loops | PlanetScale |
|---|---|---|
| CLI | — | PlanetScale CLI (pscale) |
| SDK | @loops/loops, loops-py | @planetscale/database |
| REST | Loops REST API | Management API |
| MCP | — | PlanetScale MCP |
| OTHER | Webhooks | MySQL Wire Protocol, Postgres Wire Protocol |
Staxly is an independent catalog of developer platforms. Outbound links to Loops and PlanetScale are plain references to their official websites. Pricing is verified against vendor pages at publication time — reconfirm before buying.
Want this comparison in your AI agent's context? Install the free Staxly MCP server.