Hacker News new | ask | show | jobs
by redmerchant2 1097 days ago
They buried the lede. The article suggests the shutdown was because of free API to paid API. Anyone uninformed who just click off at that point. Even when they ask about costs, it was just saying it’s “<$1 vs $2.50”.

But the issue is two fold. (1) all the devs support a paid API, but the rate is absurd according to basic math. It would charge devs over 20x what a user actually cost/were worth. Devs were willing to take on a higher cost (2-3x) but over 20x is impossible. (2) That basic math was very conservative. The actually multiplier is much higher if you look at the calculations. It’s wild but it seems Christian is even willing to accept a 10x bump (albeit with a higher subscription cost).

Not really mentioned was all this was changed out the blue with less than 30 days to comply. The interview touches on it but it’s insanity that a tech company think it’s reasonable for indie devs to operate under that constraint.

16 comments

Also the normal way to introduce pricing to free services is to make it initially super-cheap so the majority will find it reasonable.

Then overtime increase prices as you get a better sense of value and market dynamics.

Starting high, creating a lot of negative reactions and almost killing any real market for profitable apps on your platform seems to be the opposite of smart. It’s now some governments go with taxation before u-turning some years later when they’ve driven away or killed whatever it is they were hoping to tax.

> Starting high, creating a lot of negative reactions and almost killing any real market for profitable apps on your platform seems to be the opposite of smart

It's really dumb if the point is to keep all the third party applications that made your platform popular. It's much smarter if the point is to kill them all in favor of your first party app, that you are promising your VC investors will have tremendous growth leading up to an IPO, and you don't want your site to look like the bad guy by killing all the third party apps.

They just handled it poorly. If the reddit app actually had the moderation tools they've been promising for years, I doubt the moderator outcry would be anywhere near this bad.

And if you watch you'll notice, even during the blackout, reddit's messaging is all about the things you can still do besides use the third party apps. They're making the API still free for moderation bots. They're working with apps that provide accessibility tools for reddit. They're working with the services moderators use for moderation. They're appealing to the moderators. They've made no mentions of working with: Apollo, BaconReader, or RedditIsFun. The point was to kill the third party apps.

It seems like the plan was always to kill the 3rd party apps, but not until their own app was feature competitive with the 3rd party ones.

But they ran into time limitations. They plan to IPO later this year and they want the 3rd party apps to be dead before then.

I can't see that.

If a 1.5 person app (Apollo) is handily beating Reddit's app... what on earth is the holdup? Either the eng team is wildly incompetent, or this is by executive choice.

Reddit's inability to deliver on mod tools despite a decade's worth of promises makes me think it's 40/60 wildly incompetent and needing firing vs exec choice.

I had proposed this reply to someone else's similar question.

