Guild Analytics

Insights are a data monitoring and analytics tool that Discord provides to help community managers understand their guild's performance and how their members are interacting with it.

For growth, activation, engagement, and channel following analytics, only data from the last 120 days are available for non-partner and non-verified guilds. Audience and welcome screen analytics are based on members who visited the server in the last 28 days. Users who opted-out of analytics tracking will not show up in the data.

Query String Params

The following parameters are used in nearly all endpoints that return insights data.

FieldTypeDescription
startISO8601 timestampStart date for the insights data
endISO8601 timestampEnd date for the insights data
intervalintegerThe data aggregation interval
Aggregation Interval
ValueNameDescription
0HOURLYAggregate hourly
1DAILYAggregate daily
2WEEKLYAggregate weekly
3MONTHLYAggregate monthly

Endpoints

Get Guild Growth Activation Overview

GET/guilds/{guild.id}/analytics/growth-activation/overview

Returns a list of growth activation overview objects representing general growth statistics per aggregation interval.

Accepts the common query string parameters as described above.

Growth Activation Overview Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
new_membersintegerThe number of new members who joined the guild
new_communicatorsintegerThe number of new members who communicated in the guild

Get Guild Growth Activation Joins

GET/guilds/{guild.id}/analytics/growth-activation/joins

Returns a list of growth activation joins objects representing member join counts per aggregation interval.

Accepts the common query string parameters as described above.

Growth Activation Joins Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
joinsintegerThe number of users who joined the guild on this date
all_time_joins?integerThe total number of users who have ever joined the guild

Get Guild Growth Activation Joins by Invite

GET/guilds/{guild.id}/analytics/growth-activation/joins-by-invite-link

Returns a list of growth activation joins objects representing specific invite join counts per aggregation interval.

Accepts the common query string parameters as described above.

Growth Activation Joins by Invite Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
invite_linkstringThe invite link used to join the guild
joinsintegerThe number of users who joined the guild using this invite link

Get Guild Growth Activation Joins by Referrer

GET/guilds/{guild.id}/analytics/growth-activation/joins-by-referrer

Returns a list of growth activation joins by referrer objects representing external referral join statistics per aggregation interval.

Accepts the common query string parameters as described above.

Growth Activation Joins by Referrer Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
referring_domainstringThe domain that referred the user to join the guild
joinsintegerThe number of users who joined the guild using this referral

Get Guild Growth Activation Joins by Sources

GET/guilds/{guild.id}/analytics/growth-activation/joins-by-source

Returns a list of growth activations joins by source objects representing detailed member join information per aggregation interval.

Accepts the common query string parameters as described above.

Growth Activation Joins by Source Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
discovery_joinsintegerThe number of users who joined the guild through guild discovery
invitesintegerThe number of users who joined the guild through an invite
vanity_joinsintegerThe number of users who joined the guild through a vanity URL
hubs_joinsintegerThe number of users who joined the guild through a student hub
bot_joinsintegerThe number of users who were added to the guild by a bot using the guilds.join OAuth2 scope
integration_joinsintegerThe number of users who were added to the guild by an integration (e.g. Twitch)
other_joinsintegerThe number of users who joined the guild through an unknown source
total_joinsintegerThe total number of users who joined the guild

Get Guild Growth Activation Leavers

GET/guilds/{guild.id}/analytics/growth-activation/leavers

Returns a list of growth activation leavers objects representing user leave statistics per aggregation interval.

Accepts the common query string parameters as described above.

Growth Activation Leavers Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
days_in_guildstringA label categorizing how long this set of users was in the guild before leaving
leaversintegerThe number of users who left the guild on this date

Get Guild Growth Activation Percentages

GET/guilds/{guild.id}/analytics/growth-activation/activation

Returns a list of growth activation percentage objects representing user engagement statistics per aggregation interval.

Accepts the common query string parameters as described above.

Growth Activation Percentage Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
new_membersintegerThe number of new members who joined the guild on this date
pct_communicated?floatPercentage of new members who sent 3 or more message or talked in the guild
pct_opened_channels?floatPercentage of new members who opened 3 or more channels in the guild

Get Guild Growth Activation Retention

GET/guilds/{guild.id}/analytics/growth-activation/retention

Returns a list of growth activation retention objects representing user retention statistics per aggregation interval.

Accepts the common query string parameters as described above.

Growth Activation Retention Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
new_membersintegerThe number of new members who joined the guild on this date
pct_retained?floatPercentage of new members who stayed in the guild past their first week

Get Guild Growth Activation Membership

GET/guilds/{guild.id}/analytics/growth-activation/membership

