Photopea: “Photoshop That Runs in a Browser,” Built Solo for 13 Years — a Bizarre P&L of $3M Revenue on $12,600 in Expenses
Ivan Kutskir started building the browser-based image editor Photopea while a student in 2012. It ran unmonetized for five years before he added ads in 2017. By 2021 annual revenue hit about $1M, and by 2024 it reached $3M (90% from ads) — with expenses of about $12,600 a year and development still done by one person.
(Yen conversions in this article use an approximate rate of ¥150/$1.)
The full picture in numbers
| Item | Figure |
|---|---|
| Annual revenue | 2021: ~$1M → 2024: ~$3M (about ¥450M) |
| Revenue mix | ~90% from advertising, the rest from premium ($5/month, ad-free) and licensing |
| Annual expenses | ~$12,600 ($20 domain + $600 servers + ~$12,000 for AI features) |
| Team | Development and operations handled by Ivan Kutskir alone |
| Users | 12 million monthly users; 1 million per day as of May 2025 |
| Time to monetization | Started development in 2012 → zero revenue for 5 years, until 2017 |
| Codebase size | 7,000 lines → 140,000 lines (plain JavaScript, no framework) |
13 years, on a timeline
| Year | Event |
|---|---|
| 2012 | Kutskir, then a student in Prague, starts development. His estimate that “a PSD viewer would take 1–2 weeks” stretches into roughly 5 months of work squeezed between classes |
| September 2013 | First public version released |
| September 2016 | Launches Premium (ad-free, $5/month) |
| 2017 | Finishes his master’s degree and starts monetizing seriously through ads. Up to this point, roughly five years with zero revenue |
| 2018 | Reaches 1 million monthly users |
| November 2018 | First Reddit AMA gets 43,000 upvotes and 2,200 comments. Monthly users go from 1.5 million to 3 million in seven months |
| 2021 | Publicly reports roughly $1M in trailing-12-month revenue on a Hacker News AMA |
| 2024 | Annual revenue reaches about $3M (about ¥450M); 90% from ads |
| May 2025 | Reaches a scale of 1 million users per day |
What kind of business this is
Photopea is a “browser-based Photoshop” that lets you edit PSD files with no installation required. Because all processing happens entirely inside the user’s browser, server costs barely rise even as the user base grows. The expense breakdown is public: $20 for a domain, $600 for hosting, and about $12,000 for AI features, totaling roughly $12,600 a year. Against $3M in annual revenue, expenses come to just 0.4% of revenue, a profit margin north of 99%, close to the theoretical limit of a software business’s cost structure. Users spend roughly 1.5 million hours a month inside the editor combined, and the server bill supporting all of it still runs $600 a year.
Kutskir’s programming history goes back to making Flash games at age 16, and in college he was already earning about $400 a month from ads. Photopea began in 2012 as an offhand idea: “I’ll build a PSD viewer in 1–2 weeks.” In reality, it took several months to reach the first public version, and he kept up roughly 10 hours a week of development for years after that, monetization through ads didn’t come until five years later, in 2017. In his own words: “The first 7,000 hours were $0. Now that I’ve passed roughly 10,000 hours, a million people use it every month.” On top of an amount of invested time that almost refuses to be converted into an hourly wage sits today’s profit structure. The codebase grew from an initial 7,000 lines to 140,000 lines, still maintained solo, still in plain HTML/CSS/JavaScript with no framework.
Breaking down the revenue: six cents per hour of use
- Advertising (~90%): Shown on screen to free users. Because image editing sessions run long, the combination of dwell time × ads works with unusually high efficiency. Divide revenue by total user hours, and it works out to roughly 6 cents per hour
- Premium ($5/month): The value proposition, in effect, is just “no ads.” Functionality is otherwise identical to the free version
- Self-hosted license: $500–$2,000/month (paid annually) for enterprise customers
What’s notable is that the monetization design doesn’t hold features hostage. Every feature is open to everyone for free, and only the people who want ads removed or want it hosted in-house pay. It’s the inverse of the freemium model, which cordons off features to push free users toward paying, and this only works because marginal cost is zero.
Acquisition: search, word of mouth, and a Reddit AMA
- The product is designed to catch search demand directly — for terms like “photoshop online” and “psd editor” — as-is. Because it’s free, requires no signup, and works instantly, it spreads on its own through word of mouth and shared links
- The turning point was a Reddit AMA in November 2018. It pulled 43,000 upvotes and 2,200 comments, and monthly users went from 1.5 million to 3 million in seven months. He’s kept doing AMAs regularly since, growing to a scale of 12 million monthly users. Ad spend has stayed at zero throughout
- Beyond AMAs, he’s personally answered more than 400 user problems on Reddit, writes technical blog posts, and shares his development process publicly. Reportedly 80% of his GitHub followers gathered there specifically for feature requests — support, PR, and product planning have all consolidated into his own community activity
What this teaches us
“Free plus ads” is strongest only in a zero-marginal-cost structure. This is the exact opposite of Levels dismissing free users as “terrible,” but there’s no contradiction. PhotoAI incurs GPU costs per user, so it has to charge. Photopea processes everything inside the browser at zero cost, so it can give it all away for free and capture the whole market. The cost structure determines the monetization model, not the other way around.
Five years without revenue amounted to building a moat, not running a loss. Photoshop-level feature parity can’t be replicated overnight. The sheer volume of 140,000 lines of implementation built up over five years when no one else was chasing him is itself today’s moat, though it’s easy to overlook this was a time investment only possible because he had the low-cost status of a student.
An AMA turns “being the actual author” into an asset. The experience of “the person who built it personally answers everything”, structurally impossible for a giant corporation’s product, became the strongest form of PR within Reddit’s developer/creator culture. As with Own the Yard’s public case study, transparency and personal authenticity are the royal road for an individual to earn media exposure for free.
The decision not to sell
Kutskir has consistently turned down acquisition offers. His advice is blunt: “Even if someone offers you 10x, 100x, or 1,000x everything you’ve earned in your life so far, don’t sell what you built” (paraphrased). On Hacker News, he framed the comparison with employment like this: “You never really know, when you start, whether your own project will make $250K a year. But if you take a job, you know with near certainty it won’t exceed $250K a year” (paraphrased).
In a business with $3M in annual revenue, $12,600 in expenses, and one person running it, holding onto ongoing cash flow tends to beat cashing out for a lump sum from a sale. The decision not to sell is arithmetic as much as aesthetics. At the same time, deliberately keeping the product’s scope within what one person can maintain (for instance, repeatedly turning down requests for an offline version, citing maintenance cost) has likely been a condition for this setup lasting 13 years.
Behind $12,600 in costs, $3M a year rests on just two supports
A cost structure with margins above 99% also means the business stands on only two supports. The first is advertising, which brings in about 90% of revenue and depends on ad market conditions and browser privacy rules, neither of which Kutskir can move. The second is Kutskir himself. He maintains all 140,000 lines and answers the Reddit threads, so when he stops, the product stops. His refusal to sell goes hand in hand with a bet that neither support will give way any time soon.
Parts of the growth path were open to him alone, too. He could spend the first 7,000 hours earning nothing because he was a student living cheaply, and the 2018 AMA that doubled monthly users in seven months worked because the product fit Reddit’s culture and he kept answering thousands of comments in English himself. Our reading is that what can be lifted from Photopea is the design logic (with zero marginal cost, giving every feature away for free still pays) and that the five unpaid years are not part of that logic.
Related cases
If this one impressed you
Similar cases

