Chapter 11
IN THIS CHAPTER
Analyzing user data in Slack
Getting data into and out of Slack
Fusing Slack workspaces
Updating Slack user data en masse
Employees who routinely use Slack generate data — lots and lots of data. Rather than let that data just accumulate in the background, though, Slack offers ways to analyze that data, back it up, move it around, and even bring it life.
This chapter details Slack’s native data-related features: analytics, data visualization, and the movement of data to and from workspaces.
What if you’re not interested in doing any of these data-related things with Slack just yet? Maybe you’re not a data person. I get it, but I still wouldn’t skip this chapter. It’s essential to know what you and others can and can’t do with all the information housed in Slack.
Via its analytics dashboard, Slack lets you view data about your workspace, its channels, and its members. Your individual access hinges upon your role as well as your organization’s Slack plan. People with more senior roles under a premium plan can do more with Slack data than regular Members under the Free plan.
Data-driven companies such as Slack recognize the value of providing users with valuable insights. Access Slack’s analytics dashboard by following these steps:
Play around with the different options on channels, members, timeframes, and more.
Your specific options will vary based upon your role and your firm’s plan. Figure 11-1 displays an example.
FIGURE 11-1: Slack analytics dashboard.
You can immediately view workspace-specific stats that fall under the usage umbrella, including
When you scroll down in the Slack analytics dashboard, you can view a chart that displays active members by week, as Figure 11-2 shows.
FIGURE 11-2: Slack chart showing active members (Standard plan).
Click on the Daily tab to the immediate left of Weekly to view daily numbers or “drill down,” as some folks say.
In Slack’s analytics dashboard, you can scroll down to see a chart that contains the following information about your workspace:
Figure 11-3 displays a breakdown of messages read by date.
FIGURE 11-3: Messages read: Breakdown by date.
At this point, you may be wondering: When and where are members posting the most channels in the workspace? The tab to the right provides an answer to that question. Specifically, Figure 11-4 includes
Say that you want to know how many messages and files workspace members are sharing. Slack customers on premium plans can view graphs that display the total number of messages sent and files uploaded in a given workspace in a graph similar to Figure 11-5.
FIGURE 11-4: Breakdown of messages sent by date.
FIGURE 11-5: Total workspace messages sent by date.
It’s not hard to identify peak periods for workspace communication. As Figure 11-6 shows, clicking on the tab to the right shows files shared by date.
FIGURE 11-6: Workspace files uploaded by date.
Under the Free plan, organizations can view basic channel data. Figure 11-7 provides an example of the channel analytics that you view on a Free plan.
To be sure, channel-specific analytics can provide useful insights. For example, perhaps it would make sense to archive or even delete unused channels — or at least make the suggestion. The content, context, and conversations in channels naturally evolve over time; some may effectively go dark. On the other end of the spectrum, this data may show that a broad channel is far too noisy. Maybe segmenting it or creating a new, more specific channel makes sense in this case.
FIGURE 11-7: Slack channel analytics (Free plan).
You don’t need to be a data scientist, though, to wonder what other fields may yield valuable insights on how employees at your organization communicate. Fortunately, organizations on premium plans can view enhanced analytics such as those in Figure 11-8.
FIGURE 11-8: Slack channel analytics (premium plans).
Under the Free plan, Slack displays basic information on Members, including unique user ID, user name, and email address. (Yes, your workspace may contain two employees named Elaine Benes, but Slack assigns each one a unique user ID.)
As long as members’ individual privileges permit, customers under Slack’s premium plans can view the following information on each workspace member:
Figure 11-9 shows analytics that Slack users on premium plans can see.
FIGURE 11-9: Slack member analytics (premium plans).
Here are a few tips to get the most out of Slack’s member analytics:
Somethings seems off in your Slack account. You don’t recall posting a message in a channel, let alone sharing a file. Perhaps you suspect foul play or just want to check whether you’re going senile.
By keeping access logs, Slack makes it easy for you to the view following information related to your workspace logins:
To view a sample member access log, follow these steps:
On the right-hand side of the page, click on Access Logs.
Slack displays a log similar to Figure 11-10.
Anyone who possesses a modicum of knowledge about enterprise security will tell you that this information helps forensics folks investigate breaches and other issues.
But what about Workspace Owners and Admins? They may well need to view more than just their own Slack activity, including their colleagues’ activity. Slack lets them view the following information on all workspace members:
FIGURE 11-10: Slack daily access log.
This era is nothing if not data-driven. Sometimes organizations wisely back up their data, provide it upon request to a third party, or decide to migrate it into a different application.
Slack’s management has long recognized this reality. To this end, Slack offers a number of powerful ways to export, import, and generally manipulate data.
Slack offers users three types of powerful data exporting capabilities:
Note that your workspace role governs whether you can access these tools.
If you’re a Workspace Owner or Admin, then you can export all messages and file links posted in public channels. Slack makes this option available for customers on all plans, including the Free one. Note that the Standard Export excludes DMs and messages posted in private channels.
To perform a Standard Export, follow these steps:
From the drop-down menu, select Settings & administration and then Workspace settings.
Slack then directs you to a URL specific to your workspace.
Click on the Export tab.
You see a screen similar to Figure 11-11.
FIGURE 11-11: Slack Export Data options.
Select a date range.
Slack provides a number of different date-based export options. You can select one of the predefined ones or enter a custom date range.
Click on the Start Export button.
Slack begins processing your export file. When it’s ready, Slack sends you an email with a downloadable link. Also, Slackbot sends you a DM containing the same link. It resembles Figure 11-12.
FIGURE 11-12: Slackbot DM with data export download link.
Click on the link in Slackbot’s DM.
Slack takes you back to your workspace’s unique data-export page.
Larger files take longer for both Slack to generate and you to download. If hundreds of employees at your organization have been using Slack for months or years, this process may take hours. Ditto if they regularly upload large files to the workspace.
Scroll down the page.
If you have exported data before, then Slack displays a section titled “Past Exports.”
Click on the link to download the export file.
You’ll see something similar to Figure 11-13.
FIGURE 11-13: Slack past exports.
Click on the Ready for download link on the right under the Status column.
The download for your export file begins. Ultimately, it consists of a single compressed or zipped file. After you unzip it, a series of folders and JavaScript Object Notation (JSON) files appears.
Figure 11-14 shows the JSON files from my Slack For Dummies workspace.
As Figure 11-14 shows, Slack generates one JSON file per public channel per day with activity. (If no channel activity occurred on a given day, Slack doesn’t generate an empty JSON file. Slack also includes a file containing data about all members of your workspace.) This method includes individual and group DMs.
FIGURE 11-14: Unzipped files from Slack Standard Export.
Figure 11-15 displays an example of one of these JSON files.
FIGURE 11-15: JSON data from a Slack Standard Export file.
If your organization pays for Slack’s Plus plan, then this option is available to Workspace Owners under limited circumstances. Note that your firm will need to submit an application to Slack. That is, Corporate Export isn’t available by default. It includes content from everything in the Slack workspace: public and private channels and direct messages.
What if a government agency, law firm, or compliance entity compels English paper company Wernham Hogg to turn over information on internal company communication? That is, the company needs to fulfill several different security, legal, and compliance obligations.
To meet this legitimate request, mercurial office manager David Brent needs to export or archive its Slack data in a way that the previous export options doesn’t allow. In this scenario, Slack as a company finds itself squarely in the middle of organizations with conflicting interests.
If you think that the potential for abuse exists here, trust your instincts. To this end, Slack doesn’t treat enhanced export requests willy-nilly. Rather, it mandates that an organization — in this case, Wernham Hogg — follow its own internal practices. Beyond that requirement, Slack ensures that the individuals and organization are legally entitled to request and view this information.
Slack approves these requests on a case-by-case basis, and only if Wernham Hogg meets two conditions. For starters, Slack makes the Discovery Export API available only to designated Org Owners under its Enterprise Grid plan. Second, customers must use pre-approved third-party apps and for only a number of limited purposes. Put differently, Slack will deny applications from nosy employees who lack sufficient documentation to justify their invasive requests.
For more detailed information on exporting in Slack, see bit.ly/slack-de
.
Slack recognizes that your organization may have used different collaboration tools in the past. That is, the ideas of reducing internal email and building an internal knowledge base may not have dawned upon you because you use Slack For Dummies.
To this end, Slack provides a number of data-portability tools. At a high level, the goal is to facilitate an organizations’ efforts to import data from other collaboration tools into one of a Slack workspace.
Table 11-1 lists some of the external collaboration tools that you can bring into Slack.
TABLE 11-1 Slack Import Options for Third-Party Tools
Name |
What Slack Allows You to Import |
Flowdock |
The app’s message history and files |
Campfire |
The app’s message history and files |
CSV or text file |
Data in a custom format. (Note that you may need to spend time mapping fields and cleaning up your data.) |
ChatWork |
The app’s message history and files |
Slack sends you an email once it begins the import process.
When I hold Slack training sessions, my clients are brimming with curiosity. They typically want to pick my brain about the best ways to configure the application. You know by now that Slack is very flexible. Occasionally, though, that flexibility can act as a curse. Understandably, no one wants to make the wrong decision.
During these conversations, it’s usually only a matter of time before someone asks me: How many workspaces should our organization create?
For several reasons, my default answer is always one. First, you can create as many public and private channels in a single workspace as you like. (See Chapter 3 for more information on this topic.) There really isn’t a compelling reason to segment employees any further. (As Chapter 9 discusses, Enterprise Grid customers can customize security at a remarkably granular level within a given workspace.)
Second, Slack’s default ability to analyze member data is workspace-specific. That is, access logs and usage statistics don’t transcend workspaces. In this sense, no Slack entity is above the workspace. (Chapter 2 covers this topic in more detail.)
Third, firms that decide to fuse together disparate workspaces may encounter data-migration problems. Generally speaking, the process of extracting, transforming, and loading data (ETL) is simpler in theory than in practice.
I should know. I spent a good part of my consulting career helping organizations extract, cleanse, and move data from one system to another.
People who, for whatever reason, set up multiple workspaces and subsequently change their minds are in luck: Slack makes consolidating data from multiple workspaces easy. A fictitious example may clarify how to execute this process:
Employees at Satriani General Hospital love using Slack. Its HR and payroll departments, however, each use separate workspaces. For a long time, it’s been a problem. Lately it has exacerbated. Among the many issues: HR clerks process employee raises, status changes, and transfers but sometimes forget to enter them in their HRIS in a timely manner. Urgent last-minute emails and phone calls typically make matters worse. As a result, about one-quarter of the time employees don’t see their raises on their paychecks. This issue irritates the payroll manager and her staff because employees always tear into them.
At a meeting, the HR clerks pledge not to fall behind on their work. Both departments agree to communicate better in person and virtually via a single Slack workspace. To this end, they ask IT to consolidate the two workspaces. (Creating a new one just wasn’t necessary. Satriani’s payroll workspace will absorb the HR one.) Once IT completes that process, employees from both departments will use the newly named Payroll&HR workspace. Everybody wins.
Joe works in IT and he handles the migration. He completes the following high-level steps, ideally late at night or on the weekend when no one is using either workspace:
Upload the HR export file of the Slack workspace.
Slack provides two options here. First, if the export file is small enough, members can just upload it by clicking on the link. Because of the size of the HR file in this case, that method is just not going to fly for Joe.
Joe must take advantage of Slack’s second option. He uploads the file to a secure, cloud-based file-sharing service. (Several years ago, Satriani purchased an enterprise-wide Dropbox license). After uploading it, he copies the file’s link.
Choose which members to import.
Slack offers several options on how to handle importing workspace members. Because two employees may share the same name, Slack tries matching employees by email address because it is a unique field.
Choose which channels to import and set their options.
Again, Slack provides plenty of alternatives here.
If you’re satisfied with the results, begin the import.
Slack sends you an email once it has finished importing the data.
When dealing with any data migration in any system, certain truths always hold:
You must communicate to your colleagues exactly what you’re doing, why, and when you’ll be doing it. Slack is no exception to this rule.
Consider the following: Employees continue to send messages and upload files after IT has downloaded the import file. Guess what? Those new messages won’t appear in the new, consolidated workspace.
Chapter 8 covers how customers of the Plus and Enterprise Grid plans can add their own custom fields. To be sure, the reasons will vary. For the most part, though, these fields help members better understand their colleagues and their roles.
As for populating these fields, getting 40 employees in a workspace to add their favorite bands or Twitter handles to their profiles shouldn’t take much effort. A polite request in a public channel should do the trick. But what if a 4,000-employee company wants to add six custom fields per Slack member? That seems like an awful lot of data entry, and the chance for error is significant.
Fortunately, Slack supports two similar methods for Workspace Owners and Admins to tackle this data problem en masse:
Users can access a powerful application programming interface (API) for identity management — the System for Cross-domain Identity Management (SCIM API). At a high level, SCIM is an open protocol that uses cloud computing to automate the exchange of personal data between different information systems or domains. For example, if you want to move a bunch of names, email addresses, or phone numbers from system A to system B, you can use SCIM.
For much more on this topic, see
bit.ly/2n6ezqQ
and bit.ly/slack-prov
.
https://api.slack.com/scim
.