A place to cache linked articles (think custom and personal wayback machine)
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

index.html 44KB

  1. <!doctype html><!-- This is a valid HTML5 document. -->
  2. <!-- Screen readers, SEO, extensions and so on. -->
  3. <html lang="fr">
  4. <!-- Has to be within the first 1024 bytes, hence before the <title>
  5. See: https://www.w3.org/TR/2012/CR-html5-20121217/document-metadata.html#charset -->
  6. <meta charset="utf-8">
  7. <!-- Why no `X-UA-Compatible` meta: https://stackoverflow.com/a/6771584 -->
  8. <!-- The viewport meta is quite crowded and we are responsible for that.
  9. See: https://codepen.io/tigt/post/meta-viewport-for-2015 -->
  10. <meta name="viewport" content="width=device-width,initial-scale=1">
  11. <!-- Required to make a valid HTML5 document. -->
  12. <title>Running a Paid Membership Program (archive) — David Larlet</title>
  13. <meta name="description" content="Publication mise en cache pour en conserver une trace.">
  14. <!-- That good ol' feed, subscribe :). -->
  15. <link rel="alternate" type="application/atom+xml" title="Feed" href="/david/log/">
  16. <!-- Generated from https://realfavicongenerator.net/ such a mess. -->
  17. <link rel="apple-touch-icon" sizes="180x180" href="/static/david/icons2/apple-touch-icon.png">
  18. <link rel="icon" type="image/png" sizes="32x32" href="/static/david/icons2/favicon-32x32.png">
  19. <link rel="icon" type="image/png" sizes="16x16" href="/static/david/icons2/favicon-16x16.png">
  20. <link rel="manifest" href="/static/david/icons2/site.webmanifest">
  21. <link rel="mask-icon" href="/static/david/icons2/safari-pinned-tab.svg" color="#07486c">
  22. <link rel="shortcut icon" href="/static/david/icons2/favicon.ico">
  23. <meta name="msapplication-TileColor" content="#f0f0ea">
  24. <meta name="msapplication-config" content="/static/david/icons2/browserconfig.xml">
  25. <meta name="theme-color" content="#f0f0ea">
  26. <!-- Documented, feel free to shoot an email. -->
  27. <link rel="stylesheet" href="/static/david/css/style_2020-06-19.css">
  28. <!-- See https://www.zachleat.com/web/comprehensive-webfonts/ for the trade-off. -->
  29. <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
  30. <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
  31. <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
  32. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  33. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  34. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  35. <script type="text/javascript">
  36. function toggleTheme(themeName) {
  37. document.documentElement.classList.toggle(
  38. 'forced-dark',
  39. themeName === 'dark'
  40. )
  41. document.documentElement.classList.toggle(
  42. 'forced-light',
  43. themeName === 'light'
  44. )
  45. }
  46. const selectedTheme = localStorage.getItem('theme')
  47. if (selectedTheme !== 'undefined') {
  48. toggleTheme(selectedTheme)
  49. }
  50. </script>
  51. <meta name="robots" content="noindex, nofollow">
  52. <meta content="origin-when-cross-origin" name="referrer">
  53. <!-- Canonical URL for SEO purposes -->
  54. <link rel="canonical" href="https://craigmod.com/essays/membership_programs/">
  55. <body class="remarkdown h1-underline h2-underline h3-underline hr-center ul-star pre-tick">
  56. <article>
  57. <header>
  58. <h1>Running a Paid Membership Program</h1>
  59. </header>
  60. <nav>
  61. <p class="center">
  62. <a href="/david/" title="Aller à l’accueil">🏠</a> •
  63. <a href="https://craigmod.com/essays/membership_programs/" title="Lien vers le contenu original">Source originale</a>
  64. </p>
  65. </nav>
  66. <hr>
  67. <main>
  68. <p>When I launched my <em>Explorers Club</em> <a href="https://craigmod.com/membership/">membership program</a> in January of 2019, I did so with crippling trepidation. So much trepidation that I never once announced it on Twitter or Instagram out of a certain shame. I only announced it in my newsletters, and even then, did so with considerable hemming and hawing.</p>
  69. <p>The reasons for this were many: The program didn’t have super clear deliverables, I didn’t know if I would be able to produce anything of value (so said the tiny voice in my head), and I didn’t know if the program would provide spiritual lift or become wholly burdensome. Impostor syndrome is real!</p>
  70. <p>So I spent the first few months one-foot-in-one-foot-out. But then I began to produce, proved (to myself) I could publish on schedule, and the year took on a momentum all its own. Words begat walks and images which begat essays which begat more thinking about walks which begat the scheduling of <em>bigger</em> walks which begat <em>bigger</em> essays and articles and books and so on and so forth in an ever-forward tumbling, snowballing way.</p>
  71. <p>In the end, launching a paid membership program is maybe the smartest thing I’ve done: <strong>2019 was the most <a href="https://craigmod.com/membership/#2019">productive and creatively engaged</a> year of my life</strong>. And I owe the brunt of that to the <em>Explorers Club</em>. A rapturous THANK YOU to everyone who joined. It has not been “easy,” or effortless. In fact, 2019 was the year I worked harder and with more question marks lingering over my head than ever. But the membership program created a formality and from that formality I divined a permission — both financially and spiritually (my members are incredibly supportive) — to work deeply on topics I find interesting and important.</p>
  72. <p>Everyone’s needs are different. I can’t explicitly recommend every writer or photographer or YouTuber to start their own membership program. What I can do is tell you about my experience, and hope that it’s instructive to those readers out there who might, too, be membership-curious.</p>
  73. <hr />
  74. <div class="toc">
  75. <h3>Contents</h3>
  76. <ul>
  77. <li><a href="#why-start-a-membership-program">Why start a membership program?</a></li>
  78. <li><a href="#finances">Finances</a></li>
  79. <li><a href="#launching">Launching</a></li>
  80. <li><a href="#pricing">Pricing</a></li>
  81. <li><a href="#member-acquisition">Member Acquisition </a></li>
  82. <li><a href="#technical-gobbledygook">Technical Gobbledygook</a></li>
  83. <li><a href="#conclusions">Conclusions</a></li>
  84. </ul>
  85. </div>
  86. <hr />
  87. <h3 id="why-start-a-membership-program">Why start a membership program?</h3>
  88. <p><img src="https://craigmod.com/membership/img/explorers_club_2020-header.jpg" alt="ec_2020" style="margin-top: 1em;" /></p>
  89. <p>I started the <a href="https://craigmod.com/membership"><em>Explorers Club</em></a> out of a desire for greater creative autonomy.<sup class="footnote-ref" id="fnref:testing"><a href="#fn:testing">1</a></sup> I wanted to go deep on: the <a href="https://craigmod.com/ridgeline/009/">literature</a> and <a href="https://craigmod.com/ridgeline/049/">phenomenology</a> of walking, the <a href="https://craigmod.com/ridgeline/055/">anthropology and cultural geography</a> of old pilgrimage routes in Japan, Shinto and Buddhist syncretic histories, <a href="https://craigmod.com/essays/sms_publishing/">publishing experiments</a>, digital tool-building, <a href="https://craigmod.com/essays/media_accounting/">our relationship with technology</a>, et cetera, without the need for a &ldquo;gatekeeper&rdquo; to grant permission. In truth, I had spent a big chunk of 2018 pitching magazines and largely failing to publish around those topics. I was frustrated.</p>
  90. <p>And yet! I had been <a href="https://craigmod.com/essays/">publishing</a> essays, articles, and newsletters for over a decade, building up a not-inconsiderable base of readers. I thought a membership program might help to do two things:</p>
  91. <ol>
  92. <li>Formalize my relationship with some of my most fervent readers, and</li>
  93. <li>Give me an even more robust and sustainable publishing platform.</li>
  94. </ol>
  95. <p>It worked.</p>
  96. <hr />
  97. <p>Even though I had a built-in base of supporters, I didn&rsquo;t start the <em>Explorers Club</em> lightheartedly.<sup class="footnote-ref" id="fnref:conversion"><a href="#fn:conversion">2</a></sup> I gave extended thought to going in-house at a publication. I flew to New York, met with editors. I spent close to two months deliberating if a membership program really was the best way to achieve my goals as a writer, photographer, and technologist. I planned out what a membership year could look like, built assets, tested software, arranged dozens of coffee meetings in person and on skype with friends (thank you patient friends) to solicit feedback (strategic and pragmatic) in trying to figure out how to frame my value to my audience.</p>
  98. <p>In the end, my conclusion was that given my existing audience and the clear set of topics that I wanted to investigate, I would be remiss to <em>not</em> try and go the membership route. Worst case scenario: Nobody joins and I close up shop, tail between my legs.</p>
  99. <hr />
  100. <h3 id="finances">Finances</h3>
  101. <p>As of year one, I am sad to report: I cannot yet retire or purchase a yacht. I am delighted, however, to report that the <em>Explorers Club</em> covers my base costs of living. I live fairly simply so these costs are perhaps lower than yours. That said, I don’t live like a hermit, have a comfortable studio / home, big enough to frequently host other artists and writers, and like to cook with fancy butter.</p>
  102. <p>For the first year of a membership program, having costs of living (food, rent, membership-related travel expenses (hotels, trains) and equipment (hiking gear, recording equipment, et cetera)) covered feels like a huge milestone. And if growth continues as it has these past six months, then by year three the program should essentially allow me to work in perpetuity on whatever I want without fear of &ldquo;market viability” or the need to take on the occasional non-membership-related consulting project. This is the ultimate goal, and aligns with Kevin Kelly’s <a href="https://kk.org/thetechnium/1000-true-fans/">oft-referenced</a> &ldquo;1000 true fans&rdquo; theory of creator independence.</p>
  103. <hr />
  104. <h3 id="launching">Launching</h3>
  105. <p>Although year one was good, it wasn’t as great as it could have been. I believe there are a number of ways in which I could have more smartly launched the <em>Explorers Club</em>.</p>
  106. <p>By far, my biggest screw-up was launching the <a href="https://craigmod.com/ridgeline/"><em>Ridgeline</em></a> newsletter weeks <em>before</em> the membership program. I should have launched it in tandem with memberships.</p>
  107. <p>A few weeks after I launched my program, <a href="https://twitter.com/tcarmody">Tim Carmody</a> launched his <a href="https://twitter.com/amazonchron"><em>Amazon Chronicles</em></a> newsletter, and included a <em>very</em> smart feature: If he crested a certain number of paid subscribers, the newsletter was “unlocked” for all readers. He called it <a href="https://www.niemanlab.org/2019/01/unlocking-the-commons/">“unlocking the commons.”</a> Tim’s a genius. I only wish he had been smart enough to launch before me so I could have copied him. ;)</p>
  108. <p>Because: The <em>Ridgeline</em> newsletter proved to be far more popular than I expected. I had thousands of signups in the first day alone. I suspect if I had made it a paid benefit of the membership program, and if I had set an “unlock” number, we would have hit that number quickly. As is also the case with <a href="https://craigmod.com/journal/kickstartup/">Kickstarter projects</a>, would-be paying supporters are motivated by goals (“stretch goals!!”), and goals that benefit all are (I think?) extra enticing. The tandem launch would have also “focused” the membership program — <em>Ridgeline</em> could have been a banner benefit. I suspect it would have boosted launch signups, and unlocked itself in the process effectively allowing for simultaneous cake having and eating.</p>
  109. <p>This highlights a specific case of a more general problem I was wrestling with: For years I had been producing a lot of “free content,” and wanted to keep doing that, but to do it with more focus and the rigor of a full-time job. I didn’t want to artificially throw a bunch of my work behind a paywall and say: OK, now pay me. The reasons for keeping the bulk of my work free were philosophically and morally grounded. I believe (however Pollyannaish the thought may be) in the base-ethos of the web as a platform for information <a href="https://en.wikipedia.org/wiki/Intertwingularity">“intertwingularity”</a> and as an academic space for sharing ideas. I’ve benefited from countless freely-shared online essays. And I wanted to (and want to) pay back into that system.</p>
  110. <p>So the thrust of my membership pitch was something like:</p>
  111. <blockquote>
  112. <p>Consider this program a mini-NPR. And consider your membership a way of saying: <em>Craig, ya weird bird, I wanna see more of your work in the world.</em></p>
  113. </blockquote>
  114. <p>Which is fine, but perhaps unrefined, as a pitch. Folks want something for a buck beyond feeling good. This is, undoubtably, why NPR has so many <a href="https://www.theatlantic.com/business/archive/2015/04/how-npr-tote-bags-became-a-thing/390657/">tote bag giveaways</a> — the number of folks (and average donation) rises significantly thanks to a sweet tote.</p>
  115. <p>Still! I didn’t give away nothing. In becoming a member you got some smartphone wallpapers, PDFs of my books, and discount codes to buy physical copies. But, really, you had to be a super fan to even find that on the membership page.</p>
  116. <!--Most of all, what I lacked in my launch was confidence. I didn’t know if I could produce or deliver on my promises. I felt sheepish about asking for money for stuff I had been doing for free for years. It felt lame and in some ways made me feel like a failure. And yet: These were all self-created demons. (I’m being a tad overly-honest here because I think it may be useful for pattern matching among you readers out there looking to start your own membership programs.)-->
  117. <hr />
  118. <p><img src="https://craigmod.com/essays/images/membership_programs/2020_landing.png" alt="Explorers Club landing page, 2020" /></p>
  119. <p>I recently relaunched for year two, and while the pitch is still far from perfect, I think I learned from some of my mistakes. The membership page is much clearer and the first screen immediately answers three critical questions:</p>
  120. <ol>
  121. <li>What is being made?</li>
  122. <li>What do members get?</li>
  123. <li>How do you become a member?</li>
  124. </ol>
  125. <p>The rest of the page is dedicated to digging more deeply into #1 and #2.</p>
  126. <hr />
  127. <p>Most important to note here is the confidence. This is a far more confident page than my original launch page. Largely free from any weird verbal hedging. And the reason for this confidence was 2019 itself — the vast treasure of things I was able to produce thanks to the membership program. All of my sheepishness has been sanded away, replaced with: <strong>Good lord, membership programs can be <em>EXCELLENT</em> and in fact, this is what the <em>Explorers Club</em> produced. Let’s keep this going! </strong></p>
  128. <p>I can now also offer genuinely “exclusive” content to members. I have a year of <em>Inside Explorers</em> members-only newsletters, and have started to produce “Pop-Up” walks. By joining you get immediate access to these archives. How do I square this members-only content with my above free-for-all philosophy? Non-members get a Pop-Up Walk highlights reel, and any ideas worth exploring exclusive to the membership program make their way into my free newsletters. Members essentially get extra-beta access to upcoming essays.</p>
  129. <hr />
  130. <p>The members-only content also has a (password protected) home on my website, making it easier for members to see what they have access to:</p>
  131. <p><img src="https://craigmod.com/essays/images/membership_programs/members-only1.png" class="sixcol" />
  132. <img src="https://craigmod.com/essays/images/membership_programs/members-only2.png" class="sixcol last" style="margin-bottom: 1em;" /></p>
  133. <p>This includes:</p>
  134. <ul>
  135. <li>Discount codes on books</li>
  136. <li>PDF downloads</li>
  137. <li>12 walking-in-Japan phone wallpapers</li>
  138. <li>Archives of members-only newsletters</li>
  139. <li>Archives of full-length Pop-up Walk videos</li>
  140. <li>Access to the <a href="https://craigmod.com/essays/sms_publishing/">SMS Project</a> archive</li>
  141. </ul>
  142. <hr />
  143. <p>In 2019 members have gotten tickets to sold out talks, early access to retreats I&rsquo;ve co-run, and in January 2020 I gave away two tickets (~$300/each) to members to a sold-out conference in San Francisco.</p>
  144. <p>Starting this year I&rsquo;m launching &ldquo;office hours,&rdquo; both local and virtual. Slowly but surely I&rsquo;m finding ways that align with my own creative impulses (as opposed to &ldquo;membership busywork&rdquo;) to generate more and more value for members.</p>
  145. <hr />
  146. <h3 id="pricing">Pricing</h3>
  147. <p>I find simplicity is critical.<sup class="footnote-ref" id="fnref:tiers"><a href="#fn:tiers">3</a></sup> Assume every additional option you add to your program will at least double the amount of work on your end (in updating pages, updating perks, providing refunds, helping people &ldquo;upgrade&rdquo; or &ldquo;downgrade&rdquo;, et cetera). I believe member tiers — much like on <a href="https://craigmod.com/journal/kickstartup/">Kickstarter</a> — quickly become overly complex. The only option I offer for the <em>Explorers Club</em> is frequency of payment — monthly, yearly, or lifetime. Everyone gets the same stuff. (Essentially, folks are voting on how long they think I can keep doing this.)</p>
  148. <hr />
  149. <p>I like my pricing model. $10/mo or $100/yr feels about right. $10/mo might seem like a lot, but I’d rather try and stretch to “provide that value” than lower the cost of the tiers.</p>
  150. <p>It goes unspoken, but <em>Explorers Club</em> members get priority in my inbox. This is somewhat inevitable. Even exchanging just $1 changes the nature of a relationship. So I’d rather sell that priority for a price that feels commensurate to my time — which is (I hope!) worth a lot more than a couple bucks a month.</p>
  151. <p>Related: Each time someone joins the program I respond with a simple thank you letter. I’ve never had anyone, ever, send me a personalized “thank you for joining” letter for any of the other membership programs I’ve joined. This seems bonkers. It takes all of 5 seconds to send the “thank you” and immediately increases the intimacy of the membership-relationship. 99% of the time the response to my thank you is, “Thank <em>you</em>!! I’ve been a fan since PROJECT-X or BOOK-Y.” It feels great to get that response and gives me (valuable) context around who is becoming a member.</p>
  152. <hr />
  153. <p>I added the $1000/Lifetime tier as a lark. I should have made it more expensive. The very first member to join was a Lifetime member. I’ve had roughly a billion billion more Lifetime members join than I expected. I still haven’t done anything specifically for these lifetimers,<sup class="footnote-ref" id="fnref:lifetimers"><a href="#fn:lifetimers">4</a></sup> but I intend to offer some gifts and special deals later this year.</p>
  154. <p>The biggest surprise of Lifetimers is how much of a psychological boost they provide. Often, they’re people I deeply respect, have a tremendous fondness for, and yet! to whom I have no personal connection. A one-two shock. One: Wow, <em>you</em> know my work? and Two: You like it enough to throw me a thousand bucks?</p>
  155. <hr />
  156. <p>The biggest push-back I had on launching the program was from people for whom $10/mo was too much. $10USD is a weird number — an absolute nothing for some people, and the difference between paying or missing rent or a meal for others. The most angry or upset or sad emails were from super-fans who wanted to join but couldn&rsquo;t afford to do so. It broke their heart (and mine). I have tried to hammer home that the bulk of the membership program is to support work that is free and available to non-members. And that simply being a reader and sharing my work is an <em>exceedingly valuable</em> form of support.</p>
  157. <p>I don&rsquo;t have a good solution to this issue — but because so much of what I produce is not behind a paywall, I don&rsquo;t think I need one. Other membership programs — like <em>Stratechery</em> and <em>The New Consumer</em> — have gotten around this by publishing one free article each week.</p>
  158. <p>For a limited time I had a $3/mo tier that was in part for folks for whom $10 was too much, and also for students. It had slightly different perks, and ultimately I found it created too much complexity. I&rsquo;ve since stopped offering the tier. I’d rather have fewer members paying in at a higher rate than more paying less.</p>
  159. <p>As for students,<sup class="footnote-ref" id="fnref:students"><a href="#fn:students">5</a></sup> I now offer a free tier. They just have to email me to be added: <a href="mailto:explorers@craigmod.com">explorers@craigmod.com</a>.</p>
  160. <hr />
  161. <p>To conclude on pricing, let me just reiterate a point that may have been lost above: I believe it&rsquo;s better to charge more and figure out how to &ldquo;reach&rdquo; that value than to charge less. Considering the amount of work a membership program requires, I&rsquo;d strongly reconsider launching with anything less than $10/mo or $100/year. And depending on your audience, I believe you can charge significantly more. Don&rsquo;t undervalue yourself. (Also: It&rsquo;s always easier to lower prices later.)</p>
  162. <hr />
  163. <h3 id="member-acquisition">Member Acquisition</h3>
  164. <p>Over the course of the first year I had three main member &ldquo;acquisition moments.&rdquo;</p>
  165. <p>The first was during launch week, which by far and away produced the most number of new members. Sadly, you only get to launch once. That said, I consider last year a &ldquo;soft&rdquo; launch and am attempting a &ldquo;hard&rdquo; launch in February 2020 with this very essay.</p>
  166. <p>It took me a year to figure things out and I only now feel confident in providing $100/year in value to my members. So I&rsquo;ll be blasting links to this essay and my <a href="https://craigmod.com/membership/">membership page</a> from the rooftops. We&rsquo;ll see how it goes. I&rsquo;ll report back next year.</p>
  167. <hr />
  168. <p><img src="https://craigmod.com/essays/images/membership_programs/shutup.png" /></p>
  169. <p>The second large acquisition moment was when I ran a <a href="https://craigmod.com/roden/024/#explorers-club-members">&ldquo;Core 300&rdquo;</a> campaign in February to get us over the 300 member mark. I made a graph on the membership page to show real-time progress, and ran an <a href="https://craigmod.com/roden/025/#a-b-empathy-membershipping">A/B &ldquo;empathy&rdquo; test</a> to see what kind of target phraseology would generate the most conversions.</p>
  170. <p>The variants were: &ldquo;Core Explorers,&rdquo; &ldquo;Holy Shit 300,&rdquo; and &ldquo;Please Shut Up Craig 300.&rdquo; The winner at 8% conversion was &ldquo;Please Shut Up&rdquo; which speaks to the power of … uhm … self-deprecation?</p>
  171. <hr />
  172. <p>The third big bump came in October. I asked members what they wanted more of. The overwhelming response: More behind-the-scenes stuff. From that came the idea for <a href="https://craigmod.com/ridgeline/047/">Pop-Up Walk 001</a>, which I was able to announce to my newsletters as a members-only experience. This spontaneous campaign accounted for 15% of all subscribers last year. Mainly, it speaks to the power of tying a direct benefit / boost to becoming a member.</p>
  173. <p>But more importantly it pushed me to explore doing something like a &ldquo;Pop-Up Walk&rdquo; — which itself was, as <a href="https://craigmod.com/ridgeline/050/">I wrote later</a>, a &ldquo;revelation:&rdquo;</p>
  174. <blockquote>
  175. <p>The whole experience was a bit of a revelation. We took over a secret Instagram account, and used the Stories feature as a a semi-realtime distribution vector. It worked pretty well, aside from the fact we butted against the 100 story limit (and therefore most folks didn’t get to see the whole walk). This is why I ended up throwing the entire day of videos (2hrs+) up on a secret YouTube URL — so folks could catch what they missed.</p>
  176. <p>I keep writing “we” above because it felt like that — like a we. There were backchannel DM conversations going on with a few dozen folks. It felt like there was an intimate crew alongside me as I walked through the countryside and up and down the mountains. I really enjoyed it and the morning after Pop-Up 001, the first few hours felt a little strange, a little thin, a little lonely. The impulse was to narrate — to share what I was seeing and the beauty and weirdness past which I was walking. But then I realized this is what apps like Instagram train us to do — to be “on,” constantly. To always be on the lookout for something to broadcast. And after a few hours, I felt and good and comfortable back inside my head, all alone.</p>
  177. </blockquote>
  178. <p>Which speaks to one of the best ancillary benefits of running a membership program — in figuring out ways to add value for members (and thereby induce so-called &ldquo;acquisition moments&rdquo;), you uncover new modes of production and creativity for yourself.</p>
  179. <hr />
  180. <h3 id="technical-gobbledygook">Technical Gobbledygook</h3>
  181. <p>I am (<a href="https://craigmod.com/essays/fast_software/">not so</a>?) secretly a mega geek, and have spent most of my life from age eight onwards living in some variant of unix-like command line dorkery. So — caveats! My choices are probably not the best choices for you. Still, in the spirit of sharing and learning, here are the technical underpinnings of the <em>Explorers Club</em>.</p>
  182. <hr />
  183. <p><img src="https://craigmod.com/essays/images/membership_programs/technical.png" /></p>
  184. <p>I run my own website using the <a href="https://gohugo.io/">Hugo</a> static-site generation tool. It’s hosted on a <a href="https://m.do.co/c/3917158b4140">Digital Ocean</a> VPS (if you sign up with that link you get $100 in free credit (and I get a sweet $25, too)). I use <a href="https://memberful.com/">Memberful</a> as my membership program backend. I like Memberful because it’s minimal and allows me to control the look and feel of much of the program on my site. <a href="https://kottke.org/members/"><em>Kottke</em></a>, <a href="https://stratechery.com/membership/"><em>Stratechery</em></a>, <a href="https://newconsumer.com/"><em>The New Consumer</em></a>, and other membership program poster-children also use Memberful.</p>
  185. <p>Memberful is owned by Patreon. I didn’t launch on Patreon because I didn’t see the need for any of Patreon’s additional features, and didn’t like having to send readers / would-be members to a URL I didn’t “own.”</p>
  186. <p>Memberful plugs into <a href="https://www.campaignmonitor.com/">Campaign Monitor</a>, my email / newsletter provider. Memberful automatically adds and removes members from members-only Campaign Monitor newsletters as folks sign up, upgrade, or cancel their memberships. (MailChimp has similar integration.) Inside of Campaign Monitor I setup welcome email logic called “Automated Journeys” and use Campaign Monitor for all email / newsletter related correspondence.</p>
  187. <p>Memberful is plugged into <a href="https://stripe.com/">Stripe</a> for handling payments and payouts. Stripe pays out to an <em>Explorers Club</em> bank account every few days. My bank account is automated to split the payments into &ldquo;Explorers savings&rdquo; (for funding research), checking (for covering rent, et cetera), and retirement accounts (~5%, for always building on the habit of long-term savings, however small) so I feel confident all of the money that arrives via the membership program is being put to clear, well-defined, and easily traceable uses.</p>
  188. <hr />
  189. <p>If your only intent is to run a single (1) paid newsletter, then this stack could be drastically simplified by using a tool like <a href="https://buttondown.email/">Buttondown</a> or <a href="http://substack.com/">Substack</a>, both of which offer free / paid subscription functionality.</p>
  190. <p>Again, I prefer the flexibility of my setup: I run three distinct newsletters via Campaign Monitor and can send to various tiers of the membership base as needed. By running my own website I have total control over design and speed. I think my website is pretty fast and work to make it faster over time. I like being able to publish essays on my own domain, use it as an archive for published-elsewhere essays, and create media-specific versions of pages for things like photo galleries or books.</p>
  191. <hr />
  192. <p>Another option appeared in the middle of 2019 — <a href="https://ghost.org/members/">Ghost</a>. It&rsquo;s an intriguing option, and not only is the pricing model reasonable, but the <a href="https://ghost.org/about/">company ethos is admirable</a>. Open source, focused on sustainability. If I were starting from scratch today, I&rsquo;d strongly consider running my membership program and newsletters on Ghost. <em>Stratechery</em> published a worthwhile and <a href="https://stratechery.com/2019/ghost-3-0-an-interview-with-ghost-ceo-john-onolan/">extensive interview</a> with CEO John O&rsquo;Nolan.</p>
  193. <hr />
  194. <p>Still: The cost of running all of this is not inconsiderable!</p>
  195. <p>As of February 2020, here are my base costs:</p>
  196. <table>
  197. <thead>
  198. <tr>
  199. <td scope="col">Service</td>
  200. <td scope="col">Cost/mo</td>
  201. <td scope="col">Notes</td>
  202. </tr>
  203. </thead>
  204. <tbody>
  205. <tr>
  206. <td><a href="https://m.do.co/c/3917158b4140">Digital Ocean Server</a></td>
  207. <td class="cost">$36.00</td>
  208. <td>Hosting for craigmod.com, walkkumano.com, etc</td>
  209. </tr>
  210. <tr>
  211. <td><a href="https://cloudflare.com">Cloudflare</a></td>
  212. <td class="cost">$25.25</td>
  213. <td>Domain caching, protection, CDN</td>
  214. </tr>
  215. <tr>
  216. <td><a href="https://memberful.com">Memberful</a></td>
  217. <td class="cost">$25.00</td>
  218. <td>Managing memberships themselves (tiers, signups)</td>
  219. </tr>
  220. <tr>
  221. <td><a href="https://campaignmonitor.com">Campaign Monitor</a></td>
  222. <td class="cost">$200.00</td>
  223. <td>Running <em>Ridgeline</em> / <em>Roden</em> / <em>Explorers Club</em> newsletters</td>
  224. </tr>
  225. <tr>
  226. <td><a href="https://www.mailmunch.com/">Mailmunch</a></td>
  227. <td class="cost">$12.00</td>
  228. <td>Newsletter acquisition helper</td>
  229. </tr>
  230. <tr>
  231. <td>Quicken</td>
  232. <td class="cost">$5.00</td>
  233. <td>Accounting Software</td>
  234. </tr>
  235. <tr>
  236. <td><a href="https://libsyn.com/">Libsyn Podcast Hosting</a></td>
  237. <td class="cost">$17.00</td>
  238. <td><em>On Margins</em> hosting / publishing</td>
  239. </tr>
  240. <tr>
  241. <td><a href="https://gumroad.com/">Gumroad</a></td>
  242. <td class="cost">$10.00</td>
  243. <td>Selling books / digital goods / hosting membership perks</td>
  244. </tr>
  245. <tr>
  246. <td>Google Apps</td>
  247. <td class="cost">$6.38</td>
  248. <td>craigmod.com email</td>
  249. </tr>
  250. </tbody>
  251. </table>
  252. <p>Which is about $340/mo, or $4000/year in recurring costs.</p>
  253. <p>Memberful charges 4.9% per transaction. Stripe charges an additional 2.9% (+$0.30) credit card processing fee. Together, this represents an additional running cost of 7.8% of all membership sales.</p>
  254. <p>Gumroad charges a very reasonable 3.5% (+$0.30) for each sale (I sell <a href="https://shop.craigmod.com/">my books</a> on it) on its platform. This price includes CC processing.</p>
  255. <hr />
  256. <p>Because I have over 15,000 subscribers on my newsletters, the largest recurring monthly cost is Campaign Monitor (the cost would be similar on MailChimp). There are <a href="https://www.phplist.org/">geekier</a> (and thereby more complex, finicky) but less expensive ways to run newsletters for this many subscribers, but I find using a service like Campaign Monitor is worth the cost for several reasons:</p>
  257. <ol>
  258. <li>Increased deliverability (less chance of ending up in spam) since they’re a trusted sender</li>
  259. <li>Direct integration with Memberful</li>
  260. <li>Powerful “journeys” that allow for automation</li>
  261. <li>Simplicity of interface / it just works</li>
  262. </ol>
  263. <p>Used well to promote my events / workshops / books, those newsletters easily recoup the cost of Campaign Monitor’s fees. As an author/photographer, the newsletters are by far my most valuable asset. If I could only keep one thing in the whole stack it would be the newsletters. They’re that powerful. They were my superpower in starting the membership program. The membership program is like a hyper-distillation of the newsletters — a collection of mega fans, the newsletter base annealed.</p>
  264. <p>So while $200/mo may seem high, it’s actually quite reasonable in perspective. Especially so considering Campaign Monitor isn’t reading my emails, isn’t selling my subscriber information, isn’t performing some dark-pattern of business model judo, swapping an easily understandable <a href="https://craigmod.com/essays/media_accounting/">contract</a> for something opaque and morally dubious. So I’m happy to pay for a service from an easy-to-understand business. Paying fairly for something is, as they say, why we can have nice things in the world.</p>
  265. <hr />
  266. <p><img src="https://craigmod.com/membership/img/walking_2020-2.jpg" /></p>
  267. <h3 id="conclusion">Conclusion</h3>
  268. <p>Fifteen months ago I didn&rsquo;t know if running a membership program would crush my soul, burden me into the ground, and drain my finances. I didn&rsquo;t know if my readers would go screaming into the night, come back with pitchforks, stab me, drink my blood, become stronger in my new absence. I certainly didn&rsquo;t know if I&rsquo;d finish 2019 with anything I was proud of.</p>
  269. <p>It turns out: Starting the <em>Explorers Club</em> was a fine idea. <a href="https://craigmod.com/membership/#2019">The list of what the membership program enabled</a> is impressive. I am in awe of what was produced and the support of my readers. And I&rsquo;m energized and excited about what we&rsquo;re going to do in 2020.</p>
  270. <p>Churn rate for the <em>Explorers Club</em> has held at less than 5% for the first year. I take that as a sign that the perception of what members thought they would get and what they&rsquo;re actually getting is aligned. I had one person ask for a refund, but it was clear they had completely misunderstood what they had purchased. I assume they were drunk.</p>
  271. <p>I am <em>tremendously</em> grateful to everyone who has joined. I realize not everyone can afford to join, and I realize we’re all a bit bombarded by “memberships” and “subscriptions” these days. But ultimately — this is a good thing! A scant ten years ago this ecosystem barely existed. Now it’s ever-more normalized. This feels healthy. Directly supporting writers, artists, musicians, software developers, et cetera, feels like the final remaining puzzle piece of the last 30 years of independent creation. Computers democratized design in the ’80s/’90s, the web democratized publishing in the ’00s, and now proper payments infrastructure is democratizing creative sustainability.</p>
  272. <hr />
  273. <p>So, after all <em>that</em>, if you&rsquo;re still intent on starting a membership program, here are my final tips:</p>
  274. <ol>
  275. <li>Start writing / making videos / producing what it is you intend to produce for members today, build up that muscle, and do it, ideally, for years before launching the program</li>
  276. <li>Have clear goals<sup class="footnote-ref" id="fnref:goals"><a href="#fn:goals">6</a></sup> — writing targets, publishing targets, et cetera — that you can articulate to yourself</li>
  277. <li>Exhaust / investigate other possible ways to achieve those goals</li>
  278. <li>Spend a month or two iterating on your plan before launching</li>
  279. <li>Be willing to commit for (at least) a full year, since it seems that a year of work is required to build momentum and finally understand what you and the program are capable of</li>
  280. </ol>
  281. <p>Good luck! And if you have any questions, email <a href="mailto:me@craigmod.com">me@craigmod.com</a>. Oh, and, you know, please consider joining the <a href="https://craigmod.com/membership/"><em>Explorers Club</em></a>. Thanks.</p>
  282. <p>— <a href="https://craigmod.com/about">Craig</a></p>
  283. <p><span class="tiny">p.s., I did a little <a href="https://craigmod.com/roden/035/#membership-questions">Q&amp;A with my mailing list</a> about running this program, in case the above 5,000 words aren&rsquo;t enough.</span></p>
  284. <hr />
  285. <h3 id="noted">Noted:</h3>
  286. <div class="footnotes">
  287. <hr />
  288. <ol>
  289. <li id="fn:testing">I also think it&rsquo;s a fascinating time to be involved with independent publishing on the web. As more stuff gets shoved into silos, and less content is built on open platforms, a little bit of the founding spirit of this place is lost. I wrote a piece for <a href="https://www.wired.com/story/future-book-is-here-but-not-what-we-expected/">WIRED</a> at the end of 2018 about the state of publishing. In it, I wrote about membership programs. This got me thinking: How tricky is it, really, to run one? The best way to understand an ecosystem is to fully immerse yourself within its gnarled tendrils. So that, too, was part of the impulse: To better understand the tools available to run a program like this, to be able to write about them like I am here.
  290. <a class="footnote-return" href="#fnref:testing">↩︎</a></li>
  291. <li id="fn:conversion">An audience is often (but not always!) a prerequisite for the success of these things. But “an audience” is often a proxy for you having &ldquo;done the work.&rdquo; Which is to say, I do not recommend starting a membership program unless you’ve already spent years doing what you plan on doing for the program. If you’ve done that, and have been smart about regularly reaching out to others in your community, then you should, in theory, have (at the very least!) the seed of an audience. So, in a way it’s a non-issue: If you haven&rsquo;t been working to build an audience, then you’re probably not ready to launch a membership program. <!--And in fact, conversion rates were lower than anticipated (way under 10%), in part because of reasons as enumerated in the above essay (i.e., never talking about it on Twitter or Instagram). So simply having an audience of x-thousand fans does not always mean quick bucks. I don't just feel — I know — I've worked harder for each *Explorers Club* dollar than any other dollar I've earned in my life. But, as I explain above, the financial component is only one of many benefits of running a membership program. -->
  292. <a class="footnote-return" href="#fnref:conversion">↩︎</a></li>
  293. <li id="fn:tiers">Both from the perspective of potential members, and sanity-of-creator point of view. The more tiers you make, and the more unique their offerings, the more you have to think about how to slice up what you&rsquo;re doing for each tier.
  294. <a class="footnote-return" href="#fnref:tiers">↩︎</a></li>
  295. <li id="fn:lifetimers">I suspect lifetimers might even be &ldquo;upset&rdquo; if I did anything specifically for them since the thrust of their support is: This is good, this is right, keep going. Not: Gimme special perks. This only makes their support all the more powerful.
  296. <a class="footnote-return" href="#fnref:lifetimers">↩︎</a></li>
  297. <li id="fn:students">This is such a weird distinction, I know, the &ldquo;student&rdquo; discount. Why students? Who is a student? What constitutes student? Aren&rsquo;t we all students? Why not an &ldquo;unemployed&rdquo; discount? I don&rsquo;t know! But what I do know is I like this idea: A period of time in life where you don&rsquo;t (usually) have a lot of excess cash, and your mind is fertile and fresh and open to new ideas, and you have some time to <em>think</em> about who and what you want to be in the world. And, really, what kind of world you want to live in. You&rsquo;ve yet to make any real &ldquo;binding decisions&rdquo; that otherwise burden folks in their late 20s and 30s and beyond. In an ideal scenario, this period tends to fall during college / university, early 20s, before you enter into or push back against the workforce. I think if you want to have an impact on the next generation and their sense of optionality, opportunities, and positive archetypes, then offering them an inside glimpse into creative processes and &ldquo;non-standard&rdquo; ways of investigating the world is critical, and in some ways maybe even a moral duty. When I was 20, I wish I had had better access to what I know now. It would have made me feel a hell of a lot less lonely and crazy. So, I suppose my free student tier is my ham-handed attempt to pay that forward.
  298. <a class="footnote-return" href="#fnref:students">↩︎</a></li>
  299. <li id="fn:goals">Goals are different than deliverables, though they may be connected. Even though my personal goals were clear, my ability to deliver on them wasn&rsquo;t (in my mind, at least). Hence the trepidation at launch, the lack of confidence in pushing the program out into the world.
  300. <a class="footnote-return" href="#fnref:goals">↩︎</a></li>
  301. </ol>
  302. </div>
  303. </main>
  304. </article>
  305. <hr>
  306. <footer>
  307. <p>
  308. <a href="/david/" title="Aller à l’accueil">🏠</a> •
  309. <a href="/david/log/" title="Accès au flux RSS">🤖</a> •
  310. <a href="http://larlet.com" title="Go to my English profile" data-instant>🇨🇦</a> •
  311. <a href="mailto:david%40larlet.fr" title="Envoyer un courriel">📮</a> •
  312. <abbr title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340">🧚</abbr>
  313. </p>
  314. <template id="theme-selector">
  315. <form>
  316. <fieldset>
  317. <legend>Thème</legend>
  318. <label>
  319. <input type="radio" value="auto" name="chosen-color-scheme" checked> Auto
  320. </label>
  321. <label>
  322. <input type="radio" value="dark" name="chosen-color-scheme"> Foncé
  323. </label>
  324. <label>
  325. <input type="radio" value="light" name="chosen-color-scheme"> Clair
  326. </label>
  327. </fieldset>
  328. </form>
  329. </template>
  330. </footer>
  331. <script type="text/javascript">
  332. function loadThemeForm(templateName) {
  333. const themeSelectorTemplate = document.querySelector(templateName)
  334. const form = themeSelectorTemplate.content.firstElementChild
  335. themeSelectorTemplate.replaceWith(form)
  336. form.addEventListener('change', (e) => {
  337. const chosenColorScheme = e.target.value
  338. localStorage.setItem('theme', chosenColorScheme)
  339. toggleTheme(chosenColorScheme)
  340. })
  341. const selectedTheme = localStorage.getItem('theme')
  342. if (selectedTheme && selectedTheme !== 'undefined') {
  343. form.querySelector(`[value="${selectedTheme}"]`).checked = true
  344. }
  345. }
  346. const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
  347. window.addEventListener('load', () => {
  348. let hasDarkRules = false
  349. for (const styleSheet of Array.from(document.styleSheets)) {
  350. let mediaRules = []
  351. for (const cssRule of styleSheet.cssRules) {
  352. if (cssRule.type !== CSSRule.MEDIA_RULE) {
  353. continue
  354. }
  355. // WARNING: Safari does not have/supports `conditionText`.
  356. if (cssRule.conditionText) {
  357. if (cssRule.conditionText !== prefersColorSchemeDark) {
  358. continue
  359. }
  360. } else {
  361. if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
  362. continue
  363. }
  364. }
  365. mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
  366. }
  367. // WARNING: do not try to insert a Rule to a styleSheet you are
  368. // currently iterating on, otherwise the browser will be stuck
  369. // in a infinite loop…
  370. for (const mediaRule of mediaRules) {
  371. styleSheet.insertRule(mediaRule.cssText)
  372. hasDarkRules = true
  373. }
  374. }
  375. if (hasDarkRules) {
  376. loadThemeForm('#theme-selector')
  377. }
  378. })
  379. </script>
  380. </body>
  381. </html>