Back to blog
|7 min read

Ad Creatives Without a Designer: A Developer's Guide

A
Afzaal Ahmad Zeeshan

Founder, The Mark Platform

Creative. Ship an ad, no designer. Your graphic looks generated and you cannot say why. Six rules that decide professional from amateur.

You opened a template, dropped your headline in, picked your brand colour, and exported. On your monitor it looked clean.

On a phone, the call to action sat underneath Instagram's reply field. The body text was grey-on-white at a contrast ratio no one could read outdoors. The whole thing looked like a template with your logo on it, because it was.

Every craft failure in a generated creative is silent. Nothing throws an error when text lands at 1.4:1, when a CTA is hidden behind platform UI, or when a 180-character quote gets the same three seconds on screen as the words "Start free". You just ship something that looks amateur and conclude that visual content is not your strength.

Who has this problem

You are a technical founder who has to produce marketing images and short video, and you have no designer and no budget for one. You can build a distributed system but you cannot say why one layout looks professional and another looks cheap — which is not a talent gap, it is an untaught domain, the same as marketing itself.

So you use a template tool, and templates solve the wrong half. They give you a layout. They do not tell you that your type is too small for feed viewing, that your palette fails contrast, or that the bottom 15% of a Story is not yours to use.

Why the failures are invisible until you have shipped

You are reviewing on the wrong device. You judge a creative at full size on a 27-inch monitor. People see it at a third of that size, on a phone, in daylight, while scrolling. Contrast and type size that are comfortable on your desk are illegible in the feed.

Platform UI covers part of the frame. Every vertical surface reserves regions for its own controls, and they are not the same regions. Instagram Stories reserve the progress bar at the top and the reply field at the bottom. Reels reserve a right-hand action rail. Copying one platform's insets to another is the plausible mistake, and it produces copy that is not merely tight but hidden.

Compression eats what you designed. Social platforms re-encode video at low bitrates, and that erodes low-contrast edges. A ratio that technically passes on your machine can be unreadable after the platform is finished with it.

Everything generated looks generated. Templates share a typeface, a layout, and simultaneous entrance animations. That combination is the clearest possible signal that no one made a decision — and viewers read it instantly, even if they could not name what they are seeing.

Six rules that decide whether it reads as professional

Step 1: Do not generate before you have something to say

A creative made from a product description alone is text on a coloured rectangle. Without positioning it has no claim, without a persona it is addressed to nobody, and without a real call to action it spends the whole view and sends the viewer nowhere.

The Mark Platform checks this before it generates, and returns the specific questions to answer rather than producing something flat. Positioning, persona, brand and a genuine CTA block generation; a missing offer or proof point weakens it but proceeds. Never invent the answers — an invented statistic set at 200px is read as a claim you made.

Step 2: Respect the platform's safe area

Find the reserved regions for the exact surface you are posting to, and keep copy out of them. Centring in the full frame is what puts your CTA under a Follow button.

This is per-surface, not per-orientation. Stories and Reels are both 9:16 and reserve different areas.

Step 3: Measure contrast, never assume it

A palette chosen for a logo on a white page can put 1.4:1 text in a frame. Correct the foreground against the background, never the background — that surface is what makes the creative look like your company.

Target 4.5:1 even where the accessibility floor for large text is 3:1, because compression makes the effective contrast worse than the number. And when correction changes something, you need to be told: discovering that a tool altered your brand colours by noticing the output does not match your brand guide is a bad way to find out.

Step 4: Scale type off the short edge, with a hard floor

Use min(width, height), not width. Scaling by width makes the same headline 78px in a vertical video and 139px in a landscape cut, because width is the long edge in one orientation and the short edge in the other.

Set a floor and hold it: nothing below 28px at a 1080 short edge. People watch feed video at a third of full size.

Step 5: Time cards by reading length, not by even division

Silent video is read at roughly 13 characters per second, plus a fixed cost to recognise that text has appeared. Divide a video evenly between cards and a long testimonial gets the same seconds as a four-word CTA: one is unreadable, the other is dead air.

Stagger entrances too — 60 to 200 milliseconds between elements, in reading order. Simultaneous entrance is the single clearest tell of generated video.

Step 6: Write alt text per image, and never repeat it

Type set inside an image is invisible to a screen reader, so alt text is the only way that reader receives the creative at all. On Instagram and Pinterest it is also read as search and classification text.

One alt text repeated across an eight-slide carousel is worse than none — it reads as noise. Omitting it excludes people and costs reach in the same stroke.

The numbers, in one place

Five of these six rules come down to a figure you either hold or you do not:

Setting Hold it at Why this number
Text contrast 4.5:1 The large-text floor is 3:1, but compression erodes low-contrast edges
Accent contrast 3:1 minimum Below this the accent stops reading as a separate element
Type floor 28px at a 1080 short edge People watch feed video at about a third of full size
Type scale basis min(width, height) Width is the long edge in one orientation and the short edge in the other
Reading speed ~13 characters per second Silent-video reading, plus a fixed cost to notice text appeared
Entrance stagger 60-200ms between elements Simultaneous entrance is the clearest tell of generated video

Why this framework holds up

Because every rule above is checkable, and each one names a specific failure rather than a matter of taste. Contrast is a number. Safe areas are coordinates. Reading time is a formula. None of it requires design instinct.

The Mark Platform encodes these as the design system behind its generated creatives — carousels, quote cards, stat cards, comparison and launch cards, plus short video compositions — and reports what it changed and why, including any colour it had to correct. It also renders on your machine rather than ours, which means you own the project files and can edit any decision it made.

A/B variants are the same composition with different copy, never regenerated layouts. That matters for reading the result: if the layout changes too, you cannot tell whether the hook won or the design did.

Where this will not help: a well-set creative cannot rescue a weak message. If the headline is vague, better typography makes it a legible vague headline. Fix what you sound like before you fix how it is set.

Key takeaway

Keep copy out of the platform's reserved regions, measure contrast instead of assuming it, scale type off the short edge, and write alt text per image. Four mechanical rules remove most of what makes a creative look amateur.

Frequently asked questions

What size should I export? Match the surface: 1080×1080 or 1080×1350 for feed, 1080×1920 for Stories and Reels, 1200×630 for link previews. Exporting one size for everything is how you get letterboxing and crops through your headline.

Do I need video, or are images enough? Images are enough to start and are far cheaper to iterate. Add short video once you know which message works — testing a message and a medium simultaneously teaches you nothing about either.

How many creative variants should I test? Two or three per message. Beyond that you split your traffic so thin that no variant reaches a readable result, which is the same problem as underfunding an ad test.

Can I just use stock photos? You can, and for developer tools they usually hurt. A photo of people at laptops reads as exactly the generic marketing your audience distrusts. Show the artefact instead: real output, a real quote, a real before and after.

Should the logo go on every creative? On video, place it at the close alongside the next action. On stills, small and consistent. A logo that dominates the frame is an advert for a brand nobody is looking for yet.


You have the rules. The Mark Platform generates carousels, quote cards and short video from your brand, positioning and persona — enforcing contrast, safe areas and type scale, and asking for what is missing instead of generating something flat. See what it can produce, or start your marketing journey →

Ready to start selling?

The Mark Platform guides developer-founders from product idea to first 100 customers. No marketing degree required.

Start your 8-step marketing journey — free

Or explore the 8-step journey, the MCP tools, and pricing.

Keep reading

A

Written by

Afzaal Ahmad Zeeshan

Founder, The Mark Platform

Building developer tools for over a decade. Writing about the intersection of engineering and go-to-market strategy.