Set modes with /mode <target> +/-<modes>. You can stack multiple modes in one command: /mode #channel +mnt.

User modes

Set them on yourself with /mode yournick +mode. You get +iwx automatically when you connect.

ModeNameDescription
+i Invisible Hides you from /who listings unless the viewer shares a channel with you. On by default.
+x Cloaked host Shows a scrambled version of your host instead of your real IP or hostname. On by default. A HostServ vhost replaces the cloak.
+w Wallops Receive wallop broadcast messages sent by IRC operators. On by default.
+R Registered PMs only Only users identified to NickServ can send you private messages. Good against PM spam. /mode yournick +R
+D No private messages Blocks all private messages. IRC operators and services can still reach you.
+T No CTCP Blocks CTCP requests like VERSION, TIME and PING.
+Z TLS-only PMs Private messages only work with users who are also connected over TLS.
+d Deaf You stop receiving channel messages. Private messages still come through. Mostly useful for bots.
+p Hide channels Hides the channels you're in from /whois.
+G Censor Replaces words from the network's bad words list in messages you receive.
+B Bot Marks your client as a bot. Shows up in /whois and /who so users know they're talking to an automated account. If you run a bot, set this. /mode botnick +B

User modes set for you

You'll see these in your mode list, but the server or services set them. You can't set them yourself.

ModeNameDescription
+r Registered You're identified to NickServ.
+z Secure connection You're connected over TLS.
+t Vhost You're using a vhost from HostServ.
+o IRC Operator Global operator privileges. Set by the server after /oper.

Channel modes: access control

New channels start with +nt.

ModeNameDescription
+i Invite only Users must be invited to join. Use /invite nick #channel or ChanServ INVITE.
+k <key> Key Requires a password to join. Users connect with /join #channel key. /mode #channel +k secret
+l <limit> User limit Caps the number of users who can be in the channel at once. /mode #channel +l 50
+L <#channel> Overflow redirect When the channel is full (+l), new users get sent to another channel instead. /mode #channel +L #channel-overflow
+R Registered users only Only users identified to NickServ can join.
+z TLS only Only users connected over TLS can join.
+b <mask> Ban Ban users matching the mask from joining. Mask format: nick!user@host. See extended bans for matching by account or muting people. /mode #channel +b *!*@bad.host
+e <mask> Ban exception Allows a matching user through a ban. Useful for excepting a specific user from a broad ban mask.
+I <mask> Invite exception Users matching the mask can join a +i channel without an invite. /mode #channel +I ~account:alice

Channel modes: talking

ModeNameDescription
+n No external messages Users must be in the channel to send messages to it.
+t Topic protection Only ops can change the channel topic.
+m Moderated Only voiced users and ops can send messages to the channel.
+M Registered to talk Only users identified to NickServ can talk. Voiced users and ops can always talk.
+c No colors Blocks messages that contain color codes.
+S Strip colors Removes color codes from messages instead of blocking them.
+C No CTCP Blocks CTCPs sent to the channel. /me still works.
+T No notices Blocks notices sent to the channel.
+G Censor Replaces words from the network's bad words list with <censored>.

Channel modes: visibility and behaviour

ModeNameDescription
+s Secret Channel is hidden from /list and won't appear in /whois channel lists.
+p Private Channel is marked private. Shown as * in /whois instead of the channel name.
+D Delayed join Users don't show up in the user list until they say something.
+N No nick changes Users can't change their nick while they're in the channel.
+K No knock Blocks /knock requests to an invite-only channel.
+V No invites Nobody can use /invite for this channel.
+Q No kicks Regular /kick stops working. Kicks through ChanServ still work.

Channel modes: flood protection

ModeNameDescription
+F <profile> Flood profile Picks a ready-made flood protection profile, like normal, strict or relaxed. The full list is in the UnrealIRCd docs. /mode #channel +F strict
+f <settings> Custom flood limits Fine-tuned limits for when the profiles don't fit. This example sets +i if 10 users join within 15 seconds. Type /helpop chmodef for all the options. /mode #channel +f [10j]:15

Channel modes: history

ModeNameDescription
+H <lines>:<duration> History Enables channel history. Stores up to the specified number of lines for the given duration. Duration supports m (minutes), h (hours), d (days). IRCv3 capable clients receive history automatically on join. Network limits: registered channels max 150 lines / 7 days, unregistered channels max 25 lines / 1 day. On join playback is capped at 125 lines and 3 days regardless of what the channel is set to. Operator-only. Think about whether your users actually want their messages stored before requesting this. History is kept in memory only, never written to disk, and is lost if the server restarts or crashes. Ask in #ircworld if you want it enabled on your channel. /mode #channel +H 150:7d

To fetch history manually, use HISTORY #channel <lines>. IRCv3 clients that support server-time and batch capabilities can also use the full CHATHISTORY command for more precise retrieval. Most modern clients handle this automatically.

Channel modes set for you

Services, the server or IRC operators set these.

ModeNameDescription
+r Registered The channel is registered with ChanServ.
+P Permanent The channel stays open when empty. ChanServ sets this when you turn on SET PERSIST.
+Z All on TLS Everyone in a +z channel is connected over TLS.
+O Operators only Only IRC operators can join.

Channel modes: user status

These are set on a specific user in the channel, not on the channel itself. ChanServ can hand them out automatically, see FLAGS.

ModeNameDescription
+q <nick> Owner Channel owner (~). Usually the founder. Can do everything an op can, and ops can't kick or deop them.
+a <nick> Admin / protected Protected op (&). Regular ops can't kick or deop them.
+o <nick> Operator Gives channel operator status (@). Full channel control. /mode #channel +o nick
+h <nick> Half-operator Gives half-op status (%). Can kick, ban, and voice, but can't op others.
+v <nick> Voice Gives voice status (+). Allows speaking in a moderated (+m) channel. /mode #channel +v nick

Extended bans

Use these in place of a normal mask with +b, +e or +I.

BanNameDescription
~account:<name> Account Matches whoever is logged in to that NickServ account, whatever nick or host they're on. /mode #channel +b ~account:spammer
~quiet:<mask> Quiet Matching users can stay in the channel but can't talk. /mode #channel +b ~quiet:*!*@noisy.host
~time:<minutes>:<mask> Timed ban The ban removes itself after the given number of minutes. /mode #channel +b ~time:30:*!*@bad.host

Quick reference

CommandDescription
/mode #channel View current modes set on a channel.
/mode yournick View your current user modes.
/who #channel List users in a channel with their status modes.
/mode #channel +mnt Stack multiple modes in one command.
/mode #channel -m Remove a mode (prefix with - instead of +).
/mode #channel +b List all active bans on the channel.
/mode #channel -b *!*@host Remove a specific ban.
/mode #channel +k secret Set a channel key (password). Remove with /mode #channel -k *.
/mode #channel +o+v nick1 nick2 Apply multiple modes to multiple users in one command.
/mode yournick +R Only accept private messages from users identified to NickServ.
/mode #channel +b ~quiet:*!*@host Mute someone without kicking them.