Documentation
Docs
A complete manual for your page: setup, links, appearance, media, templates, analytics, and every limit the server enforces.
On this page
A puff.bio page takes about two minutes to set up. You need an email address you can check right away.
Create an account. Enter your email and we send you a 6-digit code. The code expires after 10 minutes, and you get 5 tries before you have to request a new one.
Choose a username and a password (8 to 72 characters), tick that you accept the Terms and Privacy Policy, and submit. Your page is live at puff.bio/yourname immediately.
Log in and open the dashboard. Add your first link under Links.
Pick a look under Appearance. Every theme is free, so nothing is locked behind Premium here.
Share puff.bio/yourname anywhere. Changes appear on your page as soon as you save them.
The Profile group holds the Overview editor and Analytics. Overview is where you set the basics:
- Display name (up to 50 characters) — shown above your @username. It does not have to match the username.
- Bio (up to 200 characters). Short reads better; two lines is usually plenty.
- Avatar and background — see Appearance and Limits and formats for accepted files.
- Information card — an optional small card showing your member ID, join date, view count, and how many badges and links you have. It never shows your email.
- Leaderboard visibility — on by default. Turn it off if you do not want your page ranked publicly.
Links are the buttons on your page, in the order you set. There is no cap on how many you add.
In Links, add a title (up to 50 characters) and a URL. The URL must start with
http://orhttps://and be 500 characters or fewer.Pick an icon from the built-in set, or upload your own image as a custom icon.
Use the up and down arrows on each row to reorder. There is no drag and drop — the arrows are the reorder control.
Turn a link off to hide it without deleting it. Its title and URL are kept, so you can switch it back on later.
Links open in a new tab. If a visitor says your link does nothing, the usual cause is a URL that is missing https:// or that points at a page which no longer exists.
A dock is a separate row of small icon-only buttons, typically used for social accounts. It sits apart from your main links so a long list of icons does not turn into a wall of buttons.
The dock editor lives in the Premium group, alongside the dock's own colour, transparency, and glow settings. Docks are a Premium feature; the rest of your page works without them.
Appearance controls how your page looks. Themes, colours, fonts, and cursors are free; the few Premium-only effects are marked below.
- Themes — fourteen presets: midnight, sunset, ocean, forest, candy, paper, ink, lavender, ember, mint, violet, sand, noir, and neon. None of them are locked.
- Colours — override the accent, text, background, and button colours individually (as
#rrggbbvalues). Anything you leave alone follows the theme. - Fonts — a separate font for your name and for your bio, plus optional colours for each.
- Badge and link styling — background transparency for the badge row, plus border colour and opacity for both the badge row and the link buttons. (Link button background transparency and the glow effect are Premium.)
- Cursor — a custom pointer from the preset list, or your own uploaded image.
- Name effects — none, glow, and soft are free; gradient, shimmer, neon, rainbow, outline, pulse, and glitch need Premium.
- Background effects — none, snow, and stars are free; rain, particles, aurora, matrix, beams, and bubbles need Premium. Every effect is CSS, and all of them hold still if your visitor has reduced motion turned on.
The Premium group contains Layout, General, and Metadata. Layout is the arrangement of your page.
- Layout preset — default, modern, simplistic, sleek, or portfolio. Each one is a genuinely different arrangement, not just a resize: some use a single centred card, some split into a hero card plus a details card, some put the avatar beside the name.
- Width, avatar size, and spacing — optional overrides for the preset. Leaving them unset keeps the preset's own values.
- Card and page surfaces — background transparency, border colour, and border opacity for the card and for the page.
- Border treatment — static, dashed, shimmer, or pulse. The two animated ones hold still under reduced motion.
- Entry animation and parallax — how the profile card arrives, and a pointer-tilt effect. Both are visual only.
An optional gate before your profile loads, in one of four styles: Classic, Frosted, Spotlight, or Full screen. You can add copy, choose a font, and attach a click sound. It can also run without a button, where any click enters.
A template is a saved copy of your look: your styling, your equipped badges, and your audio. It never copies your links.
- Mine — templates you have saved. You can keep them private or publish them. You can save up to 20.
- Browse — public templates from other people. You can sort by newest, oldest, most used, or trending (most used in the last 7 days), and filter to only ones you are able to apply.
- Last — the templates you recently applied, so you can get back to a look you tried.
- Favorites — templates you starred.
Applying a template replaces your current styling with the template's. Your links, username, and account stay untouched.
Creators can restrict who may apply a template: everyone, free accounts only, or Premium accounts only. If a template is locked, the apply button tells you why instead of failing silently.
When a public template shows who recently used it, that list is other people's avatars — publishing a template also means your username appears as its creator.
You can add music that plays on your page. Upload up to 20 tracks, 10 MB each.
In Audio, upload a file. The title comes from the filename, and you can rename it afterwards.
Reorder tracks the same way as links, with the arrows on each row. The order here is the play order on your page.
On your public page, visitors get a click-to-enter screen that starts the music. This is deliberate: browsers block audio that starts on its own, so without a click most visitors would hear nothing at all.
Badges sit next to your name. Some are earned automatically and some are granted by staff.
- Automatic — early member, OG (one of the first accounts), verified (email confirmed), Premium, staff, tester, gifter, and 100 views. These appear on their own unless you hide them.
- Granted by staff — founder, supporter, and quest. These only appear once you equip them.
A custom badge is an icon you upload plus a name of up to 20 characters. These are requested, not instantly created: filing a request costs 1 credit, staff review it, and if it is declined the credit comes back. You can have 5 requests pending at once and hold up to 20 custom badges.
Equip or hide any badge, and set the order they appear in. Hiding one badge never hides the others.
Analytics shows your view count and your link clicks over the last 30 days, broken down per link and by day.
- A view is counted once per visitor per profile within roughly a 6-hour window. It is a best-effort signal, not an audited number.
- Views are counted for every account, because they feed the leaderboard. Showing the counter on your page is a Premium setting, but the count runs either way.
- Clicks are counted per link, without identifying the visitor. Records older than about six months are deleted.
When someone pastes puff.bio/yourname into Discord, X, or another app that shows preview cards, that app reads the metadata you set in the Metadata tab.
- Search title (60 characters) and search description (160) — used by search engines.
- Social title (100) and social description (200) — used by the preview card.
- Custom preview image — Premium. Without one, the card is generated from your display name, bio, and avatar.
- Favicon — the icon in the browser tab. Free, and separate from the preview image.
The leaderboard ranks profiles by view count and shows the top 50. Your page appears there automatically once it has views, unless you turn off Show me on the leaderboard in Profile.
Banned accounts are never listed, and neither are profiles with no views or one that opted out. Because the ranking is by views, gaming the counter also games the leaderboard — which is why artificially inflating it is not allowed.
The numbers below are what the server enforces. If something is rejected, check here first.
| Item | Limit |
|---|---|
| Username | 1–30 characters: letters and numbers plus _ . - ! $ & ' ( ) * + , : ; = @ ~ — these symbols can appear anywhere, but not as the first or last character if they are a dot or a hyphen. Stored in lowercase. |
| Password | 8–72 characters. |
| Display name | 50 characters. |
| Bio | 200 characters. |
| Link title | 50 characters. |
| Link URL | 500 characters, and must start with http:// or https:// |
| Search title / description | 60 and 160 characters. |
| Social title / description | 100 and 200 characters. |
| Custom badge name | 20 characters. |
| Item | Limit |
|---|---|
| Upload size | 10 MB per file, for every upload slot. |
| Avatar and images | PNG, JPEG, WebP, GIF, or AVIF. SVG is not accepted. |
| Background | Any image format above, plus MP4 or WebM video. |
| Audio | 20 tracks, 10 MB each. |
| Templates | 20 saved templates, holding up to 10 tracks of audio each. |
| Custom badges | 20 held, 5 requests pending at once, 1 credit per request. |
The problems below come up most often. Each one has a known cause.
I never got my verification code.
Check the spam folder first. Codes expire after 10 minutes, and you can request a new one after 60 seconds. If it still does not arrive, add our sending domain to your allowed senders and try again.
My code is rejected.
Each code is single-use and expires in 10 minutes. After 5 wrong attempts it stops working and you need a fresh one.
I forgot my password.
Use the reset form. If you no longer have access to the email address, the recovery page explains what we need.
My link does not open.
The URL is probably missing its https:// prefix, or the page you point at is gone. Edit the link and check it in a private window.
My changes are not showing.
Do not just edit — save the section. If it still looks stale, hard-refresh your page, and remember that your browser and Discord may be showing a cached copy.
A theme or effect will not stick.
That is a Premium-only option. On a free account the server discards it rather than saving it, so nothing appears to change.
My page shows a suspended notice.
That means the account is banned. The reason is shown when you try to log in.
My music does not play.
Browsers block audio that starts by itself, so your page uses a click-to-enter screen. If a track still does not play, check it is a browser-playable format and under 10 MB.
My background video is not playing.
Background videos play muted and looped. Very large files may not load on a slow connection; try a shorter clip.
My upload was rejected.
Either the file is over 10 MB, or the format is not on the list. A screenshot in PNG or JPEG almost always works.
Premium is an upgrade flag on your account. It is not currently purchasable — there is no checkout yet — so accounts receive it from us directly.
Free for everyone
- All fourteen themes, fonts, colours, and cursors
- Links, audio, badges, templates, and metadata
- Analytics, and the browser-tab favicon
With Premium
- The profile view counter, shown on your page
- Layout presets, plus width, avatar size, and spacing overrides
- Card and page surfaces, border treatments, entry animation, parallax
- The profile entry screen
- Docks, and the dock styling
- Link button transparency and glow
- The custom preview image for link cards
- Advanced name and background effects
Everything not listed under Premium — all fourteen themes, fonts, colours, cursors, links, audio, badges, templates, metadata, and analytics — works on a free account. See the pricing section on the home page for the current state of paid plans.
The Account tab holds your login settings.
- Password — change it with your current password. Changing it does not sign out your other devices, so sign out manually on a device you no longer trust.
- Username — you can rename, but the old URL stops working immediately and there is no redirect.
- Email — changes are confirmed with a code sent to the new address, never the old one.
- Sign-in code — optional. When on, logging in with your password also needs a 6-digit code sent to your email.
- Product emails — off unless you turn them on. Account and security mail is separate and still sent.
- Discord — link your account. We ask Discord only to identify you, never for your email. You can also turn on live presence, which shows your Discord handle and current status on your page.
If several accounts share one email address, you will be asked to pick the one you want to keep. The others are deleted as part of that choice, so read the confirmation before you continue.
Deletion is permanent. It removes your page, your content, and your uploaded files, and frees your username for someone else.
A few terms mean something specific here, so they are worth pinning down.
- Page
- Your public profile at puff.bio/yourname.
- Dashboard
- The private place where you edit your page.
- Link
- A full-width button on your page.
- Dock
- The separate row of small icon-only buttons.
- Slot
- One individual colour you can override, such as the accent or the button colour. Anything you do not override follows the theme.
- Preset
- A ready-made arrangement. Themes, layout presets, and cursor presets are all lists of these.
- Gate
- The click-to-enter screen that starts music and background video. Also called the entry screen.
- View
- One visit to your page, counted at most once per visitor every ~6 hours.
- Click
- One press on one of your links.
- Credit
- The unit that pays for a custom-badge request. Credits are granted by us and are not sold.
The fastest route is the puff.bio Discord, where you can ask questions and see what other people have run into.
For anything private — a locked account, a report, a privacy request, or a copyright issue — email [email protected]. Always include your username and the email on the account, because that is what lets us find you quickly.
Also see our Terms of Service and Privacy Policy.