XenForo already has ranks. They are just named like an admin: trophies, a user title ladder, user banners on a group, and user group promotions that add or remove that group. A “gamification suite” is what you buy when those four disagree with each other — a ladder that says Veteran, a banner that says Newbie, a trophy that never awards because cron is dead, and a fifth group that rebuilds permissions every time someone hits 100 posts.
This is not the engagement article. That one already told you to ship five trophies and a New member banner, then stop until people come back without them. This one is the design: which of the four tools owns the word under the name, which owns the coloured chip, which owns a permission, and how you keep a rank from becoming a points shop. The shop is a later topic. Do not start it here.
Official sources for this article are the XenForo 2 manual (docs.xenforo.com: trophies, user title ladder, groups & permissions, promotions, reactions, criteria) plus the 2.3 notebook. Community threads fill ACP paths and rebuild behaviour the short trophy page leaves out.
Four tools, four jobs
Pick the owner before you name a rank.
| Job | Stock tool | Reversible? | Grants permissions? |
|---|---|---|---|
| “You hit a milestone” (30 posts, first reaction, a year) | Trophy + points | No. Official: once awarded, not revoked. Delete the trophy to pull points from everyone | No |
| The small text under the name | User title ladder | Yes, as the counter moves | No |
| The coloured chip under the name | User banner on a group | Yes, when they leave the group | Only if you also put Yes/Never on that group — usually a mistake |
| A state that comes and goes (new, birthday, helpful, subscriber) | User group promotion (or a paid user upgrade) | Yes. Official: fail the criteria → demote, unless they were added by hand | Yes, if you put permissions on the group. Prefer styling only |
If two rows in that table try to say the same sentence, you will lose. A trophy named “Regular” and a promotion named Regular and a ladder row “Regular” is three Regulars. Pick one owner.
Trophies: milestones, not ranks
Official manual (Users → trophies, in the Users / gamification area): you define thresholds and criteria, a point value, and the trophy is awarded when the user matches. Top trophy-point earners appear in notable members. You may disable trophies with the option at the bottom of the list if you do not want the system at all.
Three official rules that most rank designs violate:
- Trophies are not revoked when the user later fails the criteria. Do not trophy “has an avatar” or “birthday today.” Those are promotions.
- Deleting a trophy removes its points from everyone who had it. That will reshuffle any title ladder based on trophy points. Do it on purpose.
- Awards are not instant. Official notebook + community: Tools → Cron entries → Update user trophies (the arrows-circle control). Community also uses Tools → Rebuild caches → Rebuild trophies after you add a trophy you want applied retroactively. Test with both before you tell members the system is broken.
Community ACP path, confirmed across 2.x threads: Users → Trophies → Add trophy. Title, description members will read, points, criteria. Zero points is valid: you get the badge without moving a points-based ladder. That is how people hang a “Founder” or event trophy without promoting the whole board one rung.
Documented criteria labels (notebook + official criteria chapter): User has / has no avatar; User has posted at least X messages / message-count between; User has received at least X likes; registered-over-a-year style longevity; reaction-score thresholds. The same criteria engine feeds notices and promotions. Page criteria (“user is creating a thread,” “Members tab”) belong on notices, not on trophies.
Profile Counters (official user-profile chapter) show messages, trophy points, and reaction score. Admins can edit those numbers. Editing a counter does not invent a trophy row; run Update user trophies after you change a message count you expect a trophy to notice.
A trophy set that is a rank system, not a toy box
Five to nine trophies. Points that add up to a ladder you can explain on a staff page.
| Trophy | Criteria | Points | Why it exists |
|---|---|---|---|
| First post | Messages ≥ 1 | 1 | Proves cron works |
| Settling in | Messages ≥ 30 | 5 | Past the lurk |
| Known voice | Messages ≥ 100 | 10 | Volume, not quality |
| Helpful | Reaction score ≥ 25 | 15 | Quality signal |
| Established | Registered ≥ 1 year | 10 | Time, independent of spam |
| Avatar on | Has avatar | 1 | Optional; or use a promotion instead |
| First featured | Staff-only / 0 points | 0 | Manual flavour — see below |
That last row is community practice, not official: a 0-point trophy plus a custom user field (or a staff-only criterion) so you can hang a badge without the ladder moving. Official docs do not document a “give this user this trophy” button. Community workaround: custom field + trophy criteria on that field, then Rebuild trophies. If that is too cute, skip it. A promotion with a banner is the official reversible badge.
Do not trophy every prefix, every node, every reaction type. Notable members becomes a scoreboard of people who farmed checkboxes.
The title ladder: one counter, one sentence
Official user-title-ladder page: the text under the name on posts, profile, and elsewhere. You choose the field the ladder reads. Official wording: messages, likes, or trophy points. Community 2.1+ threads describe the ACP as messages, trophy points, or reaction score. Treat “likes” in the manual as the old name for the score you now see next to reactions. Pick one field. Do not keep a messages ladder in your head and a trophy-points ladder in the ACP.
Official resolution rule: the title is the highest ladder row whose minimum is still below the user’s value. Rows at 0, 50, 100 and an 80-message user get the 50 title. Official recommendation: a row at 0 so nobody is blank.
Official override order, from the same page plus the groups chapter:
- A custom title on the profile (official: when the box has text, it wins over group titles and the ladder). Regular members are “usually unable to edit this field themselves” — the notebook does not name the permission label. If you grant it widely, the ladder is decoration.
- A group with User title override on, winner chosen by Display styling priority if they are in several such groups.
- The ladder.
So a Subscriber group with title override “Patron” will hide “Veteran” from the ladder. That is either the point (you sold a title) or a bug (you wanted both). Setup → Options → User options → User banners has the control community threads cite for whether banners replace the title or sit next to it. Set that before you design art. A board that shows both can keep the ladder as seniority and the banner as role. A board that lets banners replace titles should keep rank in the banner and leave the ladder boring or off.
Keep ladder copy boring: Member / Regular / Veteran / Elder. Military and RPG names belong on a game section’s roleplay identity, not on the global postbit, unless the whole site is that game. Global “Archmage” next to a billing dispute is how staff lose arguments.
Banners and username CSS: the chip, not the rank
Official groups chapter: besides permissions, a group can change how the user looks. If they are in several groups, Display styling priority picks the winner for most of these:
- User title override — see above
- User name CSS — colour or flourish on the name. Official note: not used in all scenarios
- User banners — a banner below the name on posts. More options at Setup → Options → User options → User banners
A rank chip is a banner on a secondary group with no extra permissions. Priority 10, 20, 30 — write the numbers on the staff page. Staff banners sit above member ranks so a moderator is never “Newbie” in the chip. Do not steal Administrative’s styling for Regular. The permissions article already told you Registered stays primary. A rank group is another secondary, like Moderating.
If the banner group also has Yes on an extra forum or Never on an attach limit, you have coupled a cosmetic rank to a permission rebuild. Community performance math still applies: groups × nodes. Cosmetic ranks should be display only. If Veteran may start threads in a veterans’ lounge, that is one extra View on one node, documented, and you accept the rebuild when you add the 200th veteran via promotion — off-peak.
Promotions: the reversible rank
Official promotions manual: Groups & Permissions → User group promotions. Official purpose: automatically add members to groups to alter user title, username styling, or permissions. Official examples: A/B segments, birthday identification, badges for people who contributed a lot, username styling for new users.
How it actually runs (official, this is the part rank designs miss):
- Cron: Tools → Cron entries → User group promotions, every hour. Manual run is the arrows-circle.
- Only recently active users are processed. Lurkers keep yesterday’s banner until they log in.
- Match all selected criteria, or the promotion never awards. Empty criteria → never awards automatically.
- Fail the criteria later → demoted, unless an admin added the group by hand on the profile, or another still-matching promotion also grants it.
- Disable a promotion: no new awards. It does not demote people already in. Official undo is: delete the group if it existed only for this; batch-update everyone out of the group; or change criteria to something nobody matches (registered before 1990) and wait for them to become active.
- Manage promoted users: history, Manually applied, Promotion disabled. Manual promote ignores criteria forever. Manual demote makes them ineligible even if they match. That last sentence is how you handle a rank you took as a punishment — and why punishment should not be a cosmetic rank.
Batch update (official alternative): if you want a group on the entire register, including people who have not logged in, do not use promotions. Use Users → Batch update. Promotions are for the living.
Promotion vs trophy, one more time: a year-old member trophy is a medal they keep if they vanish. A Veteran banner via promotion is a state. If they should lose the chip when they stop qualifying, it is a promotion. If they should keep a line on the profile forever, it is a trophy.
Reactions are not ranks
Official reactions chapter: Content → Reactions. Each reaction has a score: Like is +1; sad and angry default to neutral (0) because an angry react on a sad story is not a downvote. You may define negative scores. Official warning: people pile on. For a rank system, reaction score is a promotion criterion (official example: Helpful members at score > 100) or a title-ladder field. It is not a third currency. Do not also invent “karma” in an add-on.
Three rank architectures that stay stock
A. Classic forum (most boards). Title ladder on messages. Four rows (0 / 25 / 100 / 500). Five trophies from the table above. One New member promotion (banner, drops after 10 messages or 14 days). Staff banners via Moderating / Administrative only. No rank group has permissions.
B. Quality-weighted. Title ladder on trophy points. Trophies mix volume and reaction score so a 500-post drive-by does not outrank a 40-post expert. Promotions still handle New / Subscriber. Ladder copy stays boring.
C. Role chips, no ladder. Turn the ladder off (or a single 0-row “Member”). Ranks are banners on promotion groups: New, Regular, Patron (from a user upgrade, official paid path), Staff. Display styling priority is the spec. This is what gaming boards actually want when they say “ranks,” and it is the only architecture that will survive a later credits/shop without fighting a message ladder.
Do not build D: a group per rung that also changes attach limits and a private lounge and a username colour. That is how you get 60 groups and a four-minute permission rebuild.
What not to install yet
A progress bar, a points shop, an achievement tree with 80 icons, a Discord-synced role named after your ladder — later articles. Official stock already covers recognition. If the five trophies are not awarding, the problem is cron or criteria, not the absence of a suite.
Community manual-assign tricks (custom field + 0-point trophy) are fine for a founder badge. They are not a reason to skip promotions.
Checklist
- Written spec: which tool owns the text, which owns the chip, which (if any) owns a permission
- Users → Trophies: 5–9 milestones; no reversible states; 0-row points planned against the ladder field
- Tools → Cron entries → Update user trophies runs; one manual pass after you add trophies
- Users → User title ladder: one field; a 0-row; boring copy — or off, if architecture C
- Custom titles not handed to everyone
- Rank groups are secondary, Registered stays primary, styling priority written down
- Setup → Options → User options → User banners: replace title vs sit beside it, decided
- Groups & Permissions → User group promotions: hourly cron on; empty criteria nowhere; lurker behaviour accepted
- No cosmetic rank group with a pile of Yes/Never
- Dummy guest / new / veteran / staff accounts checked on a post
- Analyze permissions after any rank group that is not display-only
- Notable members still looks like people you would introduce to a guest
A rank system is a sentence under a name. Trophies remember a day. Promotions remember a state. The ladder counts. Banners decorate. If those four tell four stories, you do not need an add-on. You need to delete three of the stories.
If a lurker writes in that they “never got Veteran,” official promotions explain it: they have not been recently active, so the hourly job has not seen them. Tell them to log in. Then run User group promotions once if you are testing. Do not rebuild permissions to fix a banner.
The same lurker will also miss a new trophy until Update user trophies sees them. That is not a bug. It is why you test with an account you actually click around on, not with a dummy you created and abandoned.

