Social Marketing Handbook

Strategies, Workflows, and Emoji for Social Media at GitLab

📖 Welcome to the Social Marketing Handbook. The social marketing team is responsible for the stewardship of the GitLab brand social channels. We’re accountable for the organic editorial calendar and work with partners across the Developer Relations, digital marketing, talent brand, and other teams to orchestrate the social media landscape for GitLab. {:.alert .alert-info .text-justify}

Social Marketing Handbook Pages

Admin and Project Management{:.btn .btn-purple-inv} Community Management{:.btn .btn-purple-inv} Social Reporting{:.btn .btn-purple-inv} Take a Social Training{:.btn .btn-purple-inv} Team Member Social Policy{:.btn .btn-purple-inv} Team Member Advocacy{:.btn .btn-purple-inv} Advocacy Curators{:.btn .btn-purple-inv}

Contact the Social Marketing Team

Message us in the #social_media_action Slack Channel{:.btn .btn-purple-inv}

Brand Campaigns

Brand Refresh{:.btn .btn-purple} GitLab 15{:.btn .btn-purple} Social Community Contributor{:.btn .btn-purple}

Events

KubeCon EU 2022{:.btn .btn-purple} REMOTE by GitLab event 2022{:.btn .btn-purple} GitLab Commit 2022{:.btn .btn-purple} AWS reInvent 2022{:.btn .btn-purple}

Talent Brand

FY23 Social Talent Brand{:.btn .btn-purple}

Other Campaigns

2022 DevSecOps Survey{:.btn .btn-purple} 2022 Remote Playbook{:.btn .btn-purple} 2022 Remote Work Report{:.btn .btn-purple}


Long term Social Media Strategy (Over the next 3-5 years)

The Social Marketing Team is working towards a long term strategy that includes three major pillars. Each pillar would require dedicated resources to grow and flourish.

Brand

GitLab’s company profiles on core social channels like Twitter and LinkedIn
- Calendaring (Copy + Creative)
- Crisis Response/Mitigation
- Core reporting and analysis
- Community Management
- Partnering with Talent Brand for employer campaigns

Advocacy

Enabling GitLab’s team members to publish GitLab-related content on their personal social media channels
- Copy + Creative
- Includes Comms, sales, talent brand
- Core reporting and analysis

Institutional Listening

Data analysis to inform future campaigns, slogans, comms, as well as, competitive research
- General Social Listening
- Antemortem research for any and all marketing and comms
- Insights inform all decisions

Strategic direction

Organic social is a two way communication system. It’s about community and conversations. We can to appeal to the emotions of our audience through real-time conversations and interactions.

We want…
people to feel good.
to embrace our community.
to create excitement for the product. {: .alert .alert-success .text-justify}

Elevate our brand ⛰ - Increase team member community and sense of belonging. Less is more, particularly when it is executed well and resembles a world class brand.

“Inside out culture” 🤝 - Exercising our internal values to our external audiences.

No hard selling 🥎 - We throw softballs only.

FY23 OKRs

Check out the FY23 OKR Epic here{:.btn .btn-purple-inv}

FY23 Content Strategy

The FY23 content strategy will enable our objectives of engagement and elevation.

Engagement

Because engagement is our principal metric focus, it’s important that we consider all social content for engagement opportunities. Our reporting handbook page defines engagement and engagement rate:

ℹ️ Engagements are the number of times that users took action on our posts during the reporting period. This includes likes, retweets, comments, saves, replies, reactions, and shares. Does not include quote retweets. {:.alert .alert-info .text-justify}

ℹ️ Engagement Rate is the number of times during a reporting period that users engaged with our posts as a percentage of impressions. This metric indicates how engaging particular content or campaigns are overall. {:.alert .alert-info .text-justify}

Content for organic social media should inherently be engaging to our audiences. Content should drive users to take an action: to share/retweet the post, to click an attached link, or to respond and create a two-way conversation with an individual user. Rather than years’ past where simple support for linked assets and coverage was provided, we’ll need to better understand why the user would want this information and whether or not in commands an action, particularly whether or not it would invite them to respond to us. This puts responses and 1-to-1 conversations of much higher importance than we previously focused on.