I don't think the current app's design is an accident (i.e. it's not pure incompetence). It meets several objectives:

* Minimizes the user-generated content shown on each page (a couple of threads or a couple of comments), so it reduces the amount of traffic to the server and DB as the user browses around.

* Oh, and it leaves a ton of space for ads, which (bonus) can be served from a separate ad server, further lightening their load.

* Plus, there are Bob Ross-like "happy accidents" like pages jumping back to the top when you go a level up from a thread - going back to your spot can trigger more ads to be shown.

The 3rd-party apps subvert all this, and bypass the ads, to boot.

I think a big chunk of this is prioritization of resources in a way Apollo doesn't have to worry about. I highly doubt reddit has like utterly mediocre/shit devs. I think it's more likely that works are being prioritized in a way that shafts mods (who don't pay money) towards the goals of the reddit company to ipo (more ads and engagement with their first-party platforms). We had stupid shit like reddit coin and reddit gold and random other small features that are primarily to make money on the first party platform. Apollo's spec is much smaller in comparison, in which the users of Apollo are effectively paying for a smoother integration with whatever Reddit already built.
Yeah, but you'd think reddit could pay for 1.5 engineers to get that smoother integration themselves.
Imagine if you could simply write app code without needing to spend hours of time in meetings, writing analytics for every button tap, or writing dozens of explanations to managers why the app doesn't behave exactly like the web version.
It’s even worse than that, because both apps didn’t start at the same time, or from the same point. The Reddit official app started out as Alien Blue, which by all accounts was a very popular and well-made 3rd-party app itself. Reddit bought it, and then made it significantly worse, and THEN Apollo came out.
It's not unheard of. Back when I worked in a place that forced me to use Slack, I deshittified my experience via Ripcord, which could handle 90% of Slack at < 5% of overhead, while being much more ergonomic, and also doing 80% of Discord at the same time. And that client too was, AFAIR, a one-person project.
It’s a bit of a silly question, right? How come the Pirate Bay with fewer developers can offer me all Disney films but Disney with so many more can only release some from the vault. The motivations are different, so they’re probably working on things that make Reddit make money.

Fine, I'll spell it out: The hard part of making a client is making a client that can retain the money-making portion of an application. It is trivial to charge a small amount for client functionality when the predominant cost is on someone else. The reason you need a lot of engineers building the Reddit client is that they have to deliver the ads, make sure the ads are viewed, and correctly reported as having been viewed. The whole thing.

If you don't have to worry about making money, you can make a front-end to anything quite easily. This is why most HN commenters frequently make the "what's so hard about the Uber app" mistake. The hard part isn't the app chrome. The hard part is making it make money.

That's a silly comparison.

Apollo is a better client. The comparison is Apollo vs the Reddit app, not Apollo vs Reddit as a whole.

That is an EXTREMELY silly comparison, like it doesn't make any sense at all.

We are talking about clients here.

Is it beating the reddit app? What percentage of users use Apollo?
I think you are reading "beating" as higher user count. I read it as better features and user experience. But even in terms of user count, enough people are using third-party clients like Apollo that reddit deemed it worthy to kill them.
I know several developers, myself included, who are significantly more productive in their personal projects than in their main jobs. This discrepancy can be attributed largely to unnecessary bureaucracy. I have a lot of examples to illustrate this point. In one instance, we found ourselves in a meeting with nearly 30 people, spending close to an hour discussing how long it would take to implement a particular topic. In a typical project, this implementation would have been completed within half a day, employing TDD and incorporating feedback cycles, no shortcuts or hasty work. However, due to the need to navigate through a chaotic development process, involving for examples over 20 microservices managed by a three-person team, this task is projected to span multiple two-week sprints.

Another example: Over a year ago, I decided to explore programming with Python. At work, we encountered the problem of our web-based software requiring users to download PDFs to read them. As a personal project, I set out to build a Python application that would generate individual image files for each page of the PDFs, providing both a preview image and a higher resolution version. I dedicated a few evenings and two Saturdays to the project, and after approximately two weeks, it was successfully completed. Additionally, I created a simple GUI using Vue.js, enabling file uploads and displaying the resulting images. An experienced Python developer could likely achieve the same task in just one or two hours, with an additional two hours for the frontend.

Months later, the company decided to embark on a similar project but with additional extended OCR (Optical Character Recognition), incorporating machine learning to extract structured data from the PDFs. Initially, the prototype aimed solely at uploading the PDFs, with the machine learning aspects simulated. Months were spent discussing, conceptualizing, refining, and revising before the implementation phase commenced. Over a year later (though I have since left the company, I remain in contact with current employees), the first prototype was completed. Users can upload PDFs, and the system generates images from individual pages. The frontend simulates a progress bar, as the microservices run in the background without a built-in monitoring system. One of the more experienced developers foresaw this issue from the start, but management hindered his efforts until he eventually resigned. To date, the machine learning component remains unimplemented.

My last example for now: I recall a situation where the best developer I know was hired by a large corporation as external support. Within a few weeks, he was assigned an easy standard task that any competent developer could handle with ease. Believing it to be a sample project for the standard onboarding process, he promptly and efficiently completed it in less than a week. When he delivered the finished result, his clients were astonished. They had planned this to be his sole project for the next six months and had expected it to take a significant amount of time.

In summary, it is not uncommon for companies to invest months of work and millions of dollars into projects that a reasonably skilled developer could accomplish in a day. Never underestimate the incompetence of some organizations.

Isn't this always the way. Crowd source development and ideas to see what gains popularity, and then build those features into your thing or buy the 3rd party thing to rebrand as your thing. That's like startup culture 101
Another thing that probably irked Reddit was that Apollo, RedditIsFun, and the other popular clients were monetizing their apps by including their own ads, charging a one-time or monthly fee. I'm surprised that wasn't against their API terms.
It's not. It's similar to how Imgur does it.

Imgur serves advertisements when you go to their page. But you don't get them through the API.

https://api.imgur.com/#commercial

> Your application is commercial if you're making any money with it (which includes in-app advertising), if you plan on making any money with it, or if it belongs to a commercial organization.

Calling an API and monetizing the front end it is fine. The money that Imgur loses from ads is made up in the API call monetization.

The Reddit APIs don't prohibit serving advertisements or any other form of monetization of the use of the APIs and mention it as something that your app would need to do.

https://www.redditinc.com/policies/data-api-terms

    You will disclose in your App through a privacy policy how you collect, use, store, and disclose data collected from your App Users and other visitors, including, where applicable, that third parties (e.g., advertisers) may serve content or advertisements and collect information directly from your App Users and other visitors that may include the use of cookies. In addition, by using the Data APIs, Reddit may use submitted information in accordance with our Privacy Policy.

Note that sending data to 3rd parties from a front end (e.g., advertisers) is something that is allowed provided that it is properly disclosed to the App Users or other visitors and that it may serve content or advertisements from the application.
Seems more that they were upset/afraid about how it made the corporation appear inept (and correctly so).

It was about maximizing the value of the IPO by ensuring investors would be minimally aware of the failures of the app and new Reddit, by ensuring as few 3rd party products exist as comparatives to the first party offerings.

It could be argued to be part of a conspiracy to defraud investors by ensuring they were incapable of being fully informed....

Never seen an ad in Apollo
But they have done neither. They did not build the most popular 3PA features into their native app, nor did they offer to buy them out.
Being blinded by hubris and taking a hard left off a cliff on a potentially profitable venture are not things I would consider "smart".

Saying it was "smart but handled poorly" is an excuse. It was a series of dumb moves because they did not see the actions they needed to take and in what order and on what timeframe to not capsize.

Correct. In general it's a good capitalist scheme. Start with a mostly open platform, court third parties into making tools that make it significantly better, get your user base. Then kill the third parties to consolidate power.

It worked for Facebook. It worked for Google Chat. It's failing for Twitter, and for reddit, for the same reasons. They did it too quickly and without the finesse needed to prevent a revolt. Instead of cranking the pricing, they needed to do what Facebook and Google did -- slowly degrade the integration system until it was unusable, start restricting features, add features incompatible with third parties, etc, until the third parties all give up and the API dies a seemingly natural death. reddit just doesn't have the foresight or planning to pull off most plans, including nefarious ones.

But it didn't work for Gmail. Despite Google's best efforts, email still exists outside Google. If we want to avoid playing this Fark->Digg->Reddit game again, we need an open standard that doesn't rely on a single company, like email.

I don't think it's so much about consolidating power as it is that this is the natural choice for companies that primarily monetize through ads. I've always felt that it would be better for these platform companies to instead try to monetize the app ecosystem. Start by charging for the API with a generous free tier instead of going down the ad supported route.
Embrace, extend, extinguish.

Microsoft used it like a scalpel and a hammer for decades.

> If the reddit app actually had the moderation tools they've been promising for years, I doubt the moderator outcry would be anywhere near this bad.

If the reddit app was any good, the 3rd party ones wouldn't even exist. All their problems are because their users prefer to pay a 3rd party than to use the recommended, official app they keep pushing into them.

Instead of all this confusion, if they just made their app work on the high-latency that is common on mobile networks, they would get much better results. (No need to even make their video work.)

I think the problem is that third apps get in the way of ads. Reddits users and content and "community" get in the way of ads too.
Ding ding ding

The real reddit app doesn’t even have an option to block a particular ad account so when they serve you evangelical right wing ads all day you just have to swallow it.

The inability to block ads I personally find offensive is the #1 reason I'll use a browser with ad block over a native app. Reddit and Tumblr are my two biggest offenders that do not let me properly block particular ads - notably gambling and religion, but also those scam mobile games and other scammy nonsense. I get that they need to pay the bills, but I should have some level of control over what I see.
Which is the real reason that reddit is killing both the third party apps and the mobile site. Same reason that Facebook, Twitter, and Tiktok make the mobile site as painful as possible. If you're using a website in a browser, the user has control. If you're using their app, the company has control.
Twitter and TikTok are pretty pleasant to use for me. Just AdBlock and move on.
>The inability to block ads I personally find offensive is the #1 reason I'll use a browser with ad block over a native app.

This is the main reason why apps exist in the first place. They remove the user agency that browsers provide.

I wonder why Reddit didn't buy the app?
Because it hasn't worked before. They bought Alien Blue, made it the official app, failed to iterate on it, and eventually gave up on it. Now they've made a new reddit app, which is also not good. No reddit official app is going to look good compared to the the third party ones, partly because their profit making attempts are at odds with good user experience, and if they buy the third party ones they've already shown they can't improve them. So they want the comparison to go away so reddit stops being embarrassed by third parties.
> made it the official app

They did not. They bought it and killed it. Their home-grown application is built from scratch.

I’m still incredibly bitter about this. The Alien Blue iPad app was fantastic, nothing that has been released since can hold a candle to it.
Surprised growth is measured in terms of app installs versus active users by VCs. It’s probably both I suppose.
That’s assuming that you want people to use your API for third party apps.

Reddit has made it pretty clear they aren’t interested in that, despite the things they say.

In that sense, it makes perfect sense to jack up the price to a shocking level to force everyone to stop without outright banning them.

I’m not so sure. I think Huffman saw all the hype around ChatGPT, and how they trained their model on Reddit comments, and had a fantasy about charging AI companies high rates for future API usage. Apollo, et. al., were an afterthought, if consideration was given to them at all.
That's certainly fair, but you'd hope that out of the 2000 employees, at least some are in a position to evaluate decisions like that and explicitly calculate the PR risk of any decision. And they certainly should have taken it into account.
Not only that, if they really didn't want to kill 3rd party apps, they've had a week to say, "oh no! We see exactly how this is going to kill third party apps, let's iterate to try to fix it so that we don't do that", instead of doubling down on a feud with them.
Yes. We all know it wasn’t in earnest, but this allows Reddit to say they tried.
Some insist this is about making it so companies training LLMs aren't doing so with Reddit's data for free.

But I call bullshit. People training new AI models are using the API right now because it's free and easy, but as soon as that changes they will go back to good old fashioned web scraping.

People training AI were already using CommonCrawl. There’s too many data sources to figure out each API. Everyone just downloads CC from AWS.
The other thing is they don't have anything in place to support paying 3rd party developers. They don't have appropriate dashboards, they still don't provide complete APIs, they're making it more restrictive.

If they're truly trying to run a paid API service then they have to actually support those customers (the apps) and they really weren't prepared to do that.

It seems like they must have thought their best bet was driving out third-party apps altogether, and the best approach was to pull the band aid off as fast as possible
This is how a normal company behaves.

It is not how a pre-IPO company behaves

Incentives.

> some governments go with taxation before u-turning some years later when they’ve driven away or killed whatever it is they were hoping to tax.

Examples or I don't believe that happens, maybe very rarely.

You're free to choose what you believe, I'm not here to convince you. But one of the older examples is the 'window tax' https://www.parliament.uk/about/living-heritage/transforming...
A tax from 1696 that was replaced 154 years later? Nothing was driven away or killed so it's not even a proper example.
You asked for an example. I provided one. The result of this policy was people were bricking up windows and it was eventually undone because it didn't work. So yes, 'windows' were 'killed' and consequently the expected tax revenue that was expected from them. I would counter that it is a valid example.

A more recent example in the UK would be the pensions cap which had the unintended effect of sending people into early retirement because it became uneconomical to continue working. This impacted especially doctors in the NHS and contributed to a labour shortage. The government finally corrected the folly 2 months ago.

Wealth taxee are the classic example. Plenty of countries have tried
Pretty sure the trick there is to just take a trickle, not try to get a flood of income out of wealth taxation.

NO amount of this is going to be acceptable to the wealthy, but there's gonna be a threshold between resentful grumbling and panicked flight, and that threshold is not at zero. And the usefulness of a wealth tax kicks in WAY closer to zero than the panic flight threshold is.

If plenty of countries have tried give an example where the rich fled and the country reversed the tax
one guy.

The fact is rich people can afford to live wherever they like more than anyone else. There's no reason for them to leave if they don't want to. But if they do leave and they're famous sometimes they'll take the opportunity to score political points.

Because the goal was to trap redditors into Reddit marketing loop.
yeah, they failed to boil the frog properly on this one. if they wanted to go this fast would have been better to just shutdown the api all together on like a week notice.
> Not really mentioned was all this was changed out the blue with less than 30 days to comply. The interview touches on it but it’s insanity that a tech company think it’s reasonable for indie devs to operate under that constraint.

It's unreasonable for a company of any size. The entire storyline shows Reddit sabotaging the process. Which seems idiotic, because they're throwing away a vibrant ecosystem that is #1 in the world, and took a decade to organically grow.

A decent CEO would've made a good faith effort to monetize this rather than burn bridges.

Exactly. Even in the AMA there were multiple third party devs saying they've been trying to reach out to Reddit's team to talk about signing the API agreement to continue using the service. Saying they haven't received a response in weeks.

This reeks of Reddit just not even wanting to do this at all. Call up the big devs so they can say "Oh well, we tried!" and the small devs that could afford the smaller-end costs just get ignored.

>but it’s insanity that a tech company think it’s reasonable for indie devs to operate under that constraint.

I don't like being that pessimist "fuck capitalism" sort of user but... between the high cost, low deadlines, and unanswered responses from devs, it's pretty clear what the true intent here is. And I don't think it was a due to a lack of competence. It was very carefully planned (maybe not the scale of the reaction, but overall planned).

---

And from other devs on the AMA, It's not like devs didn't know before the public announcement. One app developer mentioned trying for 3 months to get contact:

>I am the developer of a third party app (Now for Reddit) which has been happily using the API for 10 years. I don't want to close down and have been considering using the paid API. However, I have been trying to contact Reddit over the last 3 months and have been completely ignored.

>I have sent many emails (devapps@reddit.com) and have used the online contact form which reddit themselves have asked developers to use. Each and every time I hear nothing.

>What am I supposed to do? The deadline is approaching fast, my app will be rate limited by Reddit and it will stop working. Please, reply to developers who contact you.

>I feel completely powerless to do anything right now and I want to try and save the app I've been working on for the last 10 years.

>I know I'm not the only developer who is being ignored, it's extremely unfair and a horrible way to be treated.

(yes, as you can predict, this question did not get an answer despite being the 2ns or 3rd top comment)

Now for Reddit isn't the most popular app, but 500k downloads on android alone show this wasn't just some small toy. They give a deadline of almost two months but ignore 3 months of email support. They don't want 3rd party apps.

Isnt that what the CEO is trying to do with charging for API access? Twitter did the same thing. Apollo dev could just raise rates to $3 a month and he makes money and the user in return get a apollo which offers an ad free browsing experience.
A point that has gotten lost in the discussion; The CEO is saying the "average" user would only cost $1 a month and therefore the pricing is fair. But users of apps like Apollo are not average, they are super users (and include a high percentage of mods). The Apollo app developer says he would have to pay $2.50 a month per user.

https://www.reddit.com/r/apolloapp/comments/13ws4w3/had_a_ca...

If he was able to pass through $1 a month to users and given a reasonable time to do so, Apollo would likely still be alive. Or better yet, require a $10-12 a year subscription on each Reddit user account, paid directly to Reddit, to use 3rd party apps.

I was a Reddit Premium subscriber and had been since the only thing it did was remove ads, give you access to /r/lounge, and a shiny badge on your user page.

The fact that it never crossed their mind that a half hearted attempt like allowing Premium members, who pay more every month than a free user generates in ad revenue, to continue using whatever apps they want might stymie some of the outrage show how out of touch the execs are. It still would be a bullshit solution, but making a developer like Christian pay for API requests while I was already paying Reddit ~$5/mo was stupid.

(Needless to say, I’m not longer subscribed to Premium)

Do they really think it's reasonable? I presumed it was meant to kill off third party clients.
I’m just following Christian’s good faith interpretation.

But it’s absolutely clear it was done to kill 3P clients. It’s hilarious that certain bots would be exempt and free from the price hike. Spez called out the Haikubot by name.

Look those bots are cute. But it has to query every single sub and every single comment every few minutes to work. If Reddit truly cares about waste and inefficiency those would be the first to go. The value vs cost calculus is negative.

Those bots also shit up the S/N and generally disrupt conversations with useless replies nobody asked for. They're a big part of the reason I stopped using reddit.

Related: https://i.kym-cdn.com/photos/images/original/002/054/961/748...

Even more egregious are those stupid "RemindMe!" bots which in a very ham-fisted way create noise for everyone except the one person triggering the bot (ironically, a 3rd party app would be way better suited at implementing this specific feature)
People have wanted schedulers and the ability to subscribe fr updates posts for years. Thankfully, RES has had that for almost a decade now.

Don't think Reddit even acknowledged that feature request, compared to others they said "we're working on it" some 7 years ago. Closest they got is how the subscriber plan lets you highlight new comments in a post (something RES also had, but reddit made them remove it), but you still can't notify yourself to when new comments occur.

Just another example of not considering the user. Pretty sure filtering subreddits from r/all was the last user-centric feature they made. And that was more made out of spite of the political shitshow that was 2016/7 as opposed to thinking about the users.

Apollo implemented this as a feature last year in fact.
Agreed. The only good bot is the one that attempts to identify comment-stealing bots farming karma.
Has Time Cube vibes.
From the great "welcome to my meme page" on FB.
Thank you, I'd never seen this genre of... absurdity before.
It's either meant to kill 3rd party apps, or it's an impressive failure by Steve Huffman to create another revenue stream for Reddit.
I don't think this is inconsistent at all. Bots don't look at or click on ads. Bots don't engage or create community. Bots don't buy awards. Bot querying is a drop in the ocean compared to real people.
It is inconsistent because spez has repeatedly said that 3P apps, Apollo in particular, are inefficient with their API usage which is preventing reddit from becoming profitable. It is their (thinly veiled) lie to justify the pricing because they think shutting down 3P apps and being caught lying at the same time is a better PR move than just shutting down 3P apps.
>Bot querying is a drop in the ocean compared to real people.

bot querying also doesn't make them any revenue, yet it is a common source of strain on the community. I imagine it also makes spam detection that much trickier. While there are some amazing bots (and ofc, automod) there are so many bots out there just to make noise. And reddit is already pretty noisy as is.

To my knowledge, ads and buying awards were never available from the API anyways so it's not like Reddit can use that as a valid argument
I agree with this take - this seems pretextual rather than a good-faith attempt to charge for API access. Because history rhymes I suspect Reddit's leadership was heavily inspired by Twitter's killing of third-party clients, which actually ended up working out for Twitter.

IMO Huffman's behavior in this entire saga has been extremely wanting, to the degree where one has to wonder about his suitability to lead the company. And to be clear - I'm actually someone who is sympathetic to Reddit's position, where a lot of the platform's value generation isn't being captured by them and the company is unprofitable.

I'm a very long-time Reddit user but I'm generally pretty meh about the various tempests-in-a-teapot psychodramas that emerge from there, and I remain generally cool to the popular uprising rhetoric - but Huffman's behavior is pretty egregious.

And this is why I don't really see this resolving peaceably - Huffman at this point seems personally aggrieved by Selig and one has to wonder if he's behaving in a capacity that maximizes the interests of his company vs. descending into a petty personal feud.

I may be grossly misinterpreting him here - but based on his disastrous AMA and his haughty proclamations it's not an unreasonable perception. More importantly, as a company that is 100% reliant on mass volunteer labor to even exist, the fact that this perception has been projected, reinforced, and not usefully countered in any way suggests disqualifying leadership inability.

This is the CEO that got mad at a user in a subreddit that mentioned his username, and in a drunken rage went into the database and manually edited their comment (who's to say it was just one?).

Huffman has had many terrible lapses in judgement over the years.

It has also always rubbed me the wrong way how Huffman re-writes history by saying he founded reddit with just Alexis Ohanian. There were three founders, and the third one that he always leaves out is Aaron Swartz.

No matter how you look at it, Reddit leadership massively screwed this up. When half your site goes offline for two days and the entire front page is calling for the CEO's head, it's obvious that they have lost touch. And since they aren't reversing course on this, you can assume even more user-hostile changes are coming in the near future.
I think there are a lot of people wondering if the "even more user-hostile changes" are a loss of old.reddit. I knew of 3d party apps but none by name until this most recent incident as I am fine with old.reddit but the behavior of the CEO does make me concerned. I can't tell if he was just channeling his inner Elon and being a pompous ass or if Reddit is as desperate financially as his AMA made it seem. If the latter, I would not be surprised if old.reddit was shut down.
When the 3rd party apps go, that's the last time I use reddit on my phone.

When old.reddit.com goes, that's the last time I use reddit at all.

Agreed. And it’s actually 90% of the site offline at this point.

And many subreddits have said they’ll be private indefinitely, not just 2 days.

> it’s actually 90% of the site offline at this point.

How did you determine this?

Yep, and it's not even so much about the merits of these changes - though I am personally skeptical of them, it's that management has demonstrated no ability to sell these the community.

It's a private, for-profit company in a capitalist society. It's gonna have to do some unpopular things sometimes. What raises questions about leadership isn't so much that they're doing these unpopular things, but that they're doing so very poorly.

Good PR and good community management is critical to a social media business, especially when said business is 100% reliant on an absolutely gargantuan amount of volunteer labor. Reddit's leadership has demonstrated not only a lack of ability here, but practically an impressive anti-ability on this front.

Just for posterity, I glimpsed at their homepage and it seems that someone is gilding posts and comments explaining the protest. This as far as I understand entails paying Reddit. Fascinating. May be trolling.
One thing that people miss out on when they complain about guilding/awards is that being guilded or buying premium will credit your account with reddit tokens that you can use to guild other posts. So there's a chance the users are just using tokens that they have in their accounts already. I purchased premium back in the day to sync visited pages, and I have around 10+ platinum awards I can give out, a lot more if I use a cheaper award.

See here: https://www.reddit.com/coins/

Thanks for clarification. I'm not really complaining, just found it amusing. Still using the awards looks a little like tacitly supporting the system, and I even wondered if they help the submissions in the algorithm (if so, gilding would make more sense in that case).
> a lot of the platform's value generation isn't being captured by them

I will add that neither is it made by them. Community creation, curation, moderation, posting, discussing, styling, accessibility, usability is all done through volunteers and community members.

That "value generation" isn't 100% theirs to consume should be fair.

Twitter is all about very short form content / isolated from context and short responses and emotional reactive retweeting. Reddit is a bit more on the longer form / contextual side which favors more web browser type navigation and interaction. Looking at Twitter‘s short term success is a horrible way to set a strategic direction for Reddit.
Even that makes little sense. Reddit has survived on volunteer moderation and their use of third party tools to manage the workload. If Reddit doesn’t want to cover the cost of that infrastructure then they’re going to incur the extra cost of hiring moderators.

I imagine they’re upset that they can’t send adverts through the API (and thus third party clients) and since these companies see ads as a money printing scheme they’re happy to sacrifice whatever they can for it.

> I imagine they’re upset that they can’t send adverts through the API

Even that doesn’t make sense. They could’ve just told app developers a) we’re going to start co-mingling ads in API responses and b) that failure to render those ads according to our guidelines will result in banning your client id. Users would still be free to purchase a premium account to avoid ads.

Everyone would find that reasonable and there would’ve been no revolt. They could’ve even imposed per-user API quotas to avoid the kind of data harvesting that was being done to train LLMs. And they could’ve even threatened Christian with a ban if he didn’t improve the caching in his app, since that’s another criticism they’ve lobbed his way.

All that is targeted at making 3P app users contributing members of a profitable platform. But they did none of that and, instead, quoted him an FU price that will force him to shut down.

This would have been plenty fair in my opinion, and may have even gotten me to buy Reddit premium.

Instead I'm just walking away from the platform and my own small community of 15,000 readers that I've spent 7 years building.

I'm not sure even that Reddit has a genuine value prop beyond being a new walled garden to gather data and serve ads. But it might be too big to truly fail, now, because newer generations of internet users have only experienced the feudal internet.

Once upon a time this was all served by RSS, forums, and niche websites. Reddit converted those communities to subreddits, Facebook took another slice of those. Discord and Slack portioned away other groups as did Tumblr and each one has attempted to establish a moat not just to keep competitors away, but to keep their users inside.

They will probably go the Twitter route and decide moderation isn't all that important.

This of course means unsavory content like hate speech, blatant astroturfing, and conspiracy theories will flourish, scaring away big ad spenders. They will try to compensate for this by allowing more ads for online gambling and male enhancement pills.

Makes me wonder why even bother in that case to introduce phony pricing.
IMO, it tries to shift the blame a little. Pretend the price is reasonable and the developers who shut down the apps instead of paying are who took your app away, not the company. Killing them outright would make the blame very clearly on Reddit's side.

The other benefit is if anyone does decide to pay, it's profitable.

Except that doesn't work if every single third party app shuts down, which as far as I know is the case.

That's why I roll my eyes and gag in disgust a little when I hear Reddit management and their apologists somehow try to blame Christian for not negotiating in good faith. Even if that were true (which, to be clear, I don't believe it actually is, the opposite in fact), it just means that some other developer would step up if the pricing let them continue. The fact that every other app also shut down just proves that was the entire goal of these API pricing changes in the first place.

