Arguably the most important part of a forum is its user base. XenForo contains a wide range of user management tools in the Users section of the admin control panel.

This section covers the more complex features that relate to users in XenForo.

User customization

Custom user fields

Custom user fields let you define additional information or preferences that you want to collect from users. These values can be displayed with messages or in profiles, used for internal data, or even to change behaviors in XenForo through template changes.

When creating a field, there are a number of options you can control. First, you must pick an ID for the field. This is how the field will be referred to internally and can only contain alphanumeric characters. Once set, it cannot be changed. For some of the more advanced custom field functionality, you will need to know this ID.

Each field will roughly fall into one of two categories:

  • Text fields - these fields are free form and users can enter whatever value they like. You have several different options to control the exact type of content that the field allows (single line, multi line, rich text) and various validation options to provide some control over what users enter.
  • Choice fields - with these fields, users will be choosing from a predefined list of options. Each option you define will consist of a value and a text component. The value is what is stored internally for the field (and may only use alphanumeric characters), while the text is what will be displayed to end users.

Beyond this, there are options that apply to all fields. These include controls over how the field is editable and where it is displayed.

For advanced actions, you may access fields in templates via {$xf.visitor.Profile.custom_fields.fieldId}. This can be used in conjunction with template conditionals to change the output based on a user's custom field value. Note that this example is accessing the value from the current visitor's custom fields. A different variable may need to be used to access, for example, the user that posted a particular message.


Trophies add a light gamification element to your forum. They allow you to define certain thresholds and criteria for when a user is awarded a trophy and the associated points. The top trophy point earners are then displayed in the notable members list.

When defining a trophy, you will specify the number of points it is worth and the criteria that is required to receive it. Once a user meets that criteria, it will be automatically awarded. Note that once awarded, a trophy will not be revoked, even if the user no longer meets the criteria.

Deleting a trophy will remove the points from any user that has received it.

If you prefer not to use trophies, you may disable them using the option at the bottom of the trophy list.

User title ladder

The user title ladder allows you to define a progression for the title that is displayed below a user's name in their posts, on their profile and in various other locations. You may select whether the ladder is based on the number of messages the user has posted, likes they've received, or trophy points they've been awarded. As these values increase, they will receive a different title from the ladder.


The user title ladder is only used if a user does not have a custom user title specified in the profile or in their display styling user group. Those will take priority if specified.

When a user's title comes from the ladder, their title will be the highest value on the ladder that's below their value for the selected field. For example, if you have entered titles for 0, 50, and 100 messages and and the user has posted 80 messages, they would receive the 50 messages title.

To ensure that all users receive a title, we recommend that you specify a title with a minimum value of 0, however this is not required.

User upgrades

User upgrades are one of the monetization options included in XenForo. This system allows your users to purchase increased access or access to additional features on your forum.

When a user purchases an upgrade, they will be added to one or more user groups. You would configure these groups to have additional permissions or provide access to additional areas of the forum.

To setup a user upgrade, you must first setup a payment profile via Setup > Payment profiles. These profiles define how the payment will be processed and received. Once a payment profile is defined, the user upgrade can be configured, including options surrounding cost, duration, and whether the upgrade is automatically extended.

Users can purchase upgrades from the Account upgrades page listed under the account menu.

User discipline

Enforcing your site's rules is an important part of running a forum. XenForo supports both incremental and absolute approaches to dealing with user discipline.


Warnings allow you and your moderators to add warning points to users when they violate rules. These points can then be connected to actions that apply restrictions or bans based on how many warning points the user has.

The warning system consists of two parts: the warnings themselves and warning actions.

In the control panel, you may pre-define warnings that your moderators can apply to users. For each warning, you'll be defining things like:

  • The title, which will be displayed to moderators viewing the list of warnings a user has received
  • The default number of points the warning is worth
  • The default time until the points expire (and are no longer counted)
  • Any user groups you want to add the user to while this warning is not expired
  • And the default conversation settings to notify the user that they have received a warning


When a user is warned, they will only be notified if the moderator opts to send the user a conversation while applying the warning.

Warnings will be applied by moderators by clicking the Warn link on specific content or by applying a warning directly via the user's profile. If a warning is applied to specific content, the moderator may be able to leave a public warning message to indicate to others that the content is not appropriate.

Moderators will be able to see a user's warning history via their profile. This will display the current warning points total and the total number of warnings they have received, regardless of whether those warnings have expired. Each of the warnings can be clicked to receive more information about the warning or to go to the related content.