To learn more about the specifics of engagement and conversations, check out our community management handbook page.

Elevation

Elevate our brand on social by delivering on intentional and properly planned campaigns with cross-functional support to align with overall marketing OKRs. We’ll look to polish visuals, write higher quality and shorter copy, and experiment with rich content like Twitter Spaces, livestreaming video, and other formats.

What elevates our brand?

Results - we want an increase in engagement as well as the quality of our metrics
Emotional connections - we want to be able to say that we helped members of the community do better
Individual connections - 1-to-1 with the brand and our evangelists, to better develop GitLab champions
Polished look and feel - visuals and copy should resemble other big tech companies, refined and consistent messaging {:.alert .alert-info .text-justify}

Elevation requires siginficant campaign planning, above years’ past. The social team has already begun this work by developing a quarterly brief form and sync meeting program where the team connections with stakeholders across the marketing organization to better plan and understand critical campaigns.

Social Quarterly Brief Form{:.btn .btn-purple-inv}

Remember when considering OKRs for organic social media

  • It’s about storytelling, not direct marketing
  • Because our content goes worldwide and untargeted, organic social is top-of-funnel activity driving impressions, engagements, and conversations with assistance in link clicks to move users further down the funnel for the next team to work with
  • The social team aids in corporate marketing OKRs as well as has our own to keep moving the practice at GitLab forward

Social Channels

Channels under the care of the social team
GitLab Brand Twitter
GitLab Brand LinkedIn
GitLab Brand Facebook
GitLab Brand Instagram
GitLab Brand GIPHY Channel

GitLab Branded Social Channels include our company Twitter, LinkedIn, and Facebook which are managed in a more traditional manner. And an Instagram channel that takes more of an editorial look at remote life and work at GitLab. This channel is a little less “marketing-y” and more about sharing thoughtful stories by our team members. Our GIPHY account is mainly for new GIF content, which can be tied to larger initiatives.

Content Pillars (FY23)

Our content pillars provide strategic direction for the social team and the GitLab team overall in terms of knowing what topics of content we should be investing in. Generally speaking, organic social will want to play a role in each of these pillars, as we have seen good performance on related content in the last few years. Content pillars also make up the Pillar: xyz reporting tag in Sprout. This allows us to categorize and quantify performance across pillars. There may be periods where we do not have content for a specific pillar, not all pillars are active and scheduled all the time. However, the pillars guide our priorities and allow us to shift attention as needed. Some content may straddle several pillars.

  • All Remote Brand
  • Blog
  • Developer Relations
  • Corporate Events
  • DevOps Leadership
  • Press / News
  • Product
  • Talent Brand

A note on DevOps Leadership vs Product: Product pillar is only about GitLab the product. DevOps Leadership is more about perspective and point of view on the space, not necessarily about GitLab the product.

For more info on the Sprout tags for Pillars, refer to the Reporting Handbook page.

Only the social team can manage GitLab’s social channels

Social media can be used as a relationship builder between GitLab and partners, vendors, event organizers, and other third parties. Leveraging GitLab’s brand social media channels is a great way to extend these relationships further. However, only GitLab’s brand social team has the authority to commit GitLab’s brand social media channels for work. Please do not guarantee GitLab brand social media coverage to anyone without consulting and gaining approval from our team first. Our responsibility is to manage both our time as team members and the owned public image of our brand and product. These things are not taken into consideration unless the social team is actively a part of the conversation.

If you have committed GitLab’s brand social media channels for social posts or committed the social team’s time to projects before consulting with and gaining approval, the social team will reject the commitments. {:.alert .alert-warning}

Sharing 3rd-party events (onsite or virtual) on organic social where a team member is speaking

The purpose of GitLab team members participating in 3rd-party events is to bring GitLab’s message to the 3rd-party’s audience and to gain more community. Therefore, it’s contradictory for GitLab brand social channels to promote a team member speaker for a 3rd-party event by default. Periodically, if the speaking engagement is part of a critical campaign or would resonate with the zietgiest of the moment, we may tweet once for folks to register for the event. However, if you’re the speaker, we encourage you to post to your own social channels so that your network can join the event. Share your post with the #social_media Slack channel and we’ll like, comment, and maybe share your post!

Sharing blog posts

New blogs are linked in the #content-updates channel, and then our team uses that as a notification that the blog is ready to schedule and share on social. Sometimes when it’s connected to a campaign or is particularly important, we’ll also get a ping about it in a thread from the original slack message.

If the blog is connected to an integrated campaign, it will be picked up in the social issues and epics for that campaign. If it is a part of a press release/announcement, we’ll also be tagged in related issues through the PR workflow.

On a quarterly basis the social media team will identify the best performing blogs. The top 2-3 blogs will then be reintroduced and scheduled to publish on GitLab’s Brand Social Channels.

Check out the blog content workflow for social on our admin page{:.btn .btn-purple-inv}

Sharing monthly releases

In addition to the existing workflow with the release team, we should look to share the news with all of GitLab. Following the scheduling/publishing of our brand posts for the release, add the release post as a story to Bambu/Advocacy by Sprout. Once all links are available to share, respond to the message in #whats-happening Slack channel and also send this message to the channel to for more awareness.

You can share our release post on social media by either sharing our LinkedIn or Twitter posts or by sharing your own post via Bambu. You can also celebrate this month’s MVP, [insert name], by selecting the copy in Bambu that highlights this month’s winner.

Replace the italicized words above with links to their respective posts.

Sharing content from behind a paywall

We’ll come across articles that are behind a pay wall from time to time, mainly when it’s press coverage we’re looking to share. We can still share these articles on our social channels, however, we’ll need to disclose that there is a paywall in the copy of the social post, as to be transparent with our community. Clicks that come from folks who can’t read the article aren’t distinguishable from clicks where folks can read below the fold, so it’s important to be clear about the differences.

Add the paywall disclosure copy to the very end of the copy. Consider using a line break to make this sentence explict to the community.

This article is behind a paywall.

Support and status communications on social media

For GitLab status updates, folks can find info at the @gitlabstatus Twitter handle. This account is not managed by the social team.

Beyond general inquries and regular social engagement with our followers, we do not provide core support in private messages on social channels. We will instead direct followers to the GitLab forums for support.

Please use a derivative of this message:

Thanks for reaching out! In our spirit of transparency, we don't provide support here. Please add your question to the Q&A section of the GitLab forum, so that everyone can learn the answer. https://forum.gitlab.com/c/questions-and-answers/7

Calendaring and content volume

We know that less is more, usually. However GitLab is a global all remote brand. We have users in every timezone and we are often organizing events and news to coordinate in ways that include people across the globe. Because of this, our calendaring and volume must remain adaptable.

Content calendars are often at “full capacity” or what we’d consider:

  • 1-2x on LinkedIn per day
  • 1-2x on Facebook per day
  • 2-4x on Twitter per day

This is due to the sheer volume of content that we’d deem as valuable to our audiences, the need to continue driving traffic to our website, and to continuously include followers across timezones on our social channels. However, we will ultimately publish content at the best times of day, determined by Sprout machine learning, which may or may not include a wide variety of times.

Our “full capacity” concept is not a requirement. We can and will evolve our calendaring volume and focuses as brand, community, and business needs change. If this does change, we’ll need to establish proper expectations.

Channel Use

Twitter

Because the wider developer community utilizes Twitter as a platform to celebrate contributions, make feature suggestions, and share industry ideas, GitLab prioritizes this channel. We post to this platform first, and also more frequently.

On Twitter our GitLab community is our first priority. It includes those who contribute to our DevOps platform, our GitLab Heroes, and folks who evangelize the industry. We take time to listen to their feedback, even when it is critical. We make space for fun. Through inside jokes, polls, or simple questions, our Twitter channel provides developers an opportunity to take a break and relate to one another. GitLab’s Twitter community is unique because we focus on engaging with their opinions. And delivering them tailored content they will actually find useful, or inspiring.

The GitLab Brand Twitter channel is establishing a sense of community through these activities:

Posting frequently

Twitter does not operate like our other GitLab Social Branded Channels. There are no strict frequency limitations on Twitter and we aim to post at a minimum of 3 times a day if not more. Retweets and quote tweets scheduled to the calendar do not reduce our limitation. We see 1:1 interactions as useful, limitless, and should always be added to the calendar if they correlate with a promotion, or simply celebrate a milestone. Every post should take advantage of Sprout’s optimal time feature as we have many followers located across all time zones. Do not always select the 3-5 stars optimal time. If there are already 4 posts going out that day select the 1-2 stars optimal time. This will help keep the calendar properly spaced out and ensure we have content publishing throughout the day.

Community management

GitLab’s Twitter ecosystem of engagement includes mentions from code contributors, brand personalities, technical evangelists, GitLab Heroes, remote work enthusiasts, and team members. We prioritize engaging with these audiences because it enables the brand to drive more meaningful interactions through social media. That means we use the Smart Inbox feature to find posts to like, comment, or retweet on a daily basis. We commit to quote tweeting posts when someone shares their #MyFirstMRmerged, a contribution to a project, or excitement about a new feature.

GitLab also participates in periodic giveaways which are launched directly on our Twitter channel. The barrier to entry often includes a social share and tag. Our audience has responded really well to these easy-to-enter giveaways that provide them free passes or swag items. We believe in these 1:1 relationships that we’ve built online. It feels good to give back to our community who makes us a loveable product, and brand.

Storytelling

We’re human. And enable humans to build better software, together. So to share our stories with the world, we don’t just quickly share a piece of content. We develop organic social media campaigns that have our audience and their reactions in mind. We take a corporate blog- and craft it into an editorial campaign. We display real voices through creative imagery. We share relatable experiences, and bring light to specific features that make DevOps- easier. We don’t share headlines- we develop a deeper understanding.

Polls & Questions

Creating space to interact with the GitLab community has always been a priority for our Twitter channel. By posting frequent polls, or questions- we found a way to increase engagement and also generate two way conversation. We ask a variety of questions, both silly and thought-provoking.

Emoji & GIF use

Our tone of voice on social media is human and friendly. All devs are friends; no matter the tool they use. That’s why we use emoji whenever we can. The overuse of emoji allows us to participate in a universally used language. GitLab believes that everyone can contribute. That’s why being better communicators is crucial for our audience- no message should go misunderstood.

When the opportunity presents itself, using GIFs in quote tweets, comments, or celebratory posts has proven to increase engagement.

LinkedIn

Our LinkedIn community consumes content over conversation, first. Though there are opportunities to drive conversation related to company culture, remote work, and exciting announcements. GitLab’s LinkedIn page strategically keeps our followers reading, and spending time on our blogs, releases, topic pages, and use cases. Ultimately, we use LinkedIn as an opportunity to expand in more detail on the content we care about. How do we do that? By using a variety of formatted posts with more thoughtful text, questions, polls, quotes, or even statistics. Due to the nature of the platform, there is less 1:1 conversation, and engagement with the community. We also have a decreased frequency of posts in comparison to our Twitter channel. How often GitLab should post on LinkedIn depends on the time of year, and the content we are sharing. Typically we post every single day, and up to2 times per day. However, we do make exceptions for special events, and major brand-level campaigns.

The GitLab Brand LinkedIn channel is establishing GitLab as the complete DevOps platform through these activities:

Posting consciously

LinkedIn does not operate like Twitter. We publish two posts per day with the exception of timely announcements that must take place. Content shared should prioritize our culture, blog, releases, remote work, and press mentions. Because there is a limited post frequency, every post published should be during Sprout Social’s 5 star and 4 star optimal times. This will ensure the few posts we share, are seen by followers located across all time zones.

By posting consciously, we don’t just consider the time a post goes live. When the social media team is supporting brand-level campaigns or majors events like Commit or KubeCon. It is important to include content that supports the wider marketing organization’s OKR’s. That means if there is a Pathfactory link available, the social media manager should direct folks there first.

Evangelizing our values

Though LinkedIn doesn’t function like Twitter, you can strategically encourage opinions with thought provoking and also relatable content. For example, in this post we normalized the celebration of gray squares in your contribution chart. This started a very transparent and honest discussion about the hours people work, the days they contribute on, and also don’t. When publishing content centered around our GitLab values, the social media manager always responds to comments thoughtfully and intentionally to create a stronger connection to our brand.

Responding as the company

It is important to amplify partner mentions, contributors and their wins, and GitLab team members’ channels when the social media manager sees fit. So if there is an exciting partnership that announces a new integration, a hackathon winner, or even a “we belong here” story- these are all great examples that should be engaged with or shared directly to our company page on LinkedIn. Please see this section of the handbook for instructions on how to do that.

Press mentions

Promoting GitLab as a thought leader, and loveable brand has always been a priority for Social @ GitLab. By sharing third-party content or press mentions, we increase engagement and impressions on LinkedIn. For example, in this post GitLab is named one of the Best Workplaces 2021 and was a top post by engagement. The social media team should monitor the #external-comms channel to find more opportunities.

Facebook

The reality is that GitLab has a smaller audience on Facebook so its priority does fall below our efforts on Twitter and LinkedIn. It is still important to maintain a presence on this channel because it provides folks basic information about our business, and proves to still see organic reach. That said, there is a decreased frequency for this channel. And social media team also chooses not to share certain types of campaigns to this channel as it is not the right audience.

The GitLab Brand Facebook channel is reinforces our presence as a lovable brand through these activities:

Posting occasionally

We aim to post once a day on Facebook to maintain a presence and our social media landscape. though, there is no immediate need to post every single day on Facebook. If content is not available, then a post does not need to publish that day. During heavy calendaring times- there should be no more than 2 posts a day on Facebook. Organic Facebook posts can cannibalize ROI from other organic posts, so a high frequency of posts will inevitably have a lower reach per post. This tactic should only be used during critical times meaning for timely announcements, or news that requires more than one post that day.

Tailoring content

Facebook content should prioritize the following: company culture, remote work, our community, values, features, and announcements.

Campaigns that require you to sign up will not see success on this channel, and should only be published on Twitter and LinkedIn.

Instagram

In no way shape or form should our Instagram account mirror our other GitLab Branded Social Channels. In fact, it takes more of an editorial approach to it, and is less “marketing-y” and more about building community.

Since launching the GitLab Brand Instagram channel the Social Media Team committed to posting weekly content driven by a dedicated theme which represents our values, remote work, or life at GitLab.

FY22Q1: We Belong Here

FY22H1: Cribs

Future themes TBD

The GitLab Brand Instagram channel reinforces us as an all-remote organization that really awesome humans want to work for through these activities:

Posting weekly

We aim to post once a week on Instagram to maintain a steady and ever increasing follower growth. Being consistent with your frequency will avoid seeing a drop in engagement and give folks a reason to follow. It also increases the chance of our content being discovered.

Because we only post once a week on this channel, it should always be scheduled during the most optimal time according to Sprout Social. Note that if you are scheduling more than one photo per post, you will have to publish natively through the Sprout Social app. Here are instructions on how to do that.

Instagram Stories

The stories feature on Instagram should be used to extend the life of the feed post you shared that week. After engagement on the post has slowed, use the story feature on Instagram. The story does not have to replicate your recent post. Instead it increases reach and visits to the Brand Instagram channel.

Storytelling

We want to share real-life stories and experiences with our Instagram community to create a stronger connection with them. We use the caption as an opprtunity to share a voice of a GitLab team member who is living our values. We extend the employer brand and incite fun conversation around remote working.

Respond to comments

The GitLab Instagram channel should really feel human. That’s why you should respond to every single comment that isn’t from an automated bot. Even a simple emoji, or like can go a long way. It reinforces the connection to our brand.

Hashtags and account tags

Each campaign/theme executed on the Instagram Brand Channel should include hashtag research, and specific hashtags to use at launch. By using strategic hashtags, and tagging specific accounts, your post will be seen beyond the feed. You will increase your chances of being discovered in Instagram’s Explore page. The Instagram Explore page has an algorithum that improves content recommendations. Here are instructions on how to do that.

YouTube

The social media team does not manage GitLab’s YouTube presence. Please reach out to the digital production team.

Social Media Design

We look to the design team to provide integrated campaign assets and elements to use on social, many rapid design needs are fulfilled from the social team directly by Using Canva Pro. Canva Pro provides the social team with an easy-to-use tool on any device to quickly spin up designs. Social Media requires rapid responses and quick turnarounds, so to do we require the same of our designs.

While Canva does provide many pre templated layouts, we do not use those. The social team will build custom art using basic GitLab brand guidelines and best practices for social media. In the future, many templates and individual assets will be brand team approved, but we have not iterated far enough to work in a rapid process.

The elements the social team uses for our designs are mainly GitLab-owned. Icons, sketches, animations, etc. were usually created for non-social purposes and we’ve added them to our library to use for social media. We do use Pro-only elements on occasion, but strive to find elements we feel would not be used often by other brands.

Social image sizes

While each channel has their own best sizes to use, and changes often, for the sake of scale and efficiency, we’ll use the following dimensions unless otherwise noted.

  • 1800 x 945 for Twitter, Facebook, LinkedIn, and about.gitlab.com embedded social sharing cards (or opengraphs)
  • 1620 x 1620 for Instagram wall posts (unless we are deliberately using IG’s vertical or horizontal options)
  • 1620 x 2880 for stories (vertical) posts on any channel that supports stories
Here's the strategy behind the decisions above
  • Images in the dimensions of 1800 x 945 are currently visible correctly across Facebook, LinkedIn, and Twitter. In some instances, the images are a bit off-center on Twitter’s mobile app, however, the majority of our audience engages with us via desktop, which puts our visual strategies into a desktop-first experience. They are also the correct size for opengraph cards. This may change in the future, as channels continue to tweak how their sites show images.
  • The specific pixel size of these images should be larger than what is advertised (e.g. every image standard above is 1.5x the recommended pixel size). This is because each channel has its own way of processing images that are uploaded to the site, and in many cases, a larger image results in a higher quality visual when either downsampled (reduced quality) or shrunk to fit (the larger size is seen smaller, making the image sharper).

Social Videos

Each social channel can have videos uploaded directly to them. We can use videos as we see fit, but they will need to follow the following guidelines:

  • 16:9 or 1:1 ratio
  • less than 2 minutes and 20 seconds required; though performance increases with shorter, snappier videos
  • min. of 720 resolution, preferably 1080 or 2k to account for high resolution screens
  • burned in subtitles or an srt file if there are any voices speaking in the video (this is requirement and videos are not usable without subtitles)
  • video title
  • no long intro or outro - the content needs to begin within the first 3 seconds of the video

Social during an incident

Going Dark

When an incident occurs, it may be appropriate for the social team to pause all brand channel social posts. This is called “going dark”, and is a regular part of evaluating whether or not company messaging is appropriate to share at any given time. It is considered good practice to minimize the digital space brands occupy on social media during these times. This can help to not distract social conversation but can also reduce the probability of being accidentally caught up in conversation unintentionally, sounding tone-deaf, or otherwise coming across as insensitive.

When this occurs, time-sensitive posts will be the first to be rescheduled. In the event time-sensitive posts could not be rescheduled, the social team will do what we can to update our stakeholders on what posts won’t be published. Non-time sensitive posts will be moved to Sprout drafts, which can then be rescheduled at a later time.

Going dark could have a negative impact on social metrics, depending on the severity and length of time we’re dark. Going dark could also negatively impact specific CTAs if we’re relying on organic social to perform. These considerations are a part of making the decision and will be communicated as often as appropriate.

Rewriting copy or switching assets

It may be necessary to update copy or assets depending on cultural impact during an incident. The social team reserves the agency to do this as we see necessary, however, we will communicate the changes to our stakeholders if we’d consider the changes to be major.

The above template is also located in Sprout for quick access.


Open Social Media Strategies from GitLab
Use these micro-strategies to up your social game
Social Advocacy Curator Program
Strategies and details to enable curators to share GitLab-related news for company-wide enablement
Social Media Community Management
Engaging and responding to the community
Social Media Project Management and Admin
Workflows, Templates, and more for GitLab Team Members
Social Media Reporting
Metric Definitions, Cadences, and Objectives
Team Member Social Media Advocacy
Strategies and details to enable team members to share GitLab-related news on personal social media channels
Last modified December 18, 2023: Fix DevOps capitalization (8bfc311b)