How I perfected Midjourney prompts for our marketing assets

5 min readKapil Gowru
A six by five collage of 30 Fern blog hero images, each a Midjourney landscape in the style of a Hiroshi Yoshida woodblock print
Listen as podcast
0:00

I make the background art for every post on the Fern blog. They're all generated from Midjourney, the best text-to-image model to generate high-fidelity imagery.

I wanted Fern's marketing content to feel calm and polished, representing the same craft we put into the product. Midjourney is the only text-to-image model I've found that can truly do that. Its style references and personalization keep every asset in the same visual key.

Landing the template that does that took months of scrapped generations and one museum visit. Here's how I got there.

Technobotanicals

My first prompts tried to make Fern's identity literal. Fern is a developer tooling platform with a plant for a logo, so I fused the organic with the digital and generated a pile of what I started calling technobotanicals:

VELVET-MATTED FERN LEAVES WITH CHROME VEINING, IMPOSSIBLY QUIET, ECHOES OF
ELECTRONIC LIFE, SOFT VIOLET AND PALE GREEN PALETTE, STILLNESS AT THE EDGE
OF A DIGITAL FOREST --exp 100 --profile c6so3sz --sref 2082925974 --raw
--stylize 1000 --sw 200 --v 7.0
 
MYCELIUM NETWORKS WOVEN THROUGH HAZY SYNTHETIC MIST, SLOW BREATHING LIGHT
PULSES, GREY-GREEN ORGANIC WEBBING MERGING WITH NANOSTRUCTURES, DREAMLIKE
DATA FOREST --exp 100 --profile c6so3sz --sref 2082925974 --raw
--stylize 1000 --sw 200 --v 7.0

White blossoms scattered over mossy rock in a blue dusk

Chrome-veined ferns glowing iridescent violet in a dark forest

Glowing spores drifting over dark grass at night

A luminescent blue river winding between mossy banks

A translucent leaf skeleton flecked with points of light

A mountain range wearing a faint luminescent grid

Iridescent ferns, glowing spores, a mountain range with a luminescent grid draped over it. Ethereal, but unusable.

The problem is that each one is a subject in its own right. They demand to be looked at. But almost every post on this blog lays a headline and a product screenshot over the hero image, so the background has to do the opposite of demand attention: hold a mood, then disappear behind the content. These fought whatever I put on top of them.

Surreal minimalism

If the technobotanicals were too loud, maybe the answer was almost nothing:

people standing on top of a mountain, walking towards the sky with clouds
and a moon. A large, vertical rectangle floats in front of them. The scene
evokes a sense of minimalism, surrealism, and a dreamy color palette,
characteristic of a digital art style. high definition --exp 100 --v 7.0
--ar 4:5 --chaos 5 --p <your-profile-id> --raw

A line of tiny figures climbing a snowy ridge above the clouds toward a glowing vertical monolith, a crescent moon overhead

Beautiful, but it read like an album cover, not a developer blog. The human figures and the giant floating monolith turn it into a scene you're meant to stop and decode. A background can't have a subject staring back at you.

Woodblock landscapes

I'd been here once before. During the site redesign I tried woodblock-style graphics and shelved them: Midjourney copied the surface texture of the prints but not the intent behind them, the deliberate linework and hand-registration.

So I swung back and tried plain woodblock landscapes: a fern forest, spring meadows, Iguazu Falls.

A misty fern forest with blue hydrangeas in woodblock style

A wildflower meadow with ferns and bees under a clear sky

Iguazu Falls cascading past woodland

I also re-ran the old technobotanical scenes in the new woodblock style:

A Japanese woodblock print of cherry blossoms in full bloom at the temple,
with people enjoying their time near a pond and pagoda tower in the
background. The sky is a clear blue, and there's an array of green trees
around the scene. This artwork uses vibrant pastel colors to capture the
serene beauty of springtime nature. --sref 2826299952 --v 7.0 --p <your-profile-id>
--sv 4 --exp 100 --raw

