I didn't set out to build an image host. I set out to use one. I was pushing images through a workflow — screenshots, generated assets, thumbnails — and I needed a URL for each one. ImgBB was the obvious pick: paste, upload, get a link. For throwaway stuff, it's great, and I'm not here to dunk on it.
The trouble started when the work stopped being throwaway.
Wall #1: I couldn't get an invoice for my company
This sounds mundane until you've lived it. If you're a freelancer, an agency, or anyone running work through a company, every tool you pay for needs to produce a proper invoice — your company name, your address, the tax/VAT details, something your accountant will accept. That's not a nice-to-have. It's the difference between a tool you can expense and a personal receipt that quietly comes out of your own pocket.
I couldn't get that. A consumer image host is built to charge a person, not a business — the billing is a personal receipt with no way to put a company on it. For a fifteen-dollar hobby that's fine. For something baked into client work, it's a dealbreaker. I don't want to explain to a client's finance team why my "hosting infrastructure" is a screenshot of a card statement.
So the first thing PixelVault is built to do is bill you like a business. Paid plans issue a real invoice, and you can put your company name and address on it at checkout or in the billing portal — the kind you can hand to accounting without a second thought.
Wall #2: the URL wasn't mine
The second wall was quieter but it nagged at me. Every image I uploaded lived at someone else's domain. When you paste that link into a client deck, a product page, or a doc, you're advertising a third party — and you're one policy change or shutdown away from every one of those links breaking.
What I wanted was boring and obvious: serve the images from img.mydomain.com. My brand on the URL, my domain, portable if I ever move. That's table stakes for anything customer-facing, and almost no simple host lets you do it.
Custom domains aren't live yet. They're the next thing I want to bring to the paid plans, so if that's the feature standing between you and switching, tell me and it moves up the list.
So I built the host I wanted
Once you're solving those two problems, you may as well fix the rest of what bugs developers about consumer image hosts. PixelVault is a real REST API with per-project API keys, a global CDN with zero egress fees, and image management — list, fetch, delete — instead of an upload-only endpoint. It's built for agents and developers, not anonymous drag-and-drop.
But the honest origin story isn't the API. It's that I wanted an image host I could put on an invoice and serve from my own domain — and I couldn't find one. If you've hit the same two walls, that's exactly who I built this for.
Free to start
The free tier includes 200 MB storage, 500 uploads/month, and 1 GB bandwidth — no credit card, no trial expiry. Paid plans start at $9/month, with your company name on every invoice.