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.
Conditions and limits for replication
- What replicates easily: demand for “an installation-free free alternative to an expensive standard piece of software” exists in other categories too. Zero-cost design via in-browser processing is technically generalizable, and the pattern of a product name/design that catches search demand directly is also copyable
- Limits: the premise is being in a position (student, side project) that can absorb 7,000 hours of upfront investment. The advertising that accounts for 90% of revenue depends on variables he can’t control himself — ad market conditions and browser privacy regulation. Because it’s a one-person operation, if he stops, maintenance of 140,000 lines stops too. And the AMA’s explosive reach was the product of both a product that resonated with Reddit’s culture and his own willingness to answer thousands of comments in English — not a path that’s open to just anyone
Related cases
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」
Similar cases

RemoteOK: $140K/month to $10K to $41K. What a remote job board's wild swings teach about "market dependency"
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 service
Uneed: Running a Product Hunt Alternative Solo to $130K a Year — Inside the Books of "Marketing Over Building"
Web serviceMost read
- 1
Peak Monthly Sales of ¥1 Million on minne. A Former Designer Turned Handmade Artist Explains the Craft of "Photos That Sell"
34 recent visits - 2
Six AI videos, ¥153,030 in the first month — one video with 4.22 million views drove two-thirds of TikTok monetization revenue
21 recent visits - 3
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
19 recent visits - 4
Side-Business Blog "Tsuzuki Blog": From ¥42,000 to ¥1 Million a Month in One Year. Breaking Down the Published Monthly Data
15 recent visits - 5
Shichinatsu: A Salaried Designer's BOOTH Asset Shop Sells ¥1.08M in Six Months — Every Monthly Figure From ¥100K to ¥250K, Disclosed
13 recent visits
Latest articles
- 2026-09-26
Genji Reincarnation: 32 copies in month one, and a payout of zero
- 2026-09-25
Pirsch Analytics: One-Employee GA Alternative Grows MRR From $11,000 to $14,300, Publishing Its Numbers Every Year
- 2026-09-25
Kokou no Tabibito: A Multi-Topic Blog Hitting 500K Monthly PV and ¥300,000/Month in About a Year
- 2026-09-24
Fomo: a $10,000 MRR widget bought on seller financing, a best month of $154,000, and a seven-figure sale to Relay Commerce six years later
- 2026-09-23
Okashi Kaigyo Lab: a 13-tsubo cake shop booked ¥27,073,172 in year three and published every monthly sales figure to the yen