Use case 20 of 21 · By Nicolas Dao

Sign-in and identity

How users sign in, reset passwords and use Google, Microsoft or their company login.

My stack for this

  1. 01
    Better Auth

    First pick for a serious app on Postgres: users in your own database, one store, more features than Cognito, no per-user fee. You build the screens and wire the emails.

  2. 02
    Amazon Cognito

    The easy pick for small internal apps and admin panels: hosted login, reset emails and social sign-in out of the box, free under 10,000 users.

  3. 03
    Resend

    Sends Better Auth's reset, verification and magic-link emails.

  4. 04
    Cloudflare Workers

    Verifies the tokens at the edge, from either one.

Worked example: Better Auth or Cognito? →

The picks, in brief

What each one is, my verdict, and what it costs. Every name opens the full entry: when to use it and when not, the gotchas with their fixes, provisioning and alternatives.

  • My default Better Auth

    My first pick for serious apps on Postgres. Your users live in your own database, it does more than Cognito, and it costs nothing per user.

    Pricing: Free (MIT), with no per-user fee. You pay only for the Lambda and the Postgres you already run. Optional hosted extras (Better Auth Infrastructure): Pro $20 a month with one self-serve SSO connection, then $50 a month per extra connection.

  • My default Amazon Cognito

    The easiest pick for small apps, internal tools and admin panels. Everything works out of the box and it's free below 10,000 monthly users. For serious apps on Postgres, Better Auth comes first.

    Pricing: Lite and Essentials: 10,000 monthly active users free per account, then $0.015 per user on Essentials (Lite from $0.0055, without passkeys or email codes). Enterprise SSO users: 50 free, then $0.015 each.

  • My default Resend

    My email service. Transactional and marketing on one platform, built for developers and agents.

    Pricing: Transactional: $20 a month for 10k emails, $35 for 100k, $650 for 1M. Marketing: $40 a month for 5k contacts, $180 for 25k, $450 for 100k.

  • The edge primitive. It sits between your users and your real backend, and it's very, very good at that.

    Pricing: $5 a month per account, including 10M requests and 30M CPU-ms. Then $0.30 per million requests and $0.02 per million CPU-ms. Billed on CPU time only: waiting is free. No egress charges.

Where they sit

The layers of the stack this job touches, with every tool named on this page.

Want this stack in your AWS account?

Cloudless Labs is a Sydney consultancy. We migrate on-premises systems to AWS, build serverless apps on this stack, and coach teams to ship with Claude Code and Codex.

Contact Us

For general inquiries, please contact us at:

For e-learning capabilities, please contact: