In February 2013, we blogged about email
transparency at Stripe. Since then a number of other companies
have implemented their own versions of it (which a few have
about publicly). We often get asked whether email transparency is
still around, and if so, how we've scaled it.
Email transparency continues to be one important tool for state
transfer at Stripe. The vast majority of Stripe email (excluding particularly
sensitive classes of email or threads where a participant has a strong
expectation of privacy) remains publicly available through the
Today we're publishing two key components that have allowed us to
scale it this far: our list manager tool and updated internal
documentation reflecting what we've learned over the past year and a
half. Hopefully these will make it easier for others to run email
transparency at their own organizations.
In the time since our first post, we've grown our mailing list
count almost linearly with headcount: from 40 employees and 119
mailing lists in February 2013 to now 164 people and 428 lists. A
plurality are project lists (sys@, sys-archive@, sys-bots@, sys-ask@),
but there's also a long tail on topics ranging from
country operations (australia@) to ideas
for things Stripe should try (crazyideas@).
We use Google Groups for our email list infrastructure. Today
we're releasing the web interface we've built on Google's APIs to make
managing many list subscriptions (and associated filters) easy. This interface, called Gaps, lets you do things like:
- Quickly subscribe to or unsubscribe from a list.
- View your organization's lists (categorized by topic), and which
you're subscribed to (including indirect subscriptions through other
- Get notifications when new lists are created.
- Generate and upload GMail filters.
Here's a quick sample of what Gaps looks like:
Check it out and let us know
what you think!
Updated internal documentation
Scaling email transparency has required active cultural effort and
adaptation. As our team grew, we'd notice that formerly good patterns
could turn sour. For example, at first email transparency would
improve many conversations by letting people drop in with helpful
tidbits. But with a larger team, having many people jumping into a
conversation would instead grind the thread to a halt.
As we've identified cases where email transparency didn't scale
well, we've made changes to our culture. Below is our updated internal
documentation on how we approach email transparency. It embodies what
we've learned about how to make email transparency work at an
organization of our size:
Email transparency (from our internal wiki)
One of Stripe's core strategies is hiring
and then making sure they have enough information to make good local
decisions. Email transparency is one system that has helped make
this possible. As with any rule at Stripe, you should consider the
recommendations in this document to be strong defaults,
which you should just override if they don't make sense in a
How it works
Email transparency is fairly simple: make your emails transparent
by CCing a list, and make it easy for others to be transparent by
observing the responsibilities below.
The main mechanisms of email transparency are the
specially-designated archive lists, to
which you should CC all mail that would normally be off-list, but only
because of its apparent irrelevance rather than out of any particular
desire for secrecy. The goal isn't to share things that would
otherwise be secret: it's to unlock the wealth of information that
would otherwise be accidentally locked up in a few people's inboxes.
In general, if you are debating including an archive list, you
should include it. This includes internal P2P email which you would
normally leave off a list, emails to vendors, and scheduling
email. Don't be afraid to send "boring" email to an archive list —
people have specifically chosen to subscribe to that list. You should
expect most people will autoarchive this list traffic (hence the
name!), and then dip into it as they prefer.
If you're new to it, email transparency always feels a bit weird
at first, but it doesn't take long to get used to it.
What's the point?
Email transparency is something few other organizations try to
do. It's correspondingly on us to make sure we have really good
indicators for how it's valuable. Here's a sample of things people
have found useful about email transparency:
Provides the full history on interactions that are relevant to
you. If you're pulled into something, you can always pull up the
relevant state. This is especially useful for external
communications with users or vendors.
Provides a way for serendipitous interactions to happen — someone
who has more state on something may notice what's happening and
jump in to help (subject to the limitations about jumping in).
- Lets you keep up with things going on at various other parts of
Stripe, at whatever granularity you want. This reduces siloing,
makes it easier to function as a remote (and even just know what
we're working on), and generally increases the feeling of
- Requires ~no additional effort from the sender.
Makes conversations persistent and linkable, which is particularly
useful for new hires.
Forces us to think about how we're segmenting information — if
you're tempted to send something off-list, you should think
Makes spin-up easier by immersing yourself in examples of Stripe
tone and culture, and enabling you to answer your own questions
via the archives.
Helps you learn how different parts of the business work.
Email transparency cuts two ways. Being able to see the raw feed
of happenings at Stripe as they unfold is awesome, but it also
implies an obligation to consume responsibly. Overall, threads on an
archive list merit a level of civil inattention
— you should feel free to read it, but be careful about adding your
- Talk to people rather than silently judging. If you see something on an email list that rubs you the wrong way or that you think doesn't make sense (e.g. "why are we working on that?", "that email seems overly harsh/un-Stripelike"), you should talk to that person directly (or their manager, if there's a reason you can't talk to them about it). Remember that we hire smart people, and if something seems off you're likely missing context or a view of the larger picture. No one wants their choice to send email on-list to result in a bunch of people making judgements without telling them, or chattering behind their back — if that can happen, then people will be less likely to CC a list in the future.
- Avoid jumping in. A conversation on an archive list should be considered a private conversation between the participants. When people jump into the thread, it often grinds to a halt and nothing gets done. There will be some very rare occasions (e.g. if you have some factual knowledge the participants probably don't) where it's ok to lurk in to the thread, but in practice these should be very rare. By convention, the people on the thread may ignore your email; don't take it personally — it's just a way of making sure that email transparency doesn't accidentally make email communication harder. Knowing when to jump in is an art, and when in doubt, don't.
- Don't penalize people for choosing to CC a list. Ideally, people are writing their emails exactly as they would if they were off-list. So be cognizant about creating additional overhead for people because they chose to CC the list. There may be typos or things that you're wondering about or don't make sense. If you're *concerned* about something being actively bad, then you should talk to the person, but if it's something small (e.g. "there's a typo", "this tone isn't Stripelike", "this conversation seems like a waste of time"), you should trust that there's either a reason, or the person's manager will be on the lookout to help them (especially if they're new).
- Help others live by the above responsibilities. The only way we can preserve email transparency is by collectively nudging each other onto the right course. Whether it's poking someone to CC a list, or telling someone to stop venting about an email but just go talk to the author, the person responsible for fixing the shortfalls you see is the same as the one responsible for your availability.
- I don't mind people being able to read this boring scheduling email, but I don't think it's worth anyone's time to read. You should still send it to an archive list! Archive lists are intended to be the feed of everything going on within a particular team — let the people who are subscribing decide if it's worth their time or not.
- I have a small joke on this thread. Should I CC it to the list, or just send it to one person (or a small set of people)? Small jokes are good! The main cost is potentially derailing the relevant thread. So generally, if it's a productive, focused thread, just send your joke off-list, but if it's already fairly broad, then you should feel free to send the joke publicly.
- I feel like I need to write my email for the broad audience that might be reading it, rather than the one person it's actually meant for. The only change between how you write emails for email transparency and how you would write them privately to other Stripes should be that one has a CC. That is, if you feel a need to rewrite your emails for the audience, then that likely indicates a bug in the organization we should fix. If you notice yourself having this tendency, talk to gdb — we should be able to shift the norms of the organization so this isn't a problem.
- How do we make sure this respects outside people's expectations? In many ways, email transparency is just a more extreme version of what happens at other organizations — since it's opt-in, all of the emails are human-vetted to be shareable. Email transparency is mostly about changing the default thresholds. As a corollary, if someone requests that their email not be shared, then certainly respect their request.
Like any tool, email transparency has its limitations. Since it's
in many ways a one-way communication system, email transparency is bad
for sensitive situations where people may react strongly. It's also
important to preserve people's privacy. The following is a description
of the classes of things which you may not see on an archive list.
- Anything personnel related (e.g. performance).
- Some recruiting conversations, especially during closing or when people are confidentially looking around. People's decision-making process at that stage is usually quite personal, and even if people have a hard time picking Stripe, we want to make sure that they start with a blank slate.
- Communications of mixed personal and professional nature (e.g. recruiting a friend).
- Early stage discussions about topics that will affect Stripes personally (e.g. changing our approach to compensation).
- Some particularly sensitive partnerships.
As we said in the original email transparency post, it's hard to
know how far it will scale. That doesn't bother us much: we continue
to do unscalable things
until they break down. The general sentiment at Stripe is that email
transparency adds a lot of value, and it seems we'll keep being able
to find tweaks to keep it going.
Hopefully these components will help you with email transparency
in your own organization. If you end up implementing something
similar, I'd love to hear about it!