The second component of the warning system are warning actions. This allows you to define specific actions to take based on the number of warning points a user receives. These actions include banning, discouragement or adding additional user groups. If you choose to add the user to additional groups, you will generally be removing permissions; in this case, you will want to define permissions using the Never option.

Each warning action will be applied for a specific length of time. This will either be an explicit amount of time (even permanent) or while the total number of warning points the user has is above the points threshold for the warning action. These settings allow you to apply restrictions using several approaches:

  • You can apply restrictions for a short period of time while using long expiration times on warnings. As users receive warnings, their total points will tend to accrue and you can apply more strict restrictions at higher points thresholds.
  • You can apply restrictions while above the points threshold, though often with shorter expiration times. This means that subsequent warnings will cause the restrictions to be in place for even longer.


Warning actions are only applied when crossing a points threshold. If you define a new warning action (or change the points threshold of an existing one), a user that already has more than that number of points will not have the action applied until their points drop below the threshold and then increase above it again.

Banning users

As a final resort for most disciplinary situations, you can temporarily or permanently ban a user from your site. A banned user will receive an error message on each page of your XenForo forum, indicating that they are banned and, if relevant, details about when the ban will be lifted and the reason for the ban.

Banned users are not included in the member count and do not show in the member list or search. In addition, the profile pages of banned users are only accessible by Administrators.

By default there is no outward indication that a member has been banned. If desired, a user group can be created specifically for this purpose, with the appropriate display styling priority set to ensure it overrides any other groups the user is a member of. To enable this, define the group and configure the Add user group on ban option as needed.

Moderators can also ban and unban users if they are given the Ban users permission.

Alternatively, specific IP ranges can be banned. Banned IPs will not be able to access any page of your XenForo forum.

Discouraging users

At times, banning a person may not be entirely effective. With the design of browsers, it's easy for a problematic user to register a new account. Discouraging aims to make using the site slow and painful for a problematic user, such that they eventually give up and leave.

A user can be discouraged by editing the user in the control panel and enabling the Discouraged option. The behavior of the discouragement system can be controlled by options in the User discouragement and discipline group.

Alternatively, specific IP ranges can be discouraged. This helps ensure that the behavior is maintained even when the targeted user is not logged in.

Security lock

Occasionally, you may want to protect a user's account, especially if you suspect that a security breach has occurred or that the user's account has otherwise fallen victim to unauthorized access.

In these instances, you may protect accounts with a security lock, which can be applied when editing the account.

  1. Log in to the Admin control panel.
  2. Find the user to whom you want to apply the lock, for example by going to Users > Search for users, then click to edit their account.
  3. Scroll down to the Security lock section, and choose either Locked: User must change password or Locked: User must reset password.
  4. Hit Save to commit the change.

User must change password will force the user to enter their existing password and create a new, different password when they next log in to their account.

User must reset password forces the user to reset their password by responding to a message sent to their registered email address.


This option should be used if it is suspected that the user's original password has been compromised or guessed by an unauthorized user.

Batch update

It is possible to apply changes to multiple users using the batch update users tool.

To apply a batch update to a selection of users:

  1. Log in to the Admin control panel
  2. Go to Users > Batch update users
  3. Use the user criteria searcher to identify the users to whom you want to apply the update.

You may then apply a variety of changes, including setting primary and secondary user groups, removing user group memberships, setting user state and security lock status and various others.

Member statistics

Rather than showing a rather dull list of all the users registered on your forum, XenForo offers the ability to show custom statistics blocks with the top x users for a particular search parameter.

For example, you may want to show the top posters, or those users with the most accepted solutions.

To create a statistics block, that will be shown in the Notable members section of your community, go to Users > Member statistics in your Admin control panel, then either click on Add member stat or select an existing statistics block to edit.

After giving your statistics block a title and a unique key (used solely for system identification purposes), you will be able to use User search criteria to narrow down the list of users that can be shown in your statistics block, or else apply the statistics search to all valid users.

The users that are shown in the finished statistics block will be determined by the Sort order and the User limit. For example, setting the Sort to Messages / Descending and the User limit to 10 will show the ten most prolific posters in your community.


It is possible to create advanced statistics blocks with complex user-searching and filtering capabilities beyond those offered through the main interface by providing PHP callbacks.

You may create as many statistics block as you like.