Returns a list of growth activation membership objects representing the total number of members in the guild per aggregation interval.

Accepts the common query string parameters as described above.

Growth Activation Membership Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
total_membershipintegerThe total number of members in the guild

Get Guild Engagement Base

GET/guilds/{guild.id}/analytics/engagement/base

Returns a list of engagement base objects representing guild engagement statistics per aggregation interval.

Accepts the common query string parameters as described above.

Engagement Base Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
visitorsintegerThe number of users who visited the guild
communicatorsintegerThe number of users who sent 3 or more messages in the guild
pct_communicators?floatPercentage of users who communicated in the guild
messagesintegerThe number of messages sent in the guild
messages_per_communicatorfloatThe average number of messages sent per communicator in the guild
speaking_minutesintegerAmount of time (in minutes) users spent in voice in the guild

Get Guild Engagement Overview

GET/guilds/{guild.id}/analytics/engagement/overview

Returns a list of engagement overview objects representing general guild engagement statistics per aggregation interval.

Accepts the common query string parameters as described above.

Engagement Overview Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
visitorsintegerThe number of users who visited the guild
communicatorsintegerThe number of users who communicated in the guild
messagesintegerThe number of messages sent in the guild
speaking_minutesintegerAmount of time (in minutes) users spent in voice in the guild

Get Guild Engagement Muters

GET/guilds/{guild.id}/analytics/engagement/muters

Returns a list of engagement muters objects representing user mute statistics per aggregation interval.

Accepts the common query string parameters as described above.

Engagement Muters Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
days_in_guildstringA label categorizing how long this set of users has been in the guild
mutersintegerThe number of users who have muted the guild

Get Guild Engagement Pruneable Members

GET/guilds/{guild.id}/analytics/engagement/pruneable-members

Returns a list of engagement pruneable members objects representing inactive user statistics per aggregation interval.

Accepts the common query string parameters as described above.

Engagement Pruneable Members Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
inactiveintegerThe number of users who are eligible for pruning

Get Guild Engagement Text Channels

GET/guilds/{guild.id}/analytics/engagement/text-channels

Returns a list of text channel engagement objects representing engagement statistics for messageable channels per aggregation interval.

Accepts the common query string parameters as described above.

Text Channel Engagement Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
channel_name? 1stringThe name of the channel
channel_idsnowflakeThe ID of the channel
participatorsintegerThe number of users who viewed the channel
communicatorsintegerThe number of sent 3 or more messages in the channel
messages_sentintegerThe number of messages sent in the channel
pct_participated_in_channel?floatPercentage of users participated in the channel
pct_communicated_in_channel?floatPercentage of users communicated in the channel

1 Not present for voice channels.

Get Guild Engagement Voice Channels

GET/guilds/{guild.id}/analytics/engagement/voice-channels

Returns a list of voice channel engagement objects representing engagement statistics for voice channels per aggregation interval.

Accepts the common query string parameters as described above.

Voice Channel Engagement Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
channel_namestringThe name of the voice channel
channel_idsnowflakeThe ID of the voice channel
participatorsintegerThe number of users who joined the voice channel
communicatorsintegerThe number of users who talked in the voice channel
messages_sentintegerThe number of messages sent in the voice channel
pct_participated_in_channel?floatPercentage of users who participated in the voice channel
pct_communicated_in_channel?floatPercentage of users who communicated in the voice channel

Get Guild Audience New Members by Discord Tenure

GET/guilds/{guild.id}/analytics/audience/new-members-by-discord-tenure

Returns a list of audience new members by Discord tenure objects representing new member statistics categorized by account age per aggregation interval.

Accepts the common query string parameters as described above.

Audience New Members by Discord Tenure Structure
FieldTypeDescription
day_ptstringThe interval the data represents
tenurestringA label categorizing how long this set of users has existed
new_membersintegerThe number of new members who joined the guild

Get Guild Audience Participators by Guild Tenure

GET/guilds/{guild.id}/analytics/audience/participators-by-guild-tenure

Returns a list of audience participators by guild tenure objects representing member statistics categorized by how long they have been in the guild per aggregation interval.

Accepts the common query string parameters as described above.

Audience Participators by Guild Tenure Structure
FieldTypeDescription
day_ptstringThe interval the data represents
tenurestringA label categorizing how long this set of users has existed
participatorsintegerThe number of users who participated in the guild

Get Guild Audience Participators by Platform

GET/guilds/{guild.id}/analytics/audience/participators-by-platform

Returns a list of audience participators by platform objects representing member statistics categorized by platform usage per aggregation interval.

