Review and manage the following site configuration options in the System Console by selecting the Product menu, selecting System Console, and then selecting Site Configuration:
A JPG image for display on the login page. The image must be uploaded through the System Console. There is no config.json setting. The file should be smaller than 2 MB.
Text that will be shown below the Custom brand image on the login page. | - System Config path: Site Configuration > Customization | You can format this text using the same Markdown formatting | - config.json setting: TeamSettings > CustomBrandText as in Mattermost messages. | - Environment variable: MM_TEAMSETTINGS_CUSTOMBRANDTEXT | | | String input. Maximum 500 characters. Enable custom branding | | must be set to true to display the text. | |
This field sets the URL for the Help link on the login and sign up pages, as well as the Help Resources link under the Help menu in the channel header.
This field sets the URL for the Terms of Use of a self-hosted site. A link to the terms appears at the bottom of the sign-up and login pages.
The default URL links to a Terms of Use page hosted on mattermost.com. This includes the Mattermost Acceptable Use Policy explaining the terms under which Mattermost software is provided to end users. If you change the default link to add your own terms, the new terms must include a link to the default terms so end users are aware of the Mattermost Acceptable Use Policy.
This field sets the URL for the Privacy Policy of a self-hosted site. A link to the policy appears at the bottom of the sign-up and login pages. If this field is empty, the link does not appear.
This field sets the URL for a page containing general information about a self-hosted site. A link to the About page appears at the bottom of the sign-up and login pages. If this field is empty the link does not appear.
With self-hosted deployments, you can specify how the Report a Problem option behaves in the Mattermost app via the Help menu:
Default: Customers with a Mattermost license can open a support case by email with the Mattermost support team. Unlicensed Mattermost deployments are directed to the troubleshooting forums.
Email address: Enables you to enter an email address that users will be prompted to send a message to when they choose Report a Problem in Mattermost.
Custom link: Enables you to enter a URL that users will be directed to when they choose Report a Problem in Mattermost.
Hide link: Removes the Report a Problem option from Mattermost.
Enable users to download mobile app logs for troubleshooting. When the Report a Problem link is shown, mobile logs can be downloaded as part of the reporting flow.
true (Default): Users can download mobile app logs.
false Users can't download mobile app logs.
System Config path: Site Configuration > Customization
This field sets the URL to download the Mattermost Android app. Users who access the Mattermost site on a mobile browser will be prompted to download the app through this link. If this field is empty, the prompt does not appear.
If you have an Enterprise App Store, link to your Android app.
This field sets the URL to download the Mattermost iOS app. Users who access the site on a mobile browser will be prompted to download the app through this link. If this field is empty, the prompt does not appear.
If you use an Enterprise App Store, link to your iOS app.
Specify the minimum version of the Mattermost Desktop App required to connect to this server | - System Config path: Site Configuration > Customization | (e.g., 5.10.0). Users connecting with a Desktop App version below this minimum are shown | - config.json setting: ServiceSettings > MinimumDesktopAppVersion | an update required screen and cannot use the application until they update. | - Environment variable: MM_SERVICESETTINGS_MINIMUMDESKTOPAPPVERSION | | | The update screen includes a download link configured via the | | Mattermost apps download page link setting. | | | Must be a valid semantic version (e.g., 5.0.0). Leave blank to allow all Desktop App | | versions to connect. | | | | String input. Default is empty (no minimum enforced). | |
This setting isn't available in the System Console and can only be set in config.json.
Define valid custom URL schemes for redirect links provided by custom-built mobile Mattermost apps. This ensures users are redirected to the custom-built mobile app and not Mattermost's mobile client.
When configured, after OAuth or SAML user authentication is complete, custom URL schemes sent by mobile clients are validated to ensure they don't include default schemes such as http or https. Mobile users are then redirected back to the mobile app using the custom scheme URL provided by the mobile client. We recommend that you update your mobile client values as well with valid custom URL schemes.
This feature's config.json setting is "NativeAppSettings.AppCustomURLSchemes" with an array of strings as input separated by spaces.
Access the following configuration settings in the System Console by going to Site Configuration > Localization. Changes to configuration settings in this section require a server restart before taking effect.
Sets the list of languages users see under Settings > Display > Language. If this field is left blank, users see all supported languages. Newly supported languages are added automatically. If this field is not blank, it must contain the Default client language, in addition to any other languages. For example, to limit the language choices to US English and Español (es), the string would be "en,es".
Access the following configuration settings in the System Console by going to Site Configuration > Localization. These settings configure automatic translation of channel messages. See the Auto-translation setup guide for deployment details.
The languages that all messages in autotranslation-enabled channels are translated into. Every message is translated into each language in this list, regardless of who is in the channel. Specify languages as an array of language codes.
Default is ["en"].
System Config path: Site Configuration > Localization
The number of concurrent translation workers per node. Higher values increase translation throughput but use more resources. This setting is not available in the System Console and can only be set via mmctl, config.json, or environment variable.
The Max users per team is the maximum total number of users per team, | - System Config path: Site Configuration > Users and Teams | including activated and deactivated users. | - config.json setting: TeamSettings > MaxUsersPerTeam > 50 | | - Environment variable: MM_TEAMSETTINGS_MAXUSERSPERTEAM | In Mattermost, a team of people should be a small organization with a | | specific goal. In the physical world, a team could sit around a single | | table. The default maximum (50) should be enough for most teams, but | | with appropriate hardware, this limit can be increased to | | thousands of users. | | | | Channels | are another way of organizing communications within teams on various topics. | | | | Numerical input. Default is 50 self-hosted deployments, and 10000 | | for Cloud deployments. | |
Enable users to open direct message channels with
This setting determines whether a user can open a direct message channel with anyone on the Mattermost server or only to members of the same team. This setting only affects the options presented in the user interface. It does not affect permissions on the backend server.
Any user on the Mattermost server: (Default) Users can send a direct message to any user through the Direct Messages > More menu. config.json setting: "any"
Any member of the team: The Direct Messages > More menu only allows direct messages to users on the same team. Pressing CtrlK on Windows or Linux, or ⌘K on Mac, only lists other users on the team currently being viewed. A user who is a member of multiple teams can only send direct messages to the team that is being viewed. However, the user can receive messages from other teams, regardless of the team currently being viewed. config.json setting: "team"
System Config path: Site Configuration > Users and Teams
This setting determines how names appear in posts and under the Direct Messages list. Users can change this setting in their interface under Settings > Display > Teammate Name Display, unless this setting is locked by a system admin via the Lock teammate name display for all users configuration setting.
Show username: (Default for self-hosted deployments) Displays usernames. config.json option: "username".
Show nickname if one exists...: Displays the user's nickname. If the user doesn't have a nickname, their full name is displayed. If the user doesn't have a full name, their username is displayed. config.json option: "nickname_full_name".
Show first and last name: (Default for Cloud deployments) Displays user's full name. If the user doesn't have a full name, their username is displayed. Recommended when using SAML or LDAP if first name and last name attributes are configured. config.json option: "full_name".
System Config path: Site Configuration > Users and Teams
This setting controls whether users who sign in with email and password can change their own profile fields under Settings > Profile. System admins are always exempt and can edit any user's profile through the System Console or the API. Users authenticating through an external provider (AD/LDAP, SAML, or OAuth) aren't affected; their fields remain governed by the provider's attribute settings.
Don't lock profile fields: (Default) Users can change all of their profile fields. config.json option: "none".
Lock name and username: Users cannot change their first name, last name, or username. config.json option: "name_and_username".
Lock entire profile: Additionally locks the nickname, position, and profile picture. Email stays editable because it's the sign-in credential, protected by password re-entry and verification. config.json option: "all".
Empty first and last names can be filled in once by the user, so people who join through a team invite link or open server signup aren't left without a name. Once set, the name is locked.
When this setting is enabled, anyone with the Invite Users permission can pre-set the first name, last name, and username for each email invitation they send. The invited person sees the pre-set username on the account creation page and cannot change it. We recommend restricting the Invite Users permission through advanced permissions to people trusted to enter this information correctly.
For a display name convention of "First Last" across the workspace, combine this setting with Teammate Name Display set to Show first and last name and Lock Teammate Name Display set to true.
System Config path: Site Configuration > Users and Teams
true: (Default) All users can see the email addresses of every other user.
false: Hides email addresses in the client user interface, except from system admins and the System Roles with read/write access to Compliance, Billing, or User Management (users/teams/channels/groups etc).
System Config path: Site Configuration > Users and teams
From Mattermost v11.6.0, when enabled, team and channel URLs are anonymized, meaning the URL no longer contains the team or channel name. This prevents team and channel names from being identified through web addresses.
When this setting is enabled, the team and channel creation workflows no longer include a step for users to define a URL; teams and channels are created with an automatically generated anonymous URL. This applies only to newly created teams and channels; existing teams and channels are not affected.
true: Team and channel URLs are anonymized.
false: Team and channel URLs include the team or channel name.
System Config path: Site Configuration > Users and Teams
true: (Default) Users with appropriate permissions can create custom user groups, and users can @mention custom user groups in Mattermost conversations.
false: Custom user groups cannot be created.
System Config path: Site Configuration > Users and Teams
Set the server time for updating the user post statistics, including each user's total message count, and the timestamp of each user's most recently sent message.
Must be a 24-hour time stamp in the form HH:MM based on the local time of the server. Default is 00:00.
System Config path: Site Configuration > Users and Teams
true: Users can deactivate their own account from Settings > Advanced > Deactivate Account. When a user deactivates their own account, they receive an email notification confirming the deactivation.
false: (Default) Users can't deactivate their own account.
Available only when authentication is set to use email and password. Not available when authentication uses SAML or AD/LDAP.
System Config path: Site Configuration > Users and Teams
From Mattermost v11.8, channel category sorting is enabled by default. When enabled, channel admins can choose a default sidebar category when creating or editing a channel. Channel admins can select an existing category, type a new category name, or clear the default category from channel settings. Members who join the channel see it under that category in their sidebar. When disabled, the default category selector is hidden.
true: (Default) When creating or editing supported channels, channel admins see a Default category (optional) field. They can select an existing category, enter a new category name, or clear the default category from channel settings. Members who join the channel see it under that category in their sidebar.
false: The default category selector is hidden when creating or editing channels.
System Config path: Site Configuration > Users and Teams
true: (Default) Enables automatic email notifications for posts.
false: Disables notifications. A developer may choose this option to speed development by skipping email setup (see also the Enable preview mode banner setting).
System Config path: Site Configuration > Notifications
true: (Default) When Send email notifications is false, users see the Preview Mode banner. This banner alerts users that email notifications are disabled.
false: Preview Mode banner does not appear.
System Config path: Site Configuration > Notifications
Send full message contents: (Default) Email notifications include the full message contents, along with the name of the sender and the channel. config.json setting: "full"
Send generic description with only sender name: Only the name of the sender and team name are included in email notifications. Use this option if Mattermost contains confidential information and policy dictates it cannot be stored in email. config.json setting: "generic"
System Config path: Site Configuration > Notifications
Sets a user support (or feedback) email address that is displayed on email notifications and during the Getting Started tutorial. This address should be monitored by a system admin. If no value is set, email notifications will not contain a way for users to request assistance.
String input. Default is feedback@mattermost.com. This field is required when changing settings in the System Console.
System Config path: Site Configuration > Notifications
Email address used in the reply-to header when sending notification emails from the Mattermost system. This address should be monitored by a system admin.
Generic description with only sender name: Push notifications include the sender's name, but not the channel name or message contents. config.json setting: "generic_no_channel"
Generic description with sender and channel names: (Default) Push notifications include the name of the sender and channel, but not the message contents. config.json setting: "generic"
Full message content sent in the notification payload: Includes the message contents in the push notification payload, which may be sent through Apple's Push Notification service or Google's Firebase Cloud Messaging . We highly recommended this option only be used with an https protocol to encrypt the connection and protect confidential information. config.json setting: "full"
Full message content fetched from the server on receipt (Available in Mattermost Enterprise): The notification payload contains no message content. Instead it contains a unique message ID used to fetch message content from the Mattermost server when a push notification is received via a notification service app extension on iOS or an expandable notification pattern on Android.
If the server cannot be reached, a generic push notification is displayed without message content or sender name. For customers who wrap the Mattermost mobile application in a secure container, the container must fetch the message contents using the unique message ID when push notifications are received.
If the container is unable to execute the fetch, the push notification contents cannot be received by the customer's mobile application without passing the message contents through Apple's or Google's notification service. config.json setting: "id_loaded"
System Config path: Site Configuration > Notifications
true: (Default) Users can dismiss the system-wide notification. It will re-appear the next time the user logs in, and when the text is updated by an admin, or when an admin disables system-wide notifications and reenables them.
false: Users cannot dismiss the banner.
System Config path: Site Configuration > System-wide notifications
true: (Default) Allows users to add up to 6000 emojis through a Custom Emoji option in the emoji picker. Emojis can be GIF, PNG, or JPG files up to 512 KB in size.
true: (Default) Enables automatic following for all threads that a user starts, or in which the user participates or is mentioned. A Threads table in the database tracks threads and thread participants. A ThreadMembership table tracks followed threads for each user and whether the thread is read or unread.
- Always On: (Default) Enables threaded discussions | - System Config path: Site Configuration > Posts | | - config.json setting: ServiceSettings > CollapsedThreads
on the server and for all users. This is the recommended configuration for optimal user experience | - Environment variable: MM_SERVICESETTINGS_COLLAPSEDTHREADS | and to ensure consistency in how users read and respond to threaded conversations. | | config.json setting: "always_on" | |
Default On: Enables threaded discussions on the server and for all users. | |
Default Off: Enables threaded discussions on the server but not for users. | |
Sets the countdown duration for burn-on-read messages once they are revealed. After a recipient reveals a burn-on-read message, the message is deleted for that user after the specified duration. This setting applies to all burn-on-read messages.
Numerical input in seconds. Default is 600 seconds (10 minutes).
Sets the maximum duration that burn-on-read messages can exist after they are sent. The message is deleted after the specified duration, even if it hasn't been revealed by all recipients.
Numerical input in seconds. Default is 604800 seconds (7 days).
true: The server generates a preview of the first website, image, or YouTube video linked in a message. Users can disable website previews, but not image or YouTube previews, under Settings > Display > Website Link Previews.
false: (Default) All previews are disabled and the server does not request metadata for any links contained in messages.
true: (Default)Share links to Mattermost messages | - System Config path: Site Configuration > Posts will generate a preview for any users that have access to the original message. | - config.json setting: ServiceSettings > EnablePermalinkPreviews > true |
false: Share links do not generate a preview. | - Environment variable: MM_SERVICESETTINGS_ENABLEPERMALINKPREVIEWS |
true: Enables rendering of | - System Config path: Site Configuration > Posts | LaTeX in message text. | - config.json setting: ServiceSettings > EnableInlineLatex > false
false: (Default) Disables inline rendering of LaTeX. Instead, LaTeX in message text is highlighted. | - Environment variable: MM_SERVICESETTINGS_ENABLEINLINELATEX | LaTeX can also be rendered in a code block, if that feature is enabled. See Enable LaTeX code block rendering. | |
A list of URL schemes that will automatically create a link in message text, for example: ["git", "smtp"]. These schemes always create links: http, https, ftp, tel, and mailto.
If a key is provided in this setting, Mattermost displays titles of embedded YouTube videos and detects if a video is no longer available. Setting a key should also prevent Google from throttling access to embedded videos that receive a high number of views.
Enable or disable the ability to synchronize draft messages across all supported Mattermost clients.
true: (Default) Message drafts are saved on the server and may be accessed from different clients. Users may still disable server synchronization of draft messages by going to Settings > Advanced Settings.
false: Draft messages are stored locally on each device.
The number of milliseconds to wait between emitting user typing websocket events, which determines how frequently "user is typing..." messages are updated.
Numerical input in milliseconds. Default is 5000. Minimum is 1000.
This setting improves an organization's mobile security posture by restricting file access while still allowing essential file viewing capabilities.
true: Prevents file downloads, previews, and sharing for most file types, | - System Config path: Site Configuration > File sharing and downloads | even when the | - config.json setting: FileSettings > MobileEnableSecureFilePreview > false | Allow file downloads on mobile | - Environment variable: MM_FILESETTINGS_MOBILEENABLESECUREFILEPREVIEW configuration setting is enabled. Allows in-app previews for PDFs, | | videos, and images only. Files are stored temporarily in the app's cache and cannot be exported or shared. | |
false: (Default) Secure file preview mode is disabled. | |
true: Allows users to create public links to files attached to Mattermost messages. | - System Config path: Site Configuration > Public Links
false: (Default) Prevents users from creating public links to files and disables all previously created links. | - config.json setting: FileSettings > EnablePublicLink > false |
32-character salt added to the URL of public file links. Changing this setting will invalidate all previously generated links. The salt is randomly generated when Mattermost is installed, and can be regenerated by selecting Regenerate in the System Console.
String input.
System Config path: Site Configuration > Public Links
true: (Default) System admins will receive in-product notices about server upgrades and administration features. | - System Config path: Site Configuration > Notices - | - config.json setting: AnnouncementSettings > AdminNoticesEnabled > true |
false: System admins will not receive specific notices. Admins will still receive notices for all users (see Enable end user notices) | - Environment variable: MM_ANNOUNCEMENTSETTINGS_ADMINNOTICESENABLED |
The following settings aren't available in the System Console and can only be set in config.json.
When connected workspaces are enabled, system admins can create and manage connected workspaces in the System Console by going to Site Configuration > Connected Workspaces.
Enable the ability to establish secure connections between Mattermost instances, and invite secured connections to shared channels where users can participate as they would in any public and private channel.
Connected workspaces requires Mattermost Enterprise servers running v10.2 or later.
By default, both configuration settings are disabled and must be enabled in order to share channels with secure connections. Enabling connected workspace functionality requires a server restart.
This feature's two config.json settings include:
ConnectedWorkspacesSettings.EnableRemoteClusterService: false with options true and false.
ConnectedWorkspacesSettings.EnableSharedChannels: false with options true and false.
Automatically synchronize users when a new connection between workspaces is established. This ensures that remote users are immediately discoverable for direct and group messages without requiring them to post in a shared channel first.
true: (Default) Users are automatically synchronized when a new connection is established.
false: Users are not automatically synchronized when a new connection is established.
From Mattermost v11.8, system admins can configure classification markings in the System Console by going to Site Configuration > Classification Markings.
Classification markings define reusable classification levels that can be displayed as global or channel-level banners in the web and desktop apps. Each classification level includes a name, color, and rank order. You can select a preset, such as US DoD, NATO, UK GSCP, Canada, or Australia PSPF, or define custom classification levels. Levels are ordered using the same Ranked attribute type available for user attributes, so each level sits at a defined position from lowest to highest.
Configure classification markings:
Go to System Console > Site Configuration > Classification Markings.
Enable Enable classification markings.
Select a Classification preset, or create custom classification levels.
Configure classification level names, colors, and rank order.
Optionally enable the Global Classification Banner under Global Classification Indicators.
Select the Banner visibility:
Top only
Top and bottom
Select the Global classification level to display.
Disable the ability to search across all teams or a specific team.
true: (Default) Cross-team search is enabled. Searches can be performed against all channels the user is a member of across all teams, a specific team, or the current team.
false: Cross-team search is disabled. Searches are performed on all channels the user is member of within the current team only.