what if the people hammering my free API the hardest are the ones who would happily pay if I just asked
ok so. two years of running this thing. curated stock photo metadata, clean tags, color palettes, license info, the stuff Unsplash and Pexels make you scrape three pages to get. free, no key, 30k requests a day at the moment, costs me about 40 bucks a month in egress and a weekend of maintenance every couple months. been treating it as a calling card. portfolio piece. proof I can ship.
but the shower thought is. the top ten IPs hitting it are not hobbyists. one of them is pulling 4k requests a day, every day, with the user agent of a known design SaaS. another one is a marketing automation tool I recognize. these are companies. with revenue. building features on top of my free thing and never sending me a thank you let alone a dollar.
if even three of those top ten would pay 50 a month for a key with a real SLA and no rate limit I am at 150 MRR for doing literally nothing different. if even one would pay 200 because they need the uptime guarantee that is more than my hosting costs covered for the year. and crucially I would not have to take the free tier away from the hobby people who are the actual reason this thing has any reputation at all.
implications cascading from this. one. I need to actually look at the access logs and figure out who the heavy users are by IP and user agent and try to match them to real companies. I have been willfully not looking because I did not want to know. two. the moment I introduce auth keys even just for the paid tier I am taking on support burden. people will lose keys. people will rotate keys. people will email me at 2am because their key stopped working when really their billing failed. three. I need a pricing page which means I need to decide what the tiers actually are which means I need to decide what is in the free tier and what is not and that decision is going to make somebody mad. four. stripe. I have to set up stripe. which is fine but it is a thing. five. terms of service. right now I have a one paragraph readme that says "be cool". once money changes hands I need actual terms, an SLA I can defend, a refund policy. six. the moment I have paying customers I cannot just disappear for a month when life gets busy. that is the real cost. the rest is tooling.
where this could go wrong. first place. I gate the wrong thing. if I put the color palette endpoint behind the paywall and that turns out to be the thing 80% of hobby users actually want, I kill the goodwill that made the API valuable in the first place and the heavy commercial users just switch to scraping the source sites directly. the gating decision is the whole game and I am one shower thought deep into it.
second place. I underprice and end up with twenty customers paying 10 bucks each which is 200 MRR and also 20 support relationships and now I have a job I did not want. the math on indie SaaS support load is brutal and I have read enough postmortems to know that 200 MRR with twenty customers is worse than 200 MRR with two customers in every way that matters. so if I do this I need to price for the commercial buyer not the hobbyist who occasionally wants more. minimum tier 50 maybe even 99.
third place. I announce this and the heavy users just leave. they were never going to pay. they were always going to ride the free tier until it broke and then move on. in which case I have spent a weekend building auth and pricing pages for nothing and I have also signaled to the community that the project is going commercial which scares off the casual users who were the actual goodwill engine. this is the scenario that keeps me from having done it already honestly.
two adjacent ideas this unlocks. first. if I am already going to build auth and keys and a dashboard, I could ship a second tier of data that is genuinely premium. not gating the existing free stuff. adding new stuff. like, I could run an embeddings pipeline over the images and offer semantic search as a paid endpoint. that is real work but it is also the kind of thing a design SaaS would absolutely pay for and cannot easily replicate. the moat is the curation plus the embedding model choice plus the freshness, not the API itself.
second adjacent idea. the access logs are themselves a product. I can see what kinds of images are being requested most. what tags are trending. what color palettes are showing up in queries. that is market research data that stock photo agencies would pay for. it is also slightly creepy and I would need to think hard about whether I am okay selling aggregate query patterns even anonymized. but it is real and it sits there in my logs every day and I have never done anything with it.
moment of doubt. am I just bored. is this a real opportunity or am I two years in and looking for a reason to keep caring about a project that has stopped surprising me. because the honest answer is that the API works, it is stable, it does not need me, and turning it into a business is going to make it need me a lot more than it currently does. and I have other things I want to build. the question is not "can I monetize this" the question is "is this the project I want to be tied to for the next three years". because adding paying customers is a three year commitment minimum. you do not get to just turn off the lights once people are depending on you.
ok next step. I am not going to commit to monetizing yet. what I am going to do this week is pull the last 90 days of access logs into a notebook and actually identify the top 20 commercial users by user agent and IP. just look at the data. if it turns out the top users are actually all hobbyists and indie devs then this whole thread dies right here and I keep running the free thing as a calling card and feel good about it. if it turns out there are five or more clearly commercial users hammering the endpoint then I email three of them, no pitch, just "hey I see you are using this heavily, what would make it more useful for you, would you pay for X if I built it". that is the cheapest possible validation and it costs me nothing except an hour of log digging and three emails.
if those three emails come back with even one "yes I would pay" then I think about it seriously. if they come back with crickets or "we are about to switch off your API anyway" then I have my answer and I get to stop thinking about this.
ok I need to think about this more but at least now I know what the first move is. logs. emails. listen. do not build anything yet. do not announce anything yet. do not even tell anyone I am considering it. just look at the data and ask three people a question.
going to bed.