RemoteOK: $140K/month to $10K to $41K. What a remote job board's wild swings teach about "market dependency"
Web service
Key Values: A One-Person Job Board Doing ~$80K a Quarter, $25K in Its Best Week, on a Few Hundred Dollars of Monthly Costs
Web service
Pinboard: 11 years of revenue in one table, a $259K peak and three straight years of decline
Web service
Sauna Ikitai: A Hobby Search Site Reaches ¥72.88M in Year-Two Revenue — Zero Employees and a ¥370/Month Subscription Capped at 10,000 Members
Web serviceMost read
- 1
¥4.61 Million a Year, Five Years After Starting to Learn Programming. The Full Three-Year P&L and Playbook of an Indie Education App
42 recent visits - 2
From 30 yen in revenue to 8 years later: how running 3 apps in parallel got an indie developer to 200,000 yen a month
28 recent visits - 3
Payout: A Class-Action App Vibe-Coded in 14 Days Reached $1,003,227 ARR in 9 Months. It Cost About $10 to Build, and a Partner With 10 Million Followers Grew It
27 recent visits - 4
From ¥100 to ¥100,000 a Month in Three Years: The Quiet Compounding of an Ads-Only Tool App
26 recent visits - 5
Marketing Examples: 130,000 Subscribers in Three and a Half Years — a “Distribution” Playbook and a $2,300/Month Sponsor Slot
25 recent visits
Latest articles
- 2026-11-11
Just a Girl and Her Blog: $2,446 to a $51,803 Peak Month, With Ads Only 8% of Income, Over 34 Published Reports
- 2026-11-10
Key Values: A One-Person Job Board Doing ~$80K a Quarter, $25K in Its Best Week, on a Few Hundred Dollars of Monthly Costs
- 2026-11-10
Fat Stacks: $1,117,301 Revenue, $130,659 Expenses in 2021 From Unnamed Niche Sites Running on Display Ads
- 2026-11-10
EOFire: 136 Straight Monthly Income Reports End at $131,587 Revenue, 91% Margin, $27.9M Lifetime
- 2026-11-09
Thankbox: £150 to £12,000 a Month in 11 Months Selling $5.99 Online Group Cards
Sources
- Founder 開発者Ivan Kutskir氏によるHacker News AMA「I made almost $1 million in the last 12 months」
- Founder Built Plain「Seven Thousand Hours at $0, Then $3 Million a Year in Ads」
- Founder Indie Hackers「How Reddit AMA Earned Photopea 12M Monthly Users」