The boring parts of a launch — help dialogs, waitlists, terms, blog, users, metrics — handled in a single <script> tag. Configure once. Ship the rest of your app.
4.2kb gzip
zero deps
34 languages
self-host or cloud
live preview
help · waitlist · metrics
live
hey 👋 I'm the help widget. Ask me anything about adminfa.st — lazy-loaded, speaks 34+ locales.
embedded on
linear
cursorlabs
raycast
railway
vercel·studio
resend·dev
plain·ops
liveblocks
arcjet
linear
cursorlabs
raycast
railway
vercel·studio
resend·dev
plain·ops
liveblocks
arcjet
Drop the script tag on any page — Next.js, Astro, plain HTML, a Webflow embed block. The widgets you toggle in your dashboard show up. The ones you don't, don't ship.
01
Paste the snippet
One async script tag scoped by your project key. Loads after paint.
02
Toggle widgets in the dashboard
Help, waitlist, terms, blog, users, metrics — each is a switch. No redeploy required.
03
Theme it once
One CSS theme file inherits your tokens, or pass data-theme and move on.
04
Watch the metrics roll in
Every interaction streams to your dashboard. Export, webhook, or pipe to analytics.
// drop this anywhere before </body> <script src="https://adminfa.st/embed.js" data-key="af_pk_live_x1y2z3" data-widgets="help,waitlist,blog" async ></script> // configure the rest in this dashboard.
Every widget is a self-contained piece of admin you'd otherwise hand-roll. Turn them on individually. The script ships only what you use.
01 · help dialog
Threaded help with replies, attachments, and quick suggestions. Routes to email, Slack, Discord, or webhook.
02 · waitlist
Email capture with positions, referrals, and CSV export. Confirmation emails included.
03 · terms generator
Answer 8 questions. Get ToS, Privacy, Cookies, DPA — versioned from your domain.
04 · multi-language blog
Markdown in, SEO out. Auto-translates posts, RSS, sitemaps, hreflang — handled.
05 · users
Roles, invites, suspensions, audit log.
06 · metrics
Help threads, signups, blog reads, terms acceptance — graphed by default.
+ i18n built in
Every widget, every email, every legal page. Detect locale or set explicitly.
Drop markdown into the dashboard. Publish to the locales you care about — routing, sitemaps, and hreflang follow.
en · /blog/ship-fast
Why <script> tags are still the fastest API.
Three reasons embeddable beats SDK for the boring parts of your product.
may 12 · 6 min · 2.4k reads
es · /blog/shippeando-rapido
Por qué las etiquetas <script> siguen siendo la API más rápida.
Tres razones por las que lo embebible le gana al SDK.
may 12 · 6 min · 812 reads
ja · /blog/hayaku-deliver
なぜ <script> タグは今でも最速の API なのか。
退屈な部分について埋め込み型が優れる理由。
may 12 · 6 min · 601 reads
hobby
$
0
For weekend projects. Forever free.
most picked
pro
$
19
/mo
For solo founders shipping to real users.
team
$
79
+
For teams whose admin is infra.
Manage apps, FAQs, blogs, widgets, and more from one dashboard once you're in.
Yes, on the Team plan. We ship Docker images for the dashboard, the embed CDN, and the Next.js blog renderer. Postgres + S3-compatible storage and you're set.
Cloud: AWS eu-central-1 by default, us-east-1 on request. Data is encrypted at rest, scoped per project key. Self-host: wherever you put it.
4.2kb gzipped for the loader. Each widget is code-split and lazy-loaded only when invoked. The help widget pulls another ~11kb on first open, cached forever after.
The blog and terms pages render server-side from your Next.js app — perfectly indexed. The interactive widgets (help, waitlist) are JS-only by nature, but degrade to a plain mailto: / form-post fallback.
From the Pro plan up. Remove the "powered by" mark, theme everything, serve from your own subdomain. The Team plan removes our headers from outbound emails too.
Templates are reviewed by counsel for US, EU (GDPR), UK, Canada, Brazil (LGPD) and Australia. You answer 8 questions and we assemble a versioned document. We're not your lawyer, but the output passes most due-diligence checks.
Stop building admin.
Ship the rest.
Create an account. Configure once. Embed the script.