Skip to content
For developers

Ship the side project. Skip building sign-in.

Hosted login with social logins, email codes and passwords, one SDK for your browser app, API and CLI, and a real test environment. Free while your project finds its users.

The problem

Sign-in is the part nobody wants to build twice

Rolling your own means password resets, email verification, rate limits and token refresh before your app does anything at all.

The big providers are built for enterprises: a sprawling console, and a bill that jumps the moment you grow.

Test users end up in production, because there was only ever one environment.

How Anchr.ing helps

Everything sign-in needs, in an afternoon

Every way to sign in

Passwords, email codes and magic links, Google, GitHub, Apple and more. Passkeys and two-step verification come with Startup, and work in test on every plan.

A real test environment

Its own users, keys and apps, with mail kept in a log instead of sent. Promote to production in one step.

One SDK everywhere

Sign in from browsers and CLIs, verify tokens offline in your API. No call per request.

Set up by your coding agent

The MCP server, llms.txt and rule files for Claude Code, Cursor and Copilot get the integration right the first time.

One token

Every check reads the same token

When a user signs in, their token carries who they are, their organisation and role, their plan and payment status, and what your flags target. Your API checks it in one guard, offline, and your UI reads the same answers.

Identitywho signed in, and howsub · amr
Rolesthe organisation and what it allowsorg.role
Billingthe plan and its payment statusbilling.plan
Flagswhat is switched on for this userflag()
In your code

A signed-in user in a few lines

React, Vue, Angular or no framework at all. Your API verifies the same token offline.

web/auth.ts
import { createAuth } from '@anchring/auth/browser';

export const auth = createAuth({ project: 'acme', env: 'test', clientId: 'test_…' });

await auth.ready();                    // finishes the callback, restores the session
if (!auth.user()) await auth.signIn(); // hosted login: passkey, password or email code

const res = await auth.fetch('/api/notes'); // adds the token, refreshes it first
The plan

Free in numbers

Prices in euros, excluding VAT. Test environments include every feature on every plan.

€0

a month, free for good, no card

5,000

monthly active users

2

sign-in apps; APIs and backend services are free

Questions

Before you start

Is the free plan really free?

Yes: no card, no time limit. You pay when you need more users or apps than it includes, or a paid feature in production.

What counts as an app?

Only the apps your users sign in to: web, single-page, mobile, desktop and command-line apps. APIs and backend services are free.

Do I have to use your SDK?

No. Your sign-in is a standard OpenID Connect provider, so any OIDC library works. The SDK just makes it shorter.

Build it all in test, for free

Every feature works in your test environment on the free plan. No card needed.

Who it's for

For startups

The Startup plan

For B2B SaaS

The Team plan

For agencies

The Team plan

For scale-ups

The Scale plan

For enterprise

The Enterprise plan

Sovereign and public sector

The Sovereign plan

Compare all plans

Every plan side by side, and the questions people ask before paying.