{
  "updated": "2026-10-28",
  "report_url": "https://freetier.tech/api/v1/reports",
  "category": {
    "id": "database",
    "name": "Databases",
    "description": "Managed SQL databases with a free allowance, reachable from serverless functions.",
    "keywords": [
      "database",
      "postgres",
      "postgresql",
      "mysql",
      "sql",
      "db",
      "storage"
    ],
    "count": 3,
    "url": "https://freetier.tech/api/v1/categories/database.json",
    "markdown": "https://freetier.tech/c/database.md",
    "page": "https://freetier.tech/c/database/"
  },
  "services": [
    {
      "id": "neon",
      "name": "Neon",
      "category": "database",
      "tagline": "Serverless Postgres with autoscaling, branching and scale-to-zero.",
      "website": "https://neon.com",
      "pricing_url": "https://neon.com/pricing",
      "free_tier": {
        "kind": "always-free",
        "summary": "100 projects, each with 100 CU-hours/month, 1 GB storage (20 GB total) and 5 GB egress/month.",
        "limits": [
          "100 projects",
          "100 CU-hours per project per month",
          "1 GB Postgres storage per project, 20 GB total across all projects",
          "5 GB public network transfer (egress) per project per month",
          "Autoscaling up to 2 CU (8 GB RAM)",
          "10 branches per project",
          "6-hour restore window (1 GB limit)",
          "1 manual snapshot",
          "1 day monitoring retention"
        ],
        "credit_usd": null,
        "commercial_use": null,
        "card_required": false
      },
      "gotchas": [
        "Compute scales to zero after 5 minutes idle and this can't be disabled on Free; the next query wakes it within a few hundred milliseconds.",
        "Using up a project's 100 CU-hours or 5 GB egress suspends its compute until the next billing period or an upgrade.",
        "Exceeding 1 GB in a project (or 20 GB in total) makes inserts, updates and deletes fail until space is freed; data is not deleted.",
        "Neon says Free should be avoided for production workloads where uninterrupted availability matters.",
        "The CLI's npm package is now `neon` (Homebrew formula is still `neonctl`); `neon auth` is a legacy alias for `neon login`."
      ],
      "setup": {
        "signup_url": "https://neon.com/signup",
        "signup_methods": [
          "github",
          "google",
          "email"
        ],
        "human_steps": [
          "Sign up at https://neon.com/signup (GitHub or Google sign-in is fastest).",
          "Approve the browser prompt from `neon login`, or create an API key in the Console under Account settings > API keys."
        ],
        "agent_access": [
          {
            "method": "cli-login",
            "install": "npm i -g neon@latest",
            "command": "neon login",
            "token_url": null,
            "env_var": null,
            "notes": "Opens a browser for the human to approve; credentials are saved to ~/.config/neon/credentials.json."
          },
          {
            "method": "api-key",
            "install": null,
            "command": null,
            "token_url": "https://console.neon.tech",
            "env_var": "NEON_API_KEY",
            "notes": "Create under Account settings > API keys; the key is shown only once. The CLI uses it instead of `neon login`."
          },
          {
            "method": "connection-string",
            "install": null,
            "command": "neon connection-string --pooled",
            "token_url": "https://console.neon.tech",
            "env_var": "DATABASE_URL",
            "notes": "Or copy it from the Connect button in the Console; the -pooler host enables connection pooling."
          }
        ],
        "verify": "neon me",
        "try_without_account": {
          "command": "neon claim create --env-pull",
          "expires": "Unclaimed projects expire after 72 hours and are capped at 100 MB storage and 1 GB transfer until claimed.",
          "claim": "The human runs `neon claim accept`, which opens the claim page (`--no-open` prints the URL instead); each claim code lasts 15 minutes.",
          "notes": "Writes the connection details to `.env`. Functions, Object Storage and AI Gateway stay unavailable until the project is claimed."
        }
      },
      "docs": {
        "quickstart": "https://neon.com/docs/get-started/with-an-agent",
        "llms_txt": "https://neon.com/llms.txt"
      },
      "sources": [
        "https://neon.com/pricing",
        "https://neon.com/docs/introduction/plans",
        "https://neon.com/faqs/free-plan-limits-and-quotas",
        "https://neon.com/docs/changelog/2026-10-02",
        "https://neon.com/blog/neon-free-plan-1-gb-per-project",
        "https://neon.com/docs/introduction/scale-to-zero",
        "https://neon.com/docs/get-started/production-checklist",
        "https://neon.com/docs/reference/cli-install",
        "https://neon.com/docs/cli/install.md",
        "https://neon.com/docs/cli/login.md",
        "https://neon.com/docs/cli/connection-string.md",
        "https://neon.com/docs/reference/neon-cli",
        "https://neon.com/docs/manage/api-keys",
        "https://neon.com/faqs/find-or-generate-neon-api-keys",
        "https://neon.com/docs/manage/accounts",
        "https://neon.com/docs/connect/connect-from-any-app",
        "https://neon.com/docs/get-started/with-an-agent",
        "https://neon.com/auth.md",
        "https://neon.com/terms-of-service",
        "https://neon.com/llms.txt",
        "https://neon.com/docs/reference/claimable-neon"
      ],
      "last_verified": "2026-10-28",
      "sponsored": false,
      "links": {
        "page": "https://freetier.tech/s/neon/",
        "markdown": "https://freetier.tech/s/neon.md",
        "json": "https://freetier.tech/api/v1/services/neon.json"
      }
    },
    {
      "id": "supabase",
      "name": "Supabase",
      "category": "database",
      "tagline": "Managed Postgres platform with auth, file storage, edge functions and realtime APIs.",
      "website": "https://supabase.com",
      "pricing_url": "https://supabase.com/pricing",
      "free_tier": {
        "kind": "always-free",
        "summary": "Two active projects, each with a 500 MB Postgres database; 5 GB egress and 1 GB file storage.",
        "limits": [
          "2 active free projects across orgs you own or administer (paused projects don't count)",
          "500 MB database size per project",
          "Shared CPU, 500 MB RAM",
          "5 GB egress",
          "5 GB cached egress",
          "1 GB file storage, 50 MB max file upload",
          "50,000 monthly active users",
          "500,000 Edge Function invocations",
          "2 million Realtime messages per month, 200 concurrent peak connections",
          "1-day API and database log retention",
          "1 GB log ingestion and 100 GB log query included"
        ],
        "credit_usd": null,
        "commercial_use": null,
        "card_required": null
      },
      "gotchas": [
        "Projects are paused after 1 week of low database activity; a paused project can be restored from the dashboard for up to 1 year.",
        "Direct connections use IPv6 unless the project has the IPv4 add-on; on IPv4-only networks use the Session pooler connection string.",
        "No automatic backups or point-in-time recovery on Free.",
        "Exceeding Free quotas triggers a notification and a grace period; continued overuse leads to service restrictions."
      ],
      "setup": {
        "signup_url": "https://supabase.com/dashboard/sign-up",
        "signup_methods": [
          "github",
          "email"
        ],
        "human_steps": [
          "Sign up at https://supabase.com/dashboard/sign-up (GitHub sign-in is fastest).",
          "Approve the browser prompt from `npx supabase login`, or create an access token at https://supabase.com/dashboard/account/tokens.",
          "For a direct database connection, copy the connection string from the project's Connect dialog."
        ],
        "agent_access": [
          {
            "method": "connection-string",
            "install": null,
            "command": null,
            "token_url": "https://supabase.com/dashboard/project/_?showConnect=true",
            "env_var": "DATABASE_URL",
            "notes": "Replace [YOUR-PASSWORD] with the project's database password. Use the Session pooler string on IPv4-only networks."
          },
          {
            "method": "cli-login",
            "install": "npm install supabase --save-dev",
            "command": "npx supabase login",
            "token_url": null,
            "env_var": null,
            "notes": "Opens a browser by default; pass --token or set SUPABASE_ACCESS_TOKEN when headless."
          },
          {
            "method": "api-key",
            "install": null,
            "command": null,
            "token_url": "https://supabase.com/dashboard/account/tokens",
            "env_var": "SUPABASE_ACCESS_TOKEN",
            "notes": "Personal access token; lets CLI commands skip `supabase login`."
          }
        ],
        "verify": "npx supabase projects list",
        "try_without_account": null
      },
      "docs": {
        "quickstart": "https://supabase.com/docs/guides/getting-started",
        "llms_txt": "https://supabase.com/llms.txt"
      },
      "sources": [
        "https://supabase.com/pricing",
        "https://supabase.com/pricing.md",
        "https://supabase.com/docs/guides/platform/billing-on-supabase",
        "https://supabase.com/docs/guides/platform/billing-faq",
        "https://supabase.com/docs/guides/platform/get-set-up-for-billing",
        "https://supabase.com/docs/guides/platform/free-project-pausing",
        "https://supabase.com/docs/guides/platform/manage-your-usage/logs-ingest",
        "https://supabase.com/docs/guides/platform/manage-your-usage/logs-query",
        "https://supabase.com/docs/guides/database/connecting-to-postgres",
        "https://supabase.com/docs/guides/local-development/cli/getting-started",
        "https://supabase.com/docs/reference/cli/supabase-login",
        "https://supabase.com/docs/guides/troubleshooting/email-password-login-disabled-supabase-vercel-marketplace-a7dd36",
        "https://supabase.com/terms",
        "https://supabase.com/llms.txt"
      ],
      "last_verified": "2026-10-28",
      "sponsored": false,
      "links": {
        "page": "https://freetier.tech/s/supabase/",
        "markdown": "https://freetier.tech/s/supabase.md",
        "json": "https://freetier.tech/api/v1/services/supabase.json"
      }
    },
    {
      "id": "tidb-cloud",
      "name": "TiDB Cloud",
      "category": "database",
      "tagline": "MySQL-compatible distributed SQL database; Starter is its autoscaling serverless tier (formerly Serverless).",
      "website": "https://www.pingcap.com/tidb-cloud-starter/",
      "pricing_url": "https://www.pingcap.com/tidb-cloud-starter-pricing-details/",
      "free_tier": {
        "kind": "always-free",
        "summary": "Five free MySQL-compatible Starter instances per org, each with 5 GiB row + 5 GiB columnar storage and 50M RUs/month.",
        "limits": [
          "Free quota applies to the first 5 MySQL-compatible Starter instances in each organization",
          "5 GiB row-based storage per instance",
          "5 GiB columnar storage per instance",
          "50 million Request Units (RUs) per instance per month",
          "PostgreSQL-compatible Starter (public preview): first 10 instances free, each with 50 GiB row-based storage and 500 million RUs per month"
        ],
        "credit_usd": null,
        "commercial_use": null,
        "card_required": false
      },
      "gotchas": [
        "Starter on Alibaba Cloud (Singapore) is in public preview; Starter on AWS is generally available.",
        "When an instance uses up its free quota, new connections are refused and existing ones are throttled until the month resets or the spending limit is raised.",
        "A credit card and spending limit are required for a sixth instance or any spending limit above $0.",
        "Starter requires TLS connections.",
        "PostgreSQL-compatible Starter is a public preview intended for development and evaluation, not production.",
        "Serverless was renamed Starter (Aug 2025) and clusters became instances (Apr 2026); CLI commands still say `serverless`.",
        "Both CLIs (`ticloud` and the newer `ti`) are in public preview."
      ],
      "setup": {
        "signup_url": "https://tidbcloud.com/free-trial",
        "signup_methods": [
          "google",
          "github",
          "microsoft",
          "email"
        ],
        "human_steps": [
          "Sign up at https://tidbcloud.com/free-trial (Google, GitHub or Microsoft sign-in is fastest).",
          "On My TiDB, click Create Resource and select Starter, then choose Alibaba Cloud as the cloud provider and Singapore as the region. Keep the spending limit at $0 so it stays free.",
          "Open that instance, click Connect, click Generate Password, and copy the connection string.",
          "For CLI access, approve the browser prompt from `ticloud auth login`, or create an API key under Organization Settings > API Keys."
        ],
        "agent_access": [
          {
            "method": "connection-string",
            "install": null,
            "command": null,
            "token_url": "https://tidbcloud.com",
            "env_var": "DATABASE_URL",
            "notes": "From the instance's Connect dialog (Generate Password first); TLS is required on the public endpoint."
          },
          {
            "method": "cli-login",
            "install": "curl https://raw.githubusercontent.com/tidbcloud/tidbcloud-cli/main/install.sh | sh",
            "command": "ticloud auth login",
            "token_url": null,
            "env_var": null,
            "notes": "OAuth device flow that opens a browser for the human to approve. To create the Alibaba Cloud Singapore instance from the CLI, find its region name with `ticloud serverless region`, then run `ticloud serverless create --display-name <name> --region <region>`."
          },
          {
            "method": "api-key",
            "install": null,
            "command": "ticloud config create --profile-name <name> --public-key <public-key> --private-key <private-key>",
            "token_url": "https://tidbcloud.com",
            "env_var": null,
            "notes": "Create under Organization Settings > API Keys; this command saves the public/private key pair to a CLI profile."
          }
        ],
        "verify": "ticloud project list",
        "try_without_account": null
      },
      "docs": {
        "quickstart": "https://docs.pingcap.com/tidbcloud/tidb-cloud-quickstart/",
        "llms_txt": "https://docs.pingcap.com/llms.txt"
      },
      "sources": [
        "https://www.pingcap.com/tidb-cloud-starter/",
        "https://www.pingcap.com/pricing/",
        "https://www.pingcap.com/tidb-cloud-starter-pricing-details/",
        "https://docs.pingcap.com/tidbcloud/select-cluster-tier/",
        "https://docs.pingcap.com/tidbcloud/create-tidb-cluster-serverless/",
        "https://docs.pingcap.com/tidbcloud/manage-serverless-spend-limit/",
        "https://docs.pingcap.com/tidbcloud/tidb-cloud-quickstart/",
        "https://docs.pingcap.com/tidbcloud/connect-to-tidb-cluster-serverless/",
        "https://docs.pingcap.com/developer/dev-guide-sample-application-nodejs-prisma/",
        "https://docs.pingcap.com/tidbcloud/get-started-with-cli/",
        "https://docs.pingcap.com/tidbcloud/cli-reference/",
        "https://docs.pingcap.com/tidbcloud/ticloud-auth-login/",
        "https://docs.pingcap.com/tidbcloud/ticloud-config-create/",
        "https://docs.pingcap.com/tidbcloud/ticloud-project-list/",
        "https://docs.pingcap.com/tidbcloud/integrate-tidbcloud-with-n8n/",
        "https://docs.pingcap.com/ai/ti-overview/",
        "https://docs.pingcap.com/tidbcloud/tidb-cloud-release-notes/",
        "https://docs.pingcap.com/tidbcloud/release-notes-2025/",
        "https://www.pingcap.com/blog/tidb-cloud-supports-oauth-2-0-for-a-more-secure-login-experience/",
        "https://docs.pingcap.com/llms.txt",
        "https://docs.pingcap.com/tidbcloud/tidb-cloud-intro/",
        "https://www.pingcap.com/blog/introducing-tidb-cloud-starter-auto-scaling-plan-renamed/",
        "https://docs.pingcap.com/tidbcloud/ticloud-serverless-region",
        "https://docs.pingcap.com/tidbcloud/ticloud-cluster-create/"
      ],
      "last_verified": "2026-10-28",
      "sponsored": false,
      "links": {
        "page": "https://freetier.tech/s/tidb-cloud/",
        "markdown": "https://freetier.tech/s/tidb-cloud.md",
        "json": "https://freetier.tech/api/v1/services/tidb-cloud.json"
      }
    }
  ]
}
