Apollo’s developer on Reddit’s new API changes, and why users revolted
‘Reddit has plugged its ears and refuses to listen to anybody but themselves. And I think there’s some very minor concessions that they can make to make people a lot happier.’
Christian Selig did not mean to be the face of a revolution. All the Canadian developer wanted, really, was to be able to keep working on his app. But that app, a Reddit client called Apollo, has become the central figure in an all-out platform war.
The short version of a long history goes like this: in April, Reddit announced new terms for its API, the tool through which developers of third-party apps access Reddit’s data. Every time you post a comment, refresh a page, search for something, or take just about any other action in an app like Apollo, the app pings an API to get the data you need. Reddit’s API has been free for many years, leading to a flourishing community of third-party tools. But Reddit finally decided it was time to charge for access, both to recoup the costs of running the API and to help the company become more profitable ahead of its planned IPO.
The logic made sense to Selig; the price didn’t. Ultimately, he calculated he would have to pay Reddit $20 million a year just to keep Apollo running, which he couldn’t afford. Other developers building Reddit apps came to the same conclusion and said they would be forced to shut down.
Many users decided this wasn’t a fair business deal — this was a plot to crush third-party Reddit apps. So in response, Reddit users decided to push back. The battle reached its current peak when thousands of subreddits went dark on Monday, protesting Reddit’s new API policies and how they affected everything from app developers to the on-platform tools many users rely on. Reddit’s response? It’s just business. “We’ll continue to be profit-driven until profits arrive,” CEO Steve Huffman wrote during an AMA session over the weekend. “Unlike some of the [third-party] apps, we are not profitable.”
Those third-party apps are clients like Apollo, which Selig has built and run for the last nine years. He’s planning to shut the app down on June 30th, the day before Reddit’s new rules go into effect. But he’s still holding out hope. Hope that Reddit might change its mind or soften its stance, hope that the subreddit blackout might change things, hope that Huffman might pick up the phone and try to smooth things over.
In the midst of the platform blackout, we sat down with Selig to talk about what he wants from Reddit, why he still believes in the platform, and whether he sees a chance to keep Apollo alive beyond the end of the month.
The following has been edited for length and clarity. For the full conversation, listen to this Wednesday’s episode of The Vergecast above.
Nilay Patel: Do you get the sense that Reddit knows that Apollo users are power users of Reddit? This is something I think about with social networks all the time: their data blinds them to the reality of the platform. So you might say, okay, there’s only 2 million Apollo users; you just don’t know that they happen to be 2 million of the most important users on the platform or the most vocal or the most invested. And you piss them off with a decision like this. Did you ever get the sense they knew that Apollo was important to some users or that you were in the middle of the relationship that Reddit had with that group of users?
Honestly — and I say this with a lot of respect for Reddit — I feel like this was a decision that kind of got rushed out the door, and they didn’t do their due diligence on understanding that stuff. Because there’s a lot of stuff. Even just making a really big pricing announcement, but not having any pricing. There were a lot of discussions where they were like, “We’ll have it in two to four weeks.” And I was like, great. And then six weeks passed. And they were like, “Okay, now we have it.”
At the end of January — I want to say January 26th — I had another call with Reddit prior to all this where they were saying, “We have no plans to change the API, at least in 2023, maybe for years to come after that. And if we do, it’ll be improvements.” So then two months, three months later, for them to say, “Look, actually, scratch that, we’re planning to completely charge for the API, and it’s gonna be very expensive,” kind of made me think… what happened in those three months? This clearly wasn’t something that was cooking for a long time. And I don’t think they understood how much this would affect people and the response that they would get. Because they’re honest, they’re smart people. And I don’t think if they understood everything that they do now, they would have made the same steps. At least I would hope not.
David Pierce: So Reddit said, “We don’t want to kill third-party apps.” But we just went through this with the Twitter API, which pretty explicitly wanted to kill third-party apps, right? Do you buy that either at that moment or now, in hindsight, with two weeks of more conversations, do you think Reddit actually doesn’t want to kill third-party apps? Because it sure looks like it does.
I will be charitable and say at the outset, I honestly don’t think they did. Or maybe I’m very naive. Maybe they didn’t care about us at all, but they were like, “We know you’re important to a subset of users, and we know there’ll be a big blowback if we get rid of you, so we want to make some arrangement where we can keep you but you’re not a pain in the ass.” But I think as time went on, things like only giving us 30 days to make these monstrous changes, I think it started to muddy the waters. It’s like, well, if you don’t want us to die, why are you giving us such aggressive timelines? And why can’t you bump things out? Or listen to us? Why are you acting in this way?
I think to a certain extent, after some of the blowback from initial posts from developers being like, “This is gonna cost us a lot of money,” they almost went on the defensive internally and said, “These developers are entitled, and they just want a free lunch or something.” And I feel like it got very personal when it didn’t really need to. It was just like, this is gonna kill my business — can we have a path forward?
“I feel like it got very personal when it didn’t really need to. It was just like, this is gonna kill my business — can we have a path forward?”
NP: If they’d offered to buy the app from you, would you have sold it to them?
I guess it depends on the stage. I mean, I’m just some guy, so if the number was high enough, sure. Absolutely. At the stage where it was clear that they weren’t interested in having third-party apps around anymore, just because of the pricing and some of the API changes around explicit content or whatnot, if that was the point where they said like, “That being said, we would like to maybe work with your user base or take your user base and figure out a way to make them happy in the context of the official app and work with you and your app through an acquisition,” I honestly would have listened to that.
Prior to that, it would have had to have been a pretty good number, just because I love building Apollo and being so in touch with so many people through the community. It would have to be a big number, losing such a big part of your life and what you do every day. There’s an emotional penalty to losing that is hard to quantify with money, as superficial as that sounds.
DP: This brings me to my favorite segment of every Vergecast, “Let’s Do Some Math Together!” Because there’s been a lot of questions and a lot of debate about what it would look like to continue to run Apollo. One of the things Reddit has said is that the way that the API works, it should cost less than $1 per user per month. Your math said it would cost about $2.50 per user per month.
On average, yeah.
DP: And so there are a bunch of folks out there who are like, “Okay, just charge us $5 a month, give some of that money to Apple, keep the rest, give some to Reddit, everybody wins.” Others are like, “Okay, just make it subscription-only, so only people paying for the app can use the app.” And it does seem like you went to “I can’t afford this; I have to shut down the app” fairly quickly. I’m assuming you went through some of these other scenarios before you got there. Walk me through how you get from “I owe $20 million a year, I have a very popular app” to “I definitely can’t afford this. My only option is to close.”
It’s a two-faceted answer. So say, yeah, just charge $5. Bob’s your uncle, right? The issue there is that your average user uses about 345 requests per day per user. And then, if you extrapolate that over the month, it would cost about $2.50 to support them. The issue is that’s the average user. A free user uses like 200-something requests; an existing paid user is closer to 500. So for that existing paid user who naturally uses more, that’s closer to $3.60 per month in its current state. And if I just charged $5 to them, you take off Apple’s 30 percent or whatever and you’re down to $3.50, you’re already 10 cents in the red per user per month. So the calculus there is already pretty tricky.
That being said, if I had more than 30 days, there’s a possibility that I could go in and change some stuff. Like where I check your inbox every so often, where I preload a page for you that I think you might scroll to — I can kind of cut down on all those and maybe cut that 400 down to, I don’t know, 300 or 200. If I had more than 30 days. But even beyond that, approximately 5 percent of my users used between 1,000 and 2,000 API requests a day. At the low end, those would cost $7.50 a month. And you can imagine the users who use the app the most are kind of the most likely to pay for things. So they’d be the most obvious ones that would want to pay for the app. And when you’re looking at them costing $7.50 a month each, do I have like a $5 tier that hopefully covers most people, and then once you expire that, is it like a phone plan where I call you up and say, like, “Do you want to top off for the month?” That’s not fun.
So that’s one facet of it. Say I solve all that. The other issue is that with the very short notice of 30 days from when the pricing was announced to when we start incurring charges, I’ve got about 50,000 yearly subscribers who have already paid for a year of service [at roughly $1 / month]. That price was based on operating costs that I had for design services, server fees, a part-time server engineer. For $1 a month, I can make a profit on that. But [with the API changes], I’ve got like $1 or $2 extra monthly costs per user for those 50,000 people who have already prepaid. I can’t monetize them anymore. They’ve already paid.
So starting July 1st, those people will start incurring a bill of $50,000 a month for me that I have no way to monetize further because they’ve already prepaid. And that’s where the calculus got really difficult: Okay, I have a bill for $50,000. And then maybe the next month, some of the people who are close to expiring would expire, and it would go down to 11 months, maybe you’d only be $45,000. And then the next month would be $40,000. But you’re potentially looking at hundreds of thousands of dollars in bills I would get from Reddit for people that I couldn’t make a single more dollar off of because they already paid my old operating costs. And that’s where it got really tricky.
“You’re potentially looking at hundreds of thousands of dollars in bills I would get from Reddit for people that I couldn’t make a single more dollar off of.”
Everyone I talked to was kind of just like, “I don’t see how I would make this work.” And then when you add on the extra fact that Reddit’s saying these like bizarre things around threats and blackmail, and they won’t answer your emails anymore, it kind of becomes a thing: I can’t pay for this. How to make a profit out of it is very difficult, and Reddit seems like they have no intention of wanting to work with me or third-party apps anymore. It kind of becomes, like, what’s the future here?
And that was kind of where I landed on it. I was staying at an Airbnb with like seven other people for WWDC, and it was just talking with them over. That Wednesday night, I was just like, “I don’t see any other route out of this. It’s just gotten dire.” And that was when I started typing up my post and being like, “Yeah, this is kind of it.”
NP: Reddit can barely monetize its own users, right? They’re not making money. And the way they’ve chosen to monetize is mostly advertising, which is not exposed in your app. If Reddit had come to you and said, “Alright, you can use our API, we’ll lower the costs, but you’ve got to start serving our ads,” I don’t know how I would have felt about that, as somebody who has used Apollo. That’s pretty icky. Now I’m paying you for software, but I’m getting their ads.
Yeah, but that’s one of those things that I felt like if they did it, it would have shown a little bit more effort to include third-party apps insofar as they’d have to build kind of that integration. And yeah, it’s tricky because if that was a path to survive, I wouldn’t like it, either — I prefer not to have ads, and I don’t mind paying for an ad-free experience — but if that was the only way to survive going forward, like that’s something I also would have entertained. A revenue share, where you make X amount of money, they want half a bit off the top, that’s something that would have been fine. There were a lot of arrangements I think they could have gone with that just weren’t quite as… killer, for lack of a better term.
DP: What do you want from Reddit? What could have happened in that phone call on May 31st that you would have just hung up and been like, “Great, cool, perfect. Sounds good. Win-win, everybody. Let’s move forward”?
In an absolutely perfect world, Reddit would have said, “Okay, we’re also going to halve the price.” Because that would have taken like my $2.50 a user down to about $1.25 (a month). I charge new users $1.50. So it would have been something that, for my existing users, I can at least afford to keep like them around. They won’t put me in the red. That would have been great.
NP: So you’re now the symbol of a much larger thing that’s happening on Reddit, right? There was a post about Apollo shutting down. And that spiraled into an ongoing series of subreddit blackouts. There are other asks in the mix now, mostly around accessibility, which I think even Steve Huffman has said, “Yep, Reddit’s got to do a better job of this.” And then there’s a set of asks are Not Safe For Work content, which it feels like they don’t know that Apple has rules — Reddit can’t just put porn in the app in the way that maybe they’re being asked for. But you’re now one part of a series of asks from a pretty disparate group on Reddit. Do you think that if they fix the API pricing situation and Apollo got back on track, that that would soothe the community at large?
I think it would go a long way, honestly, to at least making them feel heard. Because in this whole saga, I don’t think I’ve seen Reddit offer to give an inch on any of the things.
NP: I would say Reddit’s political skills at operating its community are… negative.
Well, it’s weird because prior to this, I almost always understood that Reddit as a company understood that they’re very community-focused, and they kind of didn’t do the bullshit corporate speak. And it was weird to kind of see this week, where they engaged in a lot more of that than I have historically ever seen them do. And it just went over… about as well as I thought it would.
NP: I think that we are in an absolute moment of change for what you might call the Web 2.0 era. Have you thought about “I’m just going to take my users and go build a Reddit for ActivityPub”?
DP: Even more specifically, one thing a lot of users have been saying is, “We’re leaving Reddit; we’re gonna go to Lemmy and Kbin!” Those are the two that I keep hearing about. Is there a move that way that you think is real, that you might want to be part of?
It’s tricky because, to a certain extent, that does sound really interesting. But with Mastodon, for instance, I love it, but I’ve seen so many people — even in the tech community, who totally have the means to make that move if they want to — who have just been too intimidated or just can’t get off Twitter for some reason. In the back of my head, I’m like, if these people who are much smarter than me can’t make that change, is this just like a short-term thing?
“It’s hard for me to build another thing. If it just evaporated again, it would be like a double breakup.”
It’s hard for me to build another thing. If it just evaporated again, it would be like a double breakup. This has been so exhausting for the last few months. The amount of work it would take to port all the API endpoints over to Lemmy or Kbin or something, that would be a gargantuan amount of work that I’m not sure I have the capacity for. And then just the complexity of making it work. Long term, it’s a big question mark for me that, at this stage, I’m not sure I’m totally interested in pursuing. But it’s also one of those things where I completely wish it the best. And if something that was decentralized kind of became the norm, I think that would definitely be a win for everybody.
DP: So as it stands right now, you’re set to turn off the API token and basically shut down Apollo on June 30th. What percentage of you believes you will actually shut down on June 30th?
Oh, gosh, like 90 percent.
DP: So you’re fully prepared for this to happen.
I’ve talked to my reps at Apple to get the process started. As much as I would love to say this has been a big bluff… it was literally a matter of, like, Reddit hasn’t answered my emails in a while. Every public statement I’ve seen seems like the CEO is quite angry over this. They don’t seem to want to budge on the timeline at all. I don’t see how I can make this work.
I’ve loved building Apollo — even at the $3,500 that [Apple’s Vision Pro] costs, I was kind of excited for the opportunity to see what Reddit on that thing could look like. I was really excited for that. So it’s kind of hard for me to say, but at this stage, it’s just hard for me to see a path forward where they are reasonably willing to meet me even a quarter of the way here. It just seems like they’re, they’re so angry, for lack of a better term, that I kind of just feel like it’s better for me to be honest with myself rather than hold onto the hope until the last minute and then just completely fall apart.
But that 10 percent of me really hopes that I’ll be able to say, “I hopped on a call with Steve. We talked it out. There were some pleasantries exchanged about misunderstandings. We’re all good now, they’re giving us more time to adopt the API, and we’re sticking around.” I would love that. But it’s totally in Reddit’s court. I’m happy to talk whenever, but I just haven’t been able to reach them.
Source