They probably also didn't anticipate quite this extreme of a blowback.

The response to killing 3rd party apps outright would have likely been the same as this, but when they did their calculations they probably expected the response to this to be less extreme and opted for the "safer" choice.

Isn't the whole point of this to charge AI companies harvesting reddit data? I thought 3rd party apps are collateral.
I see this theory a lot and I'm not so sure. The Reddit API makes things easier, but with this new pricing it makes way more sense for AI companies to go back to scraping.

But at the end of the day, AI companies aren't Reddit's users. Redditors don't have any reason to care about that, we have nothing to gain from Reddit charging AI companies for API access. So Reddit structing their response to AI in a way that completely dicks over so many users is never going to go over well. And it doesn't help that their CEO is acting like a petulant manchild the entire time.

In one of Christian's posts, reddit agreed that the price was for the opportunity cost of serving that user without ads - since they're not going to get any ad money from these users (and are unwilling to serve ads to these 3p clients since they probably can't guarantee to advertisers the 3p app isn't doing anything shady like hiding the ad while logging an impression).
Something I've been wondering—why couldn't the API just send a batch of ads to be served with the content? Since the apps need an authorized API key, if they don't cooperate in showing the ads then Reddit could simply threaten revocation.

Then users who want "premium" could pay for whatever feature Reddit-side to allow an ad-free experience, or they could even partner with the third party apps to offer it for a cut of the fee.

