{"slug": "your-ai-cover-art-looks-great-until-it-s-a-thumbnail", "title": "Your AI Cover Art Looks Great — Until It's a Thumbnail", "summary": "A developer building RealFeedApp, an RSS reader, found that AI-generated cover art looked great in preview grids but failed at thumbnail size, appearing as black rectangles. After switching to a documentary photography style, the model produced recurring artifacts like invented headlines, traced to conflicting prompt requirements. The developer emphasizes prompting for the actual display size and ensuring image model licenses permit commercial use.", "body_md": "Every card in [RealFeedApp](https://realfeedapp.com) has a cover image. They aren't fetched from the articles — publishers' images come with rights I don't have — so the app uses its own bank, generated ahead of time, one pool per topic.\n\nI generated that bank once, shipped it, and this month threw all of it away and started over. Twice over, actually, because there were two separate failures and only the first one was my fault in the obvious way.\n\nThe original prompt asked for a dark, moody look — *very dark near-black background*, *generous negative space*. In a preview grid at full size, the results were genuinely nice. Restrained, editorial, not the usual glowing-blue-circuit-board thing.\n\nThen I looked at the actual feed.\n\nCards render as tiles a bit under 400 pixels wide. A small object floating in a large field of black, scaled down to a tile, is a black rectangle. Not a bad image — no image at all. The model had done precisely what I asked: it put a modest subject in a lot of empty darkness. Negative space is a compositional virtue at poster size and a bug at thumbnail size.\n\nThe lesson is dull and I'll probably need it again: **prompt for the size the image will be seen at, not the size you review it at.** I was approving art in a grid of large previews and shipping it into small tiles, and never once compared the two. The rule that replaced the old one is three words long — brighter, higher contrast, subject filling the frame edge to edge.\n\nThe rewrite asked for documentary photography. The first batch came back with something I didn't expect: several images contained a coloured band along the bottom of the frame with a headline in it. Invented words, mangled letterforms, confident typography. One read `TROOLDOGS NEWS`\n\n.\n\nThree images out of fifteen. Not a fluke, a pattern.\n\nThe cause was in the prompt, and it was three words working together. I had asked for an *editorial* look, described the images as *news* features, and required that the topic's accent colour appear somewhere in the frame. Consider how a model satisfies all three at once. Editorial plus news plus a mandatory colour block has an obvious solution, and the model found it: a news graphic with a chyron. It wasn't malfunctioning. It was being efficient.\n\nDeleting those three requirements removed the headlines completely. The accent colour turned out to be pointless anyway — the topic colour in the feed comes from CSS, so the image never needed to carry it.\n\n**An image model resolves your requirements literally and jointly.** Each word looked harmless alone. Together they described a thing I did not want, and that thing was the cheapest way to satisfy the set. When you get a strange recurring artifact, it's usually not the model being weird — it's a solution to constraints you didn't realize you'd written.\n\nI had assumed a style was a layer: keep the concepts, change the lighting and rendering. It isn't.\n\nThe old dark bank drew things like *a stream of glowing tokens flowing into a dark portal*. You cannot photograph that. There's no documentary shot of a token stream, and asking a model for a photograph of one gets you back exactly the render you were trying to leave behind. Switching to photography meant rewriting **what each image depicts**, not just how it's lit — a real object, in a real place, that a person with a camera could have stood in front of.\n\nSo a style isn't a filter over a fixed set of ideas. Each style needs its own list of subjects, and changing style means redoing the conceptual work, not just the rendering pass.\n\nIf your app will ever charge money, check the licence of the image model *before* you generate a few hundred files. Several of the most popular and best-looking checkpoints are explicitly non-commercial, and that's not something you want to discover after the art is shipped and the store listing is written. There are permissively licensed models that are entirely good enough for this job — but the licence has to be a selection criterion up front, not a thing you look up later.\n\nThe new bank is live in the feed. Same idea as before — a pool per topic, and a given article always gets the same image, so the picture doesn't shuffle under you when the feed refreshes — but composed for the tile it actually lives in.\n\nYou can see it at ** realfeedapp.com**. If a cover ever looks wrong for its story, that's the failure mode I'm still hunting: the images are chosen per topic, not per article, so a strong photo attached to the wrong kind of story is the thing most likely to read as sloppy. Tell me which one and I'll pull it.", "url": "https://wpnews.pro/news/your-ai-cover-art-looks-great-until-it-s-a-thumbnail", "canonical_source": "https://dev.to/den0011/your-ai-cover-art-looks-great-until-its-a-thumbnail-3i7", "published_at": "2026-08-24 09:19:38+00:00", "updated_at": "2026-08-24 09:43:51.485519+00:00", "lang": "en", "topics": ["generative-ai", "ai-tools", "ai-products"], "entities": ["RealFeedApp"], "alternates": {"html": "https://wpnews.pro/news/your-ai-cover-art-looks-great-until-it-s-a-thumbnail", "markdown": "https://wpnews.pro/news/your-ai-cover-art-looks-great-until-it-s-a-thumbnail.md", "text": "https://wpnews.pro/news/your-ai-cover-art-looks-great-until-it-s-a-thumbnail.txt", "jsonld": "https://wpnews.pro/news/your-ai-cover-art-looks-great-until-it-s-a-thumbnail.jsonld"}}