It started with embarrassment, if I’m honest. I’d written a post I was actually proud of, and the header image I slapped on it was a stock photo of a smiling man at a laptop that I later found on four other blogs. Four. Same man. Same smile. Same laptop, half the internet.
So I made a deal with myself: one month, no stock photos. Every image on the blog — headers, in-post, the lot — generated by me, with AI tools. If it was a disaster, I’d crawl back to the stock sites and never speak of it. It was not entirely a disaster. Parts of it were.

Week one: mostly fingers
First thing: generating an image takes ten to thirty seconds. Un-generating the wrong one from your memory takes considerably longer.
I began with DALL·E 3, because it lives inside ChatGPT — type what you want in the chat, get a picture. My first request, word for word, was “a cat.” What I got was… a cat. Technically. A cat-shaped arrangement, floating in a beige nowhere, with the energy of a passport photo. It followed my instructions perfectly. That was the problem. My instructions were rubbish.
The lesson arrived within the hour, the way all the lessons that month arrived — by wasting time first. “A fluffy orange cat on a wooden windowsill at golden hour” produced a photograph-warm thing I would happily have paid for. Golden hour is doing heavy lifting in that sentence, and that turned out to be the whole game: the machine is a very literal employee. Say the animal, say where it is, say the light it’s sitting in — golden hour, dramatic shadows — or it will decide for you, and its default decision is beige.
By Thursday I needed people, and people is where week one went to die. A woman drinking coffee: seven fingers. A handshake: a negotiation between nine fingers and some fingers that had clearly given up. I generated a man waving, and I will think about his hand on my deathbed. The fix is that AI still treats hands as a rumour. Crop above the wrists. Hands in pockets. Hands holding a mug, mostly out of frame.
The header image, third try
The month’s turning point was a header for a post about morning routines. Try one: a sunrise desk scene that looked like an advert for a bank. Try two: somehow worse — the same sunrise, but for a bank in 2009.
Try three, I stopped describing the picture I wanted and described the feeling instead — quiet kitchen, first light, one notebook, nobody performing productivity. And there it was. Soft, specific, slightly imperfect. I sat looking at it feeling disproportionately pleased.
That image is still up. It outperforms every stock header I used — more clicks, more time on the page. One image, third try, no photographer, no licence fee. If the month had produced only that, I’d have called it a win. It also produced the cat. We’ll get to the cat.
Midjourney, and the Discord thing
Midway through week two I caved and paid for Midjourney — around $10 a month for the basic plan — mostly to find out whether the internet’s favourite was actually better or just louder.
It’s better at beautiful. Annoyingly better. Where DALL·E gives you what you asked for, Midjourney gives you what you asked for, art-directed: the colours are richer, textures have grain and weight, a portrait comes back like a book jacket. For anything artistic — fantasy scenes, moody portraits — nothing else I tried that month was close.
The catch is the front door. Midjourney works through Discord — your image studio is a chat server, you’re typing commands into a stream of other people’s generations scrolling past, and for the first evening I felt like I’d wandered into the wrong building. It stops being odd by day three. Day one, though: deeply odd.
The other catch: Midjourney’s beauty is a house style. Everything leaned painterly, dramatic — wonderful for a fantasy header, wrong for a plain instructional post. I learned to want it for specific jobs only. Which, I realise now, is the entire conclusion of the month.
The cat
I needed a cat for a throwaway example — the “photorealistic” one, the fluffy orange windowsill cat, except closer this time.
It came back wrong in a way I still can’t fully describe. The fur was perfect. The light was perfect. The eyes were — present. Looking. There’s a quality in the generated animals, sometimes, where the gaze lands a half-second too directly, like the cat knows it’s a picture of a cat. My wife saw it over my shoulder and said, please not that one. I did not use it. It is still in my downloads folder. I have not deleted it because deleting it feels like it would win.
Text was the other haunting. Anything with words in it came back as confident gibberish, letters arranged by someone describing the alphabet from memory. Except DALL·E 3, which was noticeably the best at text, because it follows instructions like a clerk rather than an artist: give it the exact words in quotes and it usually spells them. Usually. I proofread one poster three times and still found a wrong word. Check the text. Then check it again. Then get someone else to check it — by then you can’t see it anymore.
Leonardo, Firefly, and the tools’ actual personalities
Leonardo AI was my workhorse for the plain jobs, and its free plan is genuinely generous — daily credits, enough to make real things free. It’s also more of a workshop than the others: editing, background removal, upscaling, and you can train it on your own images so your blog develops an actual look instead of a lucky dip. I understand why gamers and creators live in it. More buttons than I needed, but for repeat work — Thursday’s image matching Monday’s — the most sensible tool I touched.
Adobe Firefly I used least and trusted most. It sits inside Photoshop and the Adobe apps. The important thing isn’t the pictures — they’re fine — it’s the paperwork: Firefly is trained on licensed and public-domain material, which makes it the safest choice for client work. Every tool’s terms are different; I read the licence pages before using anything for a client. Boring hour. Necessary hour. (Total spend for the month, since people always ask: one $10 subscription and free tiers, for ninety-something images.)
The habits that actually worked
By week four I had a notes app full of prompts. Save every good prompt — the version of you in three weeks will not remember why “dramatic shadows, rain on the window” worked. Week-three me proved this at length.
The rest is scar tissue too. Name the style every time — watercolor, photorealistic, cartoon — or the tool picks one based on vibes. Iterate without shame: my average was four generations per usable image, and the good ones were rarely the first. Match the tool to the job: DALL·E or Leonardo for quick social images, Midjourney for art, Firefly for anything a client will touch. And keep one human habit — look at the image like a stranger. Fresh eyes catch the seventh finger. Tired, proud, deadline eyes do not.
Questions people actually ask me
Would you do another month?
I never stopped. This is just how the blog’s images get made now.
Which tool is the best one?
The question assumes there’s a podium. There isn’t — there’s a toolbox. Midjourney makes the most beautiful images and I still wouldn’t use it for a quick social graphic, because DALL·E is sitting right there in the chat window and the picture exists before Discord has finished scrolling. Firefly makes the least exciting images and it’s the only one I’d hand to a client without a second thought, because “the training data was licensed” matters in a client meeting. Leonardo bored me at first, then became the one I opened most, because repeatability beats brilliance when you publish twice a week. So: best for what, on which day, for whose eyes? Anyone who gives you one name for all of it is selling something.
Are they good enough to replace a photographer?
For blog headers, social images, illustrations — yes, and it isn’t close anymore. For anything where the real specific thing matters — your actual product, your actual team, your actual event — no. A generated office is not your office, and readers can feel the difference.
What about the rights — can I use these commercially?
Mostly yes on paid plans, carefully on free ones, and it differs by tool. Firefly is the safest ground because of how it’s trained. Everything else: read the terms before the image goes anywhere near a client. Ten minutes of boredom, once, beats one awkward email forever.
Why do the hands still look like that?
Nobody knows. Truly. The tools can render a rain-soaked street in another century but a handshake remains beyond them. Crop, hide, or accept the seventh finger as the signature of our era.
Last thing
A month of this didn’t make me an artist. It made me an editor of almost-images — generating four, rejecting three, cropping a wrist out of the fourth — and the blog looks more like mine than it ever did with stock photos, because every picture now started as a sentence I wrote.
That’s the real shift. The images aren’t free stock replacements. They’re the first draft of the article, in picture form, with all the same rules: be specific, expect to revise, and never, ever publish the first version — especially if it’s a cat.