(This is assuming Reddit is negotiating in good faith, though that seems to be in question.)

I think a large part of it is about controlling the experience of reddit and providing guarantees about how ads get viewed. 3P apps have a very "old.reddit" experience where you only get things in your feed from your subs, with no suggestions. And you can force all posts to be collapsed instead of auto-expanded.

When you browse on the 1P Reddit app you no longer have a curated feed. It's filled with suggestions ("because you visited /r/place-you-dont-sub-to before posts"). And on top of that, controlling whether the view is condensed or as expanded cards does not affect ads. So you'll get a giant "he gets us" jesus ad that takes up half the screen - and if you do something like report an ad, say it's not for you (in my case, I selected something like "it's offensive"), you'll still get the same giant ad.

The Reddit experience they want me to have is not the Reddit experience I'm used to from the 3P apps, and I think that's why they're trying to kill them off. People that want a curated list of forums and a few memes/gifs aren't driving engagement as much as they'd like, so they tried to clone TikTok. And it sucks, so I'm gone after June 30th.

I work in ad tech, the difficulty in serving ads isn't showing the ads (which can be pretty annoying in itself for advanced ad formats), it's collecting enough metrics consistently enough across platforms to convince the advertisers that fraud and brand safety aren't a concern.

Verification metrics for basic ads are things like: when was the ad shown, how much of the ad was visible, which parts (pixels and video timeline), what content was also visible while the ad was shown, clicks, bot/script/adblock detection, and whether the ad was on-target (age/gender/location of user).

Ideally, these metrics are also independently verified, so Reddit's tracking and the advertiser's own provided/preferred tracking (like DoubleClick Verification).

Typically the video player or ad renderer needs to be customized to collect these metrics and understand VPAID/VAST/VMAP/MRAID for how/when to show the ad and what tracking is needed. Plus support for mixing content and ad encoding formats.

It's basically an arms race to compete against Facebook/Google's ad serving and tracking capabilities and I'd say even most 1st party premium ad publishers with full time ad tech teams often have difficulty consistently passing verification convincingly enough. So it's understandable that Reddit has very low confidence in single developer apps being able to pass the ad verification bar, much less over API which isn't a well worn ad serving path.

So basically, a native app where the publisher has full control can get metadata important to advertisers, especially enabling third-party anti-fraud processes. Makes sense, and thanks for the enlightenment.
This may sound very ignorant but: why are advertisers so paranoid about the people they pay to? If you are going so far as to track visible pixels of your ad you probably have something more fundamentally wrong with how you're communicating your product.
There's a lot of ad fraud in the industry, there's a lot of money in advertising. Everyone is incentivized to say they showed an ad but not actually show the ad. There's a lot of very sophisticated ad fraud operations and the tracking is designed to be difficult to defeat. We've seen app developers try to render ads in hidden iframes or muted behind/under content or on server farms with headless browsers or click scripts being served with the ad.