Cherry blossoms and a pagoda reflected in a deep blue pond

A luminescent grid draped over misty golden mountains

Glowing hydrangea-like tidal flora on dark rock

The circuitry faded into mountain ranges and weather. Much closer, but still too many strong color notes fighting for attention. I wanted fewer of them, and quieter.

Being inspired

When I'm in a creative rut, I visit whatever art museum is nearby. On a trip to the Philadelphia Museum of Art, I came across Hiroshi Yoshida, and it clicked. He spent the 1920s applying Japanese woodblock printmaking to landscapes, including American ones: El Capitan, the Grand Canyon, Niagara Falls.

A photo of a catalog page at the Philadelphia Museum of Art showing Yoshida Hiroshi's woodblock print El Capitan, Yosemite (1925): a sunlit granite monolith above a still reflecting pool and dark pines.

A photo of a catalog spread showing two woodblock prints: Kawase Hasui's Rain at Soshu Maekawa, a rainy village at night, and Yoshida's Morning at Mt. Tsurugi, a pink dawn-lit alpine peak.

Hiroshi's prints had the serenity I was after. The palettes are muted, the weather does the work, and there are no faces, hands, or text, exactly the things image models struggle to render with any exactness. And where my technobotanicals shouted and the surreal pieces posed, these landscapes just recede. That was the quality I'd been missing and couldn't name until I stood in front of them. I took the inspiration, stripped out the intricacy, and added motion blur so the eye glides past the details instead of snagging on them.

The final prompt template

I didn't land the prompt in one shot. Back home, I fed photos of Yoshida's prints into Midjourney's /describe command, which hands back the phrases a model would use to recreate an image, then isolated the ones that captured what I wanted, the muted palette, the analog grain, the smoothing motion, and folded them into a single template:

house-prompt.txt
[scene description in Hiroshi Yoshida landscape style], atmospheric [weather],
long-exposure smoothing motion, muted earthy colors, tactile analog grain
--v 7.0 --p <your-profile-id> --raw --exp 100 --ar 16:9

Then I added --p <your-profile-id>, a Midjourney personalization code. Personalization lets you train your own mini Midjourney model by ranking image pairs; it hands back an ID, and appending that ID makes every generation inherit the same look.

I pair that ID with a scene, usually natural scenery or flora and fauna tied to whatever we're launching. Everything else stays fixed, so a background I generated last September and one from this month visually feel the same.

The outputs

The Rust SDK generator launch: a dusk tide flat scattered with tiny orange crabs.

The Swift SDK generator launch: a flock of tiny swifts scattering across a blue sky above a Japanese temple.

A pale path winding rose-gold through snow-dappled evergreen scrub at dusk.

A moon gate framing raked sand and a gnarled pine in a twilight garden.

Rice terraces reflecting a sky of golden clouds.

The Fern autorelease launch card over a misty waterfall.

A misty blue-green forest of tall conifers at dusk.

The Making Fern faster hero over a deep blue wave.

The Fern Replay commit list over a golden sunlit hillside.

Every asset still gets its own scene. Rust's mascot is a crab, so the Rust SDK generator launch became a low tide beach crawling with tiny orange "Ferris" crabs:

A low tide beach crawling with tiny orange crabs, Hiroshi Yoshida landscape
style, atmospheric coastal haze at dusk, long-exposure smoothing motion,
muted earthy colors, tactile analog grain --v 7.0 --p <your-profile-id> --raw
--exp 100 --ar 16:9

The Swift launch swapped in swifts pouring out of a temple. The template holds the look; the scene carries the story.

What's next

I'm still tuning every asset, and each launch is an excuse to go find the next scene. Hope you find them as beautiful as I do.

  • See how we put this same prompt system to work in our paid ads (post coming soon).
  • DM me on X and I'll send over more prompts, or if you want to jam.
Kapil Gowru