Accepts the common query string parameters as described above.

Audience Participators by Platform Structure
FieldTypeDescription
day_ptstringThe interval the data represents
platformstringThe platform the users are on
participatorsintegerThe number of users who participated in the guild

Get Guild Audience Participators by Registration Country

GET/guilds/{guild.id}/analytics/audience/participators-by-reg-country

Returns a list of audience participators by registration country objects representing member statistics categorized by their account registration country.

Accepts the common query string parameters as described above.

Audience Participators by Registration Country Structure
FieldTypeDescription
day_ptstringThe interval the data represents
country_codestringThe ISO 3166-1 alpha-2 country code the users registered their account in
participatorsintegerThe number of users who participated in the guild

Get Guild Channel Following Overview

GET/guilds/{guild.id}/analytics/channel-following/overview

Returns a list of channel following overview objects representing news channel following statistics per aggregation interval.

Accepts the common query string parameters as described above.

Channel Following Overview Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
total_guilds_followingintegerThe total number of guilds following channels in the guild
new_guilds_followingintegerThe number of new guilds following channels in the guild
guilds_unfollowedintegerThe number of guilds that unfollowed channels in the guild

Get Guild Channel Following by Channel

GET/guilds/{guild.id}/analytics/channel-following/announcements-by-channel

Returns a list of channel following by channel objects representing per-channel following statistics per channel per aggregation interval.

Accepts the common query string parameters as described above.

Channel Following by Channel Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
channel_idsnowflakeThe ID of the followed channel
total_guilds_followingintegerThe total number of guilds following the channel
new_guilds_followingintegerThe number of new guilds following the channel
guilds_unfollowedintegerThe number of guilds that unfollowed the channel

Get Guild Channel Following Reach

GET/guilds/{guild.id}/analytics/channel-following/reach

Returns a list of channel following reach objects representing per-message reach statistics for followed channels per aggregation interval.

Accepts the common query string parameters as described above.

Channel Following Reach Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
channel_idsnowflakeThe ID of the followed channel
channel_namestringThe name of the followed channel
reference_message_idsnowflakeThe ID of the announcement message
guilds_reachedintegerThe number of guilds that received the announcement

Get Guild Channel Following Guild Size

GET/guilds/{guild.id}/analytics/channel-following/following-guild-size

Returns a list of channel following guild size objects representing followed channel statistics categorized by the size of the following guilds per aggregation interval.

Accepts the common query string parameters as described above.

Channel Following Guild Size Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
guild_sizestringA label categorizing the size of the guilds
total_guilds_followingintegerThe number of guilds following channels in the guild

Get Guild Channel Following Guild Size by Channel

GET/guilds/{guild.id}/analytics/channel-following/following-guild-size-by-channel

Returns a list of channel following guild size by channel objects representing per-channel followed channel statistics categorized by the size of the following guilds per aggregation interval.

Query String Params
FieldTypeDescription
startISO8601 timestampStart date for the insights data
endISO8601 timestampEnd date for the insights data
intervalintegerThe data aggregation interval
channel_idsnowflakeThe ID of the followed channel, or 0 for all channels
Channel Following Guild Size by Channel Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
channel_idsnowflakeThe ID of the followed channel
guild_sizestringA label categorizing the size of the guilds
total_guilds_followingintegerThe number of guilds following the channel

Get Guild Welcome Screen Funnel

GET/guilds/{guild.id}/analytics/welcome-screen/funnel

Returns a list of welcome screen funnel objects representing welcome screen statistics per aggregation interval.

Accepts the common query string parameters as described above.

Welcome Screen Funnel Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
option_channel_idsnowflakeThe ID of the welcome channel option
option_selectedstringThe description of the welcome channel option
users_viewed_welcome_screenintegerThe number of users who viewed the welcome screen
users_clicked_any_optionintegerThe number of users who clicked any welcome channel option
users_clicked_optionintegerThe number of users who clicked the welcome channel option
users_sent_messageintegerThe number of users who sent a message in the welcome channel option
pct_clicked_option?floatPercentage of users who clicked the welcome channel option
pct_sent_message?floatPercentage of users who sent a message in the welcome channel option

Get Guild Welcome Screen Users

GET/guilds/{guild.id}/analytics/welcome-screen/users

Returns a list of welcome screen users objects representing user statistics for the welcome screen per aggregation interval.

Accepts the common query string parameters as described above.

Welcome Screen Users Structure
FieldTypeDescription
day_ptISO8601 timestampThe interval the data represents
users_viewed_welcome_screenintegerThe number of users who viewed the welcome screen