The default is to not pay for an ad shown until the publisher can prove it was actually shown and independent verification matches. It's a lose-lose situation for the user and publisher to show an ad but not get paid for it (but the advertiser still benefits, so they'll make a good effort to find reasons to not pay).

Brand safety is also the highest priority for most advertisers. They don't want their ads shown next to content they disagree with. Which the publisher also has to prove they've done in a way that can be independently verified.

Some of these problems are very hard to solve with tech, and for these cases, the solution is often "just trust me". It's not uncommon to simply let advertisers have access to audit ad serving code. It's easy to trust a big entity like Google or Facebook or even Reddit, but it's very hard (and a lot of work) to trust random single dev apps (or even companies lead by untrustworthy figures like Twitter).

The bigger (unsolved) problem is: how do you prove your advertising actually worked? How do you convince a customer like Coke or McDonalds with massive advertising budgets and not immediate trackable sale/action that their money was well spent? So far the tech solution is to just provide a lot of data supporting that the ad was served exactly as the advertiser wanted.

> Everyone is incentivized to say they showed an ad but not actually show the ad.

People don't want to see ads because ads are intrusive. The solution to this problem that the ad industry sees is to make ads more intrusive. So it's kind of a positive feedback loop of user-hostile garbage forced upon them, and no wonder that people want to make ad-free experiences.

They probably did not negotiate in good faith. But....

I understand the API that the 3rd party apps interact with is powered by the legacy platform. The same platform that powers old reddit.

It doesn't seem like reddit are updating that platform anymore (I haven't noticed any major changes to old reddit in years), and I really don't think it has the ability to serve the same ads that the new reddit platform does. It would take a major refactor to either replicate the full API over to the new platform or otherwise feed ads back to it.

BTW, this also raises questions about how much longer reddit will keep old reddit running. It really looks like they are planning to retire the old platform all-together.

Because ads still need all the privacy-invading telemetry from the client device, which these apps wouldn't want to participate in.
Which is fine. They don't have to be participants on the network if they don't like the terms of engagement.

Of course, this isn't about ads in and of themselves. It's about Reddit (and, to some degree, tech in general) having lost investor interest and Reddit being this close to bankruptcy, desperately hoping that these 3P clients will provide a stable cash infusion to keep the lights on. Ads alone aren't enough; at least not now with the financial hole they have dug for themselves.

Ultimately, Reddit is panicking and doesn't know where to get the money they need real soon. Their historic practice of another investment round isn't going to work this time. Likewise, slowly transitioning to a paid API, giving developers time adapt like Christian proposed, isn't going to work either as, at that pace, there won't be a Reddit by the time the transition is complete.

They didn't do it for the money - the money is to make it unrealistic for them to continue in any way, and push more end-users to the official reddit app to participate in their ad network. They knew no app was going to pay those astronomical rates unless it's some personal project that only gets charges a dollar a month or so.
> They knew no app was going to pay those astronomical rates

Perhaps, but they don't have much choice. If the apps paid a reasonable rate with respect to what is reasonable to app developers, Reddit would still go bankrupt. May as well go big and go bankrupt only if that fails then not try and be guaranteed to go bankrupt.

Thing is, Apollo is on board to pay the big price, but Christian has exclaimed he needs more time to make the necessary changes to support it. Problem is that Reddit doesn't have that much time. Bankruptcy is still inevitable on his needed timeline. The power company doesn't care that you plan to make money sometime in the future when developers have had time to get around to making changes to their software. They want their money when they want it and if you can't make good then and there, that's it.

Remember, they're panicking. Their old model of finding new investment every time the plug was about to be pulled is dead and they weren't expecting that. They need legitimate cashflow now and don't know where else to find it on short notice.

Next will be a massive layoff to follow the small layoff earlier this week to address the haemorrhaging on the expense side. The "everything will be okay in a few days" notice sent to employees today indicates that something "not okay" is coming.

Plus advertisers want a more trusted-loop to prevent or detect fraud.
> why couldn't the API just send a batch of ads to be served with the content

One word: control.

the real solution would have been to lock api access behind Reddit premium the user would have to pay and then allow users to enter the API key in a 3rd party app.

but reddit has burned so much good will that users aren't going to want to pay out of spite

The guarantee there is a hell of a lot better for 3rd party apps that have to comply with reddit’s ToS than it is for web browsers.
Agree. Before subreddit mods voluntarily blacked out, the Apollo developer stated he would pay millions of dollars per year ($20M/year?) with the increased rates. It’s insane.

Reddit C-level executives suggested Apollo was poorly optimized or something. I think if it truly costs that much to use Reddit’s API, then maybe it’s on reddit to make their backend more efficient. If that’s not the case then it’s clearly just another case of corporate greed and pumping the numbers for the IPO.

I really hope the blackout is sustained for longer than 2 days. People need a break from social media and their echo chambers. Plus only 2 days of decreased user activity is nothing to Reddit.

It will stay relevant for 1-2 news cycles. C-level executives brush it off to board as “turbulence”. Then it’s back to business of extracting as much value from the users

$0.24/1k calls isn't absurd (its expensive, yes, but only ~3x more than the rate for Imgur).

The issue is that Apollo was doing 600 calls per hour per user to push notifications with a less than 10 second window between "when it hits your mailbox" to "when it shows up on your iDevice".

When that 600 calls per hour per user gets billed at $0.24/1k calls it gets very expensive.

If those calls were done to the main application (not showing ads) at the same rate that the official application does, it would represent several million dollars of lost advertising revenue.

On the other hand, it represents a fairly consistent load on the servers that doesn't generate any revenue that can misbehave quite badly when there is an outage and per user rate limit information isn't reported back to encourage the push notification server to throttle itself a bit.

Apollo claimed to be more efficient in API use than the Reddit client and somehow the rate you quote make no sense. Polling for push notifications at that rate? If that is the case then the Api is insane.
https://www.reddit.com/r/apolloapp/comments/9l3ema/apollo_13...

> For some quick math, Apollo has well over 100K active users. The server polls Reddit approximately every 6 seconds, so that's 10 requests per minute per user, or 600 requests per hour per user (assuming they only have one account and one device). At 100,000+ users, that's in the realm of 60 million requests per hour that my server would have to handle, not to mention parsing the results, coordinating tokens, etc. I really can't do that for nothing, so the plan was to offer push notifications with a small fee associated to cover these ongoing server costs.

Yes, that's from 5 years ago. He repeats it 10 days ago in this video.

https://youtu.be/Ypwgu1BpaO0?t=1734 (closer to the actual timestamp, that gives context https://youtu.be/Ypwgu1BpaO0?t=1772 )

> I guess there's an analogy um the way Reddit notifications work just for your inbox like you got a message or something um they work in so far as if I the developer of the app want to um say make sure that you get that notification within 10 seconds I have to be checking Reddit every 10 seconds to go like is there anything new is there anything new? is there anything new? is there anything new? okay. There is okay I'll tell is there anything new and then just repeating that at nauseam so you can imagine if you get a message once a week I'm checking every 10 seconds and then once during that whole week I get that message and then I can send it to you um so 99.99 of those API calls were wasted so we've talked to Reddit like that my friend who works on my server um and myself and I've said like what would be so much better is if we could just kind of keep like a port open with Reddit and say like you just tell us when there's a notification ready and we'll beam it off we don't have to bug you all the time and it's logical right and that's how a lot of services do it it's like an event-based API and um that's just not something reddit's ever uh given us

Note the every 10 second call.

People are likely confusing the "app" with what is installed on the phone rather than the application being the entire system of front end and backend (likely using the same API client keys).

Note: According to the published server source code, the NotificationCheckInterval has been increased to 60s sometime in back in March:

https://github.com/christianselig/apollo-backend/blob/b992d2...

Reddit had many years to listen to 3p devs and to it's own internal developers to improve their API. They/Leadership decided not to do so.

Then the push notification server is is doing $0.36/day/user of API calls under the pricing system as described.

Christian would need to change the monthly subscription from $4.99 to probably $14.99 or $19.99 to handle that (and regular daily use and Apple's subscription - though if he wanted to manage the subscriptions through a 3rd party payment processor he could reduce the 30% to 15% for that).

The lack of that, while it sucks, doesn't change that there's a cost with the polling architecture.

Looking at the history of that line (thank you for pointing it out, I'd been trying to work from the notificationsWorker)

    March 16, 2023: 10s to 60s
    Nov   10, 2022:  5s to 10s
> I think if it truly costs that much to use Reddit’s API, then maybe it’s on reddit to make their backend more efficient.

I am a bit skeptical that efficiency is part of the formula here. Reddit's running an entire company here, and I'm guessing that API call efficiency is only a small part of the cost (considering that they serve things that cost real money, like video).

>it’s insanity that a tech company think it’s reasonable for indie devs to operate under that constraint.

That's the point. In business you don't say "no" you 'f#ck off' price instead. 20x is a f#ck off price. It's because they don't want 3rd clients to proliferate because of the business issues it creates BUT at 20x, if they agreed, it would benefit the balance sheet enough for the issue to go away.

You're right on the money. It's all that, and more. Basically, Reddit going to a paid API isn't the big deal. It's the fact that, say, Apollo can pay Imgur under $200/month for all the API calls they need, but Reddit is demanding $20M/year, or ~$1.7M/month [0]. That's what tradespeople call their "fuck off" rate, i.e. the rate they'd quote someone when they don't actually want to do a job, but also don't want to come out and say they don't want to do it.

The TL;DR on this whole situation is that Reddit quoted Apollo and other 3rd party apps their "fuck off" rate, and now Reddit is all like surprised Pikachu face that people who depend on those apps are, well... fucking off.

[0]: https://techcrunch.com/2023/06/08/popular-third-party-reddit...

Edit: $20M/year, not per month.

The under $200/month isn't a rate that anyone else can get.

https://api.imgur.com/#commercial takes us to https://rapidapi.com/imgur/api/imgur-9/pricing

The two plans there are $500/month for 7.5M requests and $10k/month for 150M requests.

> The under $200/month isn't a rate that anyone else can get.

Sounds to me like that rate might be Imgur saying "we welcome your business," rather than "fuck off."

Eight years ago, it was a "we welcome your business" with a "free heavy usage"

https://web.archive.org/web/20150320234625/https://api.imgur...

In 2019, https://web.archive.org/web/20191002234012/https://rapidapi....

I suspect its an older rate that he got and was able to lock in for a while.

The current rate is about $0.07/1000.

If $0.24/1000 is a "fuck off" rate, then Imgur is less than an order of magnitude more friendly to new developers. Imgur's price 4 years ago was $4k for 150M requests.

Reddits pricing is mostly in line with similar social network API pricing (Twitter is still an outlier).

It says right in the first paragraph of your link that it was going to cost $20m per year, not per month.
Brain fart. Fixed.
Basic math? Let's do the math...

Let's say Apollo, Relay, or RIF charged $2/mo per user. Would that be enough to cover their expenses?

Looking at Reddit's now API pricing, 100 calls per day per average user would cost $0.72 / month.

Google/Apple App Stores take a 15% commission on subscriptions so a total per month per customer average cost would be $0.83 cents.

That means the devs would make $0.98 cents per month per user on a $2 subscription fee. (30 cents to Google, 73 cents to reddit, 98 cents left to pocket).

With this user base, even if only like 20,000 people subscribe the devs stand to make $20,000 every month in profit.

The Relay for Reddit dev breaks it down here: https://www.reddit.com/r/RelayForReddit/comments/147152b/upd...

Apollo has 1.5 MILLION monthly active users. With a 50% conversion rate (meaning half of the users decide to subscribe) and charging $2.00 a month, he would make $750,000 / PER MONTH. That's with the new Reddit fees.

More: https://www.reddit.com/r/RelayForReddit/comments/147152b/com...

50% conversion is laughably high. The number of people in that Relay thread saying they wouldn't pay for the app was unsurprising to me. Not to mention that 3rd party apps would still not have access to NSFW content. I'd be surprised if the conversion rate was as high as 10%. The estimate I saw for current subscribers ($1/month) to Apollo was 50k which is a little over 3% of users.
Even if it was 10% he's still printing cash for a lifestyle business.

That 1% is an optional $1.49/mo. If it's a mandatory $2.99/mo you're looking at 10-20% easy. And he's printing cash.

Still way too high. Also, the actual figure I saw from the Apollo dev (different from the Relay dev's numbers) was 345 API calls per day per user, which changes your math significantly.

The other issue was that 30 days notice is not even close to enough time to pivot in terms of business model. He mentioned he has significant operating costs already, due to paying for caching servers as well as part-time help. Not only does he already have to refund users who paid for year-long subscriptions, but he'd also have to turn around and ask them for almost double the money for the same service.

The fact that he's shuttering his business entirely (thus foregoing all potential profit) rather than "printing money" as you put it, makes me think he has a good reason to think his financial situation is a lot more untenable than your rough analysis would indicate.

This isn't about API costs. It was changed so rapidly due to ChatGPT 4 and how it shocked the industry. They believe time is essential, in regards to pricing up the data (GPT has indicated to the Reddit company that it has massively undervalued its text content).

API pricing/use is the excuse to lock down their content asap. They see a goldmine under their own feet that others are extracting value from and so far they have not.

This is all about LLMs and perceived value related to that.

This argument doesn't hold water. Licensing can charge commercial reuse differently, and technology can have 3rd party apps use OAuth, and reddit can enable that OAuth solely for users with Reddit Gold Plus, to get whatever they think they need per user.

It's users using the API, to contribute the content. If Reddit stopped to think it through, they'd realize content contributed by Apollo users is better for LLMs.

Finally, if it cost users to use the API, Reddit gets paid, apps compete on their own merits as they do today, and the pile miners pay for commercial harvesting of the content users paid reddit and the app builders to let them post.

It's hard to see why Reddit thinks their current approach is the cleverest.

It's both. They are monetizing the data with LLMs AND they are still enabling 3P developers to monetize their users by charging a small monthly fee.

Let's say Apollo, Relay, or RIF charged $2/mo per user. Would that be enough to cover their expenses?

Looking at Reddit's now application programming interface pricing, 100 calls per day per average user would cost $0.72 / month.Google/Apple App Stores take a 15% commission on subscriptions so a total per month per customer average cost would be $0.83 cents.

That means the devs would make $0.98 cents per month per user on a $2 subscription fee. (30 cents to Google, 73 cents to reddit, 98 cents left to pocket).

With this user base, even if only like 20,000 people subscribe the devs stand to make $20,000 every month in profit.

Apollo has 1.5 MILLION monthly active users. With a 50% conversion rate (meaning half of the users decide to subscribe) and charging $2.00 a month, he would make $750,000 / PER MONTH. That's with the new Reddit fees.

Of course Reddit's management knew what the outcome would be, and they chose that outcome. They wanted to clear out API users. It's not a new tactic - you can see Twitter doing it, of course, and many other businesses.
Why does there need to be a paid API, when reddit provides all of the content over a free HTTP API to user agents already? Are these apps more than just a custom user agent?
There are two Reddit APIs - the public REST API and a private GraphQL API which limits access. Third-party apps use the REST API and the Reddit website/app use GQL.

For a hobby project you could maybe get away with scraping a GQL bearer token and issuing requests as if you were an official Reddit client. Or you could even request the HTML and scrape that. At the scale of these third party apps that approach just wouldn't work.

And let me just say, reverse engineering the GQL API is a massive pain. From my tests they verify a ton of things or else you get rate limited or "trusted less" - order of headers, formatting of JSON being posted, someone even said they check the TLS handshake signatures. GQL specifically has become a massive burden for me working on Libreddit, and I probably am going to give up on GraphQL and just have instances provide their own API token. The good news is there might be ways to auto-retrieve these tokens. We'll have to see in 17 days.
> At the scale of these third party apps that approach just wouldn't work.

Has there been any App Store apps that go with this approach?

As long as Reddit provides some API accessible to a non-logged in user on the web, there’s going to be a way to scrape it. If you push that scraping into the start of the app then it’s be distributed without any clear way of blocking it.

You could even have the app fetch “how to” updates from a a central site rather than pushing app updates so you don’t have to wait for App Store approvals to get around scraping updates.

We could call the end user’s program for accessing the site a “user agent” as it acts on behalf of the user to fetch and display the content that the user wants to see, in the manner the user wants to see it.

They will now. Before people were just polite to use Reddit's API. I'm sure there will be plenty of 3p on Android that scrape that are a work of love off GitHub soon.
It would be cool if the big 3p app developers would make their apps point to a configurable different API location, then people could set up their own docker scraper instances to provide the API for their app.

It could be an open-ish format, then you could potentially support alternate sites like HN as well.

Unfortunately, the App Store (and Play Store) rules ban this sort of thing — any access to third party web services needs to be in line with their terms of service.
That really sucks. Maybe what we need is something more general, a web browser that doesn't enforce CORS / XSS / CSP. So you could frame up an entirely new UI on any site you'd like that.
Sounds like you're pretty much describing the original intent of HTML.
> Or you could even request the HTML and scrape that

That would be such a nightmare between constantly changing UIs, A/B testing, and the fact that new reddit is a broken mess even when running in a normal browser where it's made to run.

Too bad Reddit! No API means scraping at scale! That's fine with me too.
The free API is going away
I think he was trying to be clever by referring to the standard web interface as the free HTTP API, which is true to a limited extent. It's a poorly-designed and unstable API. The use of the unpopular term "user agent" may have made it harder to understand, but I appreciate almost any opportunity to bring that term back, because it has important implications that "web browser" lacks.
It isn't.

> Rate limits for the free tier

> All others will continue to access the Reddit Data API without cost, in accordance with our Developer Terms, at this time.

https://www.reddit.com/r/redditdev/comments/13wsiks/api_upda...

The free HTTP API I'm talking about is just GET / HTTP/1.0...aka the web interface offered by reddit.com on port 80 or 443
The straight answer is that ads are embedded in the "HTTP API" and the vast majority of browser users don't have adblock, and Reddit can't force ads on any API users (except through the official app).
> Reddit can't force ads on any API users (except through the official app).

They absolutely could make ads part of the API that third party applications have to display.

There's a hundred things they could do if you assume they care about third-party applications, and don't specifically want to kill them.

I do think they want to kill them, actively, but even beyond that it's really clear they don't care.

The exact same point applies to Twitter's 3rdparty API getting killed off, and both moves are still a mystery.

It'd be easy to say "as a condition of getting this API key, you agree to display ad elements as they are served in the feed, and on click, open their associated URL in the system browser". All the ad-targeting is done server-side anyways, and attribution via unique links is easy.

> and Reddit can't force ads on any API users

Why not though? Seems really straightforward to serve ads over the API and enforce any display guidelines on third-party apps, since there are only a handful of significant apps anyway.

It would require some very careful system design and lots of trust of the third-party apps.

(It's been a while since I was in the middle of this, so stuff may have changed a bit. But in general...)

Ads are usually not served up by the application provider (Reddit). Instead, they embed URLs given to them by their customers (ad agencies). If the app is browser-based they'll wrap them in some javascript that also calls app provider endpoints and manages clicks on the ads. They do this for a few reasons: 1) There's a huge amount of overhead to the app provider if they try to manage and serve the customer's ad creatives. 2) There's a lot of hassle for the customer; they have to go through the app provider to make any changes to the ad media. 3) Nobody trusts anybody else; this way the customer knows exactly how many times their ad was shown (and if video possibly how long it rolled), and the app provider still knows how many times the ad was displayed vs. just offered to the end user's device, and what the click-throughs were.

The app provider could pass the customer URLs and the provider's wrapping endpoints to third-party apps. But they'd need to think good and hard about all possible fraud games, and would need to trust the third-party app to perform the complex dance properly. Examples:

1) what if the third-party messes up and doesn't call the click-through endpoint? Or sometimes does? Or calls it when they shouldn't? Click-through accounting is a huge deal with very large financial ramifications.

2) How do you enforce that the proper ads are shown in the proper context? If you control the app then you can sell above-the-fold vs. below-the-fold spots etc.

3) How do you control that the ads are actually shown when they should be? Not every link given will result in an impression (below-the-fold again).

4) Even if you completely trust the third-party app's motives, how do you monitor and debug the end-to-end flow?

5) How do you convince your advertisers that's everything is under control? A customer is probably going to have fewer warm-and-fuzzies with third-party impressions, and very well might discount their value.

> Ads are usually not served up by the application provider (Reddit) ...

This is the case for most sites, but not Reddit. Reddit rolled their own system, and if you look at their ads you'll see it's all coming through Reddit.

What is a user worth on Reddit?
It's funny when I design my own public apps, I'm careful about API usage.

I can only imagine what an app is like that was designed with no API limits whatsoever.

It's kind of amazing Reddit ever allowed this sort of no limits API usage - while at the same time Apollo charged their own users while enjoying zero infrastructure costs. What a steal.

How is 345 calls/day—much lower than the official app's usage—that much when the server indicates that 60 calls/minute is all good?
The mobile client may be 345 calls/day.

The backend server push server is a bit more active at about 600 calls/hour/user.

https://www.reddit.com/r/apolloapp/comments/9l3ema/apollo_13...

> For some quick math, Apollo has well over 100K active users. The server polls Reddit approximately every 6 seconds, so that's 10 requests per minute per user, or 600 requests per hour per user (assuming they only have one account and one device). At 100,000+ users, that's in the realm of 60 million requests per hour that my server would have to handle, not to mention parsing the results, coordinating tokens, etc. I really can't do that for nothing, so the plan was to offer push notifications with a small fee associated to cover these ongoing server costs.

That 345 calls/day is again mentioned https://youtu.be/Ypwgu1BpaO0?t=1734 but shortly afterwards ( https://youtu.be/Ypwgu1BpaO0?t=1772 ) he describes the process for push notifications (10 days ago - this isn't just the 1.3 release from 5 years ago):

> I guess there's an analogy um the way Reddit notifications work just for your inbox like you got a message or something um they work in so far as if I the developer of the app want to um say make sure that you get that notification within 10 seconds I have to be checking Reddit every 10 seconds to go like is there anything new is there anything new? is there anything new? is there anything new? okay. There is okay I'll tell is there anything new and then just repeating that at nauseam so you can imagine if you get a message once a week I'm checking every 10 seconds and then once during that whole week I get that message and then I can send it to you um so 99.99 of those API calls were wasted so we've talked to Reddit like that my friend who works on my server um and myself and I've said like what would be so much better is if we could just kind of keep like a port open with Reddit and say like you just tell us when there's a notification ready and we'll beam it off we don't have to bug you all the time and it's logical right and that's how a lot of services do it it's like an event-based API and um that's just not something reddit's ever uh given us

He's making a lot more than 345 calls per day per user.

I see you making this claim in multiple comments that he's making 600 API requests per user per hour to check for notifications, but this doesn't make sense to me. As you said, 100k users would result in 60 million API requests per hour, which would be about 43 billion API requests per month. I've seen pricing of $0.24 per 1k calls, so that would be $10 million per month, not $20 million per year. And that's just for this notification thing, which he could theoretically kill as a feature if that's 99% of the problem.

I think you're off.

It's possible. He could have also changed the rate at which it polls. ~1B calls a day isn't out of the realm of possibility.

https://www.reddit.com/r/redditdev/comments/13wsiks/comment/...

> On March 14th, Apollo made nearly 1 billion requests against our API in a single day, triggered in part by our system outage. After the outage, Apollo started making 53% fewer calls per day. If the app can operate with half the daily request volume, can it operate with fewer?

(note: 53% less calls is about going from a 6 second window to a 10 second window)

Note also that 100k users is the user base at that time and 1.3 is when the subscription ($5/month) was added for push notifications. He noted that that would be something that he would have to pay to support for a server to do those requests. It is quite likely that the number of users who are signed up at $5/month for push notifications is less than the total user base.

Having dabbled with the API, if he is doing push notifications on a short time window, he's making a call with at least that frequency.

https://apolloapp.io/notifications-faq/

> Wait, why does it cost money? I already paid for Pro!

> Apollo Pro unlocks extra features and is a one-time fee, but Apollo Ultra includes a notification server that has ongoing monthly costs to me (the developer) to rent and maintain that add up and can't really be covered by the fee associated with Pro (especially when trying to keep Pro affordable at a few bucks). I'd love to give it away as part of Apollo Pro, but I don't want to potentially jeopardize the future of Apollo. As a result I also tried to keep the price very reasonable at under a dollar a month.

And yes, the price went up when you look at the current in app purchases that are displayed on the App Store page.

Linking to Reddit admin posts isn't going to do you any favours. The Apollo dev has addressed, acknowledged, apologized, and fixed that March 14th problem and it's all detailed in his post [1]. He has given everyone the receipts, phone recordings, source code, and emails detailing his conversations with Reddit. There is no reason that I've seen to not take his word at face value or think he's trying to mislead people or make Reddit look bad for bogus reasons.

The Reddit admins have done nothing but lie and try to bend the truth and I would never trust their word after this debacle. Christian has far more credibility than the Reddit admins do at this point and their "well Apollo reduced usage by 50% one time with a 24 hour turnaround so that means their app sucks and surely they can do it again if they tried a little bit!" argument is, for lack of a better word, bullshit.

That isn't how software works, Reddit knows software doesn't work that way, and it's such a ridiculous conclusion to come to that I don't even know if it's a fallacy that has a name but the Reddit admins are definitely not arguing in good faith on this.

[1] https://old.reddit.com/r/apolloapp/comments/144f6xm/apollo_w...

When I use the website, my costs are covered by seeing ads. Now I have to watch more ads to make up for API users who don't pay.
I use Adblock, so don't forget you're making up for me too.
There were limits, they were just reasonable and based per-user-per-app. One of the changes was drastically lowering them on the free tier and making it per-app only.
A factor is, that the user's of those apps overproportionally create content, which is later served to other users.

Most users come via Google or other ways to read some content. Only few participate actively. Earning less on those few users can be valuable overall.

'users of those apps over proportionally create content' - really? prove it. Second, posting a link is not the same as 'creating content'
That is content for the site. Without that link post reddit would be less attractive.
> it would charge devs over 20x what a user actually cost/were worth

This is Selig's estimate based on not much info. Numbers like "20x" are completely made up.

Do you really think reddit spends 2.50 monthly per user on their 430 million MAU?

That would mean 13 billion dollars in expenses yearly.

Reddit should realistically charge for lost revenue rather than lost expenses. Instagram makes $50B annual revenue on 2 billion users, or around $25/user/year. I'm certain that Reddit is making nowhere near that per user, but they're probably pricing their API along their most optimistic projections.
I can't find the source but in some of the communication Selig released between him and Reddit a few days ago, Reddit themselves confirmed that their pricing is based on lost oppurtunity cost per user, not just expenses
I don’t really think of any number, because that would be silly. None of us know the answer nor can we confidently estimate what it is. Therefore any attempt to justify or argue costs by us is useless.
We can confidently assume it's not 26x their annual revenue. That would be silly.
Based on the info that Reddit had disclosed earlier, it might be inaccurate today but it's not fair to say "completely made up" -- unless Reddit made it up.
No. It’s made up, because whether you claim it’s 20x or 100x or -5x, you can’t defend any of those numbers because of incomplete info.
> It would charge devs over 20x what a user actually cost/were worth

Are you implying that a user is worth $0.125/mo to Reddit? Because that is laughably inaccurate. Mature platforms like Facebook extract up to $60 per user per quarter in advertising revenue from developed countries. Reddit itself made an estimated $500M+ from ads last year. ~$2.50/mo is already more than fair. Thinking that Reddit owes full data access to anyone for pennies is absurd.

Reddit reported that they had 430 million monthly active users in 2019.

$500 million per year / 430 million users = $1.16 per user per year

$1.16 / 12 months = $0.10 per user per month.

Pretty big difference between users who open the site once a month to look at a meme someone sent them vs those who are online for multiple hours a day. The ones who use third party apps are more likely to be in the latter bucket, and the loss of revenue from them will be significant more than the bottom tier of users.
Revenue is generated by ads. The power users are also the savvy users with ad block. Their value added is making the content for average users to engage and consume. Those are the users that will make up the base of the as revenue.

Alienating power user seems like the exact opposite.

Let's do some back-of-the-napkin math. Selig estimates that the average user would cost him $2.50/mo and his annual costs would be $20m/yr, so it seems like Apollo has 600–700k monthly active users — something like 0.16% of all 430m active Reddit users. That is simply not going to represent a significant opportunity cost to Reddit's overall ad revenue.

Plus, I'd bet that third-party app users are far more likely to be mods and/or heavy content creators, which means that alienating them will have outsized negative effects on the engagement of the rest of the userbase.

Where do you account for opportunity cost and future growth/loss in these (also old and also imprecise) estimates?
Ok, multiply that by 5, it’s still nowhere near 2.5.
Well, guess what? Your starting point is just an estimate and its accuracy cannot be sourced, so this is all meaningless
Exactly. Regardless of estimates, 20 mil to run custom Reddit client is ridiculous.
Many financial sites have reported Reddit users are worthless. CNBC estimated in 2019 that FB’s ARPU monthly is $7.37 per month but Reddit’s monthly ARPU is $0.30. (Though even that number should be revised down as revenue is slower than growth of users).

Again the devs are willing to pay some multiplier on this.

Seems like the winning strategy for Reddit & Facebook is for Facebook to acquire. Facebook can improve monetization.
Sign me up for this long awaited IPO…
I think the question is how much money they apps can make from having users, not Reddit.
The apps can make whatever they charge. $2.50 is now the base cost to add to every subscription. If the users value the service they will pay.

Developers already pay Apple & Google 30% for the privilege of being in the app stores. Is it too much for the very service that is powering your entire app to ask for their own cut?

> Developers already pay Apple & Google 30% for the privilege of being in the app stores. Is it too much for the very service that is powering your entire app to ask for their own cut?

Mind you that price is just part of the problem - the 30-day to start charging, was just as bad. It's absurd and completely made to kill the 3PS. Maybe if they have maintained the price but gave time for apps to discuss/adapt/replan, they could have found other options.

Even granting the rest of your argument, that math stops working for users who don’t use a particular app as their primary/only method to access reddit.

I use reddit 80% on the web, 10% on iOS and 10% on Android. I’m not going to pay reddit that full $2.50 (plus app store cut) for 10% of my usage twice. I’m just going to stop using reddit on mobile and stick to the web.

The “pay for reddit premium and get ad-free reddit plus unrestricted third-party app use” model makes more sense for users, for third party apps, and for reddit.

Why is this rate absurd?

From the article, it says Reddit would charge Apollo $2.50 per user per month. Right now, ad-free YouTube costs $12 a month, ad-free Twitch costs $12 a month. I can't buy ad-free Twitter at any price. Is it really not worth $2.50 a month to have ad-free Reddit?

Personally, I like Apollo, and I would be willing to pay to keep an ad-free Reddit experience. I'm disappointed that the two sides didn't manage to work this out.

I feel like Reddit is getting attacked despite being the company that is trying the hardest to make this work. The standard approach is just to ban apps that compete with the in-house app. Facebook, Twitter, YouTube, Twitch, all of those services just completely forbid things like Apollo. All these complaints are going to encourage companies to simply ban alternate apps rather than trying to price an API in the future.

You're comparing video streaming services (one of them a live streaming service) that have far more cost per user, to something that has far more minimal costs. You're also comparing individual account cost per user that includes much more than just API access.

Where is your evidence or even subjective knowledge about Reddit being the company that's trying the hardest to make this work?

Also, to answer your initial question, regardless of anything else in your comment, the rate is absurd because it clearly falls under bait and switch. Build up your userbase, including offering your content from an API until you're basically the monopoly in your market and then start charging per month, per user, for API access. It's not like individual users are paying for their API access and feeding that API key to other apps to use. It's clearly meant to crush 3rd party apps, not facilitate Reddit making money through 3rd party apps. They can make far more money through their own massively ad infested app without providing any of the features that make other apps attractive, if they just crush 3rd party apps. In which case, why both charging for the API. As others have suggested, why not just shut it down or limit it? Simply because they want to appear as if they're not shutting out the world, while still doing exactly that.

The new rate would require Apollo to monetize its entire userbase which includes a large number of free users and life-time-membership users in addition to increasing rates for existing subscribers.

Further switching to the reddit-model would require turning their back on free users with disabilities.

So while it is practical to shell out many of the principals behind the Apollo project in order to meet Reddit's IPO stat-padding requirements, the developer has chosen to shut down.

I mean, if by “trying the hardest” you mean “saying they’re trying the hardest while not outright banning apps” then sure, I guess they tried the hardest.

They’ve made it pretty clear they’re not really trying to keep apps. Several developers in the Huffman interview pointed out that they’ve reached out for months if not years to absolute silence in return.

YouTube and Twitch are different beast all together due to their costs. They also do revenue sharing for the content users provide, something reddit is not doing.

> I feel like Reddit is getting attacked despite being the company that is trying the hardest to make this work.

If they are genuinely trying to make this work, why did they only give 30 days notice for third party devs to figure this out? Seems to me their goal was to kill third party apps and that they have already succeeded.

> The standard approach is just to ban apps that compete with the in-house app.

Sure, but something being the norm doesn’t mean people like it. With reddit being how it was for so long and having a genuinely terrible default app, it’s no wonder they are getting flamed as much as they are. The way they have handled this on the PR side doesn’t help.

I think if reddit wanted this to actually work, the smart move would have been to allow users to pay for API access and use their token through the app of their choice. This would be more viable than the per-app basis they went with, which puts all the third party devs in an incredibly tough spot and effectively forced them all to shut down.