Anti-Design, Texture and Nostalgia in 2026 Web Design
Spend an evening on Awwwards and then an evening clicking through small business sites, and the two halves of the web barely look related. One half is grain, odd crops, type set far too large and cursors that turn into little blobs. The other half is a hero photo, a centered headline, three icon cards and a blue button. Both are deliberate. They are built for different jobs.
This post is about the first half, the expressive end, and why it is pushing back so hard against the second. It covers anti-design, the return of texture, a softer kind of nostalgia, and custom cursors. It also covers where I would use each one and where I would leave them out, because I build for both halves: portfolio and studio work on one side, paving and roofing contractors on the other.
Why the pushback is happening now
Templates got good. Page builders, UI kits and now AI site generators all produce something competent in minutes, and competent looks the same everywhere. When every site has the same rounded cards and the same gradient blob behind the same sans-serif headline, looking competent stops telling a visitor anything about who made the site.
So designers who need to be remembered, rather than merely trusted, have started breaking things on purpose. The Wannathis 2026 trends roundup calls anti-design a major movement, built on unusual proportions, off-kilter spacing, raw textures and broken grid lines. IONOS puts nostalgic design and custom cursors on its 2026 list too. Neither source thinks this is the whole web. It is the end of the spectrum where personality is the product.
Anti-design, done on purpose
Anti-design gets mistaken for “no design.” It is closer to the opposite. To break a grid convincingly you need to know exactly where the grid is, because the break only reads as intentional when everything around it is under control.
The moves that show up most:
- Broken grids. An image that bleeds past its column, a headline that overlaps the photo below it, a section that starts at an odd offset.
- Type that fights. A heavy grotesk next to a fine serif, mixed sizes inside one sentence, words rotated or stacked.
- Unbalanced space. Huge gaps in one place, cramped clusters in another, so the eye is pushed around rather than guided gently.
- Visible construction. Exposed borders, raw HTML-looking links, default system fonts used as a choice rather than a fallback.
I wrote about the harder-edged version of this in Brutalism & Anti-Design, and about its blockier, high-contrast cousin in the neo brutalism guide. What has changed in 2026 is the mood. The raw, confrontational look of a few years ago has softened. The rule-breaking is still there, but it is warmer, more handmade, less shouty.
One rule I hold myself to: break the layout, never the interaction. A headline can overlap a photo. A navigation menu cannot be hard to find. Links still need to look clickable, focus states still need to be visible, and body text still needs to hit WCAG contrast. The chaos is for the eye, not for the hand.
Texture is back
Flat design scrubbed the web clean. Ten years on, a lot of designers miss the surface. Grain, paper, halftone dots, risograph-style misregistration, scanned scraps and photocopied edges are all back, and they do something flat color can’t: they make a screen feel like it has material to it.
My own site does this in a small way. The hero sections sit on an SVG noise layer that you mostly feel rather than see. It costs almost nothing, because it is generated in the browser rather than shipped as an image:
A grain overlay in a few lines
.grain::after {
content: "";
position: absolute;
inset: 0;
pointer-events: none; /* never block clicks */
opacity: 0.08; /* felt, not seen */
background-image: url("data:image/svg+xml,\
<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'>\
<filter id='n'><feTurbulence type='fractalNoise'\
baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/></filter>\
<rect width='100%' height='100%' filter='url(%23n)'/>\
</svg>");
}No image request, a tile that repeats seamlessly, and an opacity low enough that text contrast is unaffected. Animating the grain looks lovely and costs real battery on phones, so I leave it static.
Two cautions. Texture sitting behind body copy lowers effective contrast even when a checker says the colors pass, so keep it out from under paragraphs or keep it very faint. And big photographic textures are heavy. A 2MB paper scan on every section will undo whatever goodwill the texture bought you. I wrote more about that trade in UI Polish: Mastering Visual Realism.
Nostalgia, warm rather than literal
IONOS describes the current nostalgia wave as reviving 90s and Y2K styles. In practice, the best of it doesn’t revive anything literally. Nobody serious is bringing back spacer GIFs, visitor counters and table layouts. What comes back is the feeling: the warmth of an old operating system, the chunky confidence of a bitmap font, the slightly faded color of a printed photo, the pleasure of a site that feels like a place rather than a funnel.
The useful version borrows texture and attitude and keeps modern behavior underneath. A window-chrome frame around a case study, built with real responsive CSS. A pixel font for labels, with a readable face for everything you actually need to read. A dithered image treatment applied to photos that still load as optimized WebP or AVIF. Retro on the surface, current under the hood.
That distinction matters because nostalgia ages quickly when it is copied rather than interpreted. A pastiche of a 2003 site looks like a joke within a year. A site that feels warm and slightly old-fashioned, without quoting any particular year, can last.
Custom cursors are returning
IONOS notes that custom cursors, both static icons and animated effects, are making a comeback. On portfolio sites they never really left. A dot that grows over links, a cursor that turns into a “View” label over project thumbnails, a small trail: it is one of the cheapest ways to make a site feel handled with care.
It is also the easiest of these trends to get wrong. Some designers would happily see gimmicky cursors disappear, and I understand why. A cursor that lags behind the real pointer, hides the native one, or sticks around on a phone where there is no cursor at all is just friction with a nice animation.
Rules I use for custom cursors
- Only enable it on
(hover: hover) and (pointer: fine). Touch devices get nothing. - Keep the hotspot exactly where the real pointer is. Easing and trails go on a decorative follower, never on the thing that clicks.
- Hand back the system cursor over text inputs, selectable text and anything inside a form.
- Under
prefers-reduced-motion: reduce, drop the trail and the morphing. A static custom shape is fine. - Update position with
transforminsiderequestAnimationFrame, not by settingtopandlefton every mouse event.
Where this belongs, and where it doesn’t
This is the Awwwards end of the spectrum. It fits portfolios, studios, agencies, fashion, music, galleries, restaurants with a strong point of view, and personal projects. In all of those, the site is part of the product, and being remembered is worth some friction.
It does not fit a roofing contractor. Someone with water coming through the ceiling wants a phone number, proof the company is licensed and local, photos of real jobs and a form that works on their phone. A broken grid between them and the call button costs the business money. The same goes for most clinics, law firms, trades and B2B service companies. Their visitors are trying to get a task done, and the site’s job is to get out of the way.
That doesn’t mean those sites have to be bland. A conventional business site can borrow one element: a faint paper texture behind the testimonials, a characterful display face for headings, a warmer palette. One borrowed element gives it personality. Five turns it into a portfolio piece the owner never asked for.
A quick test I use before reaching for any of this: if a first-time visitor needed to do one thing on this page within ten seconds, would the expressive choice help or slow them down? On a portfolio, “remember who made this” is often that one thing. On a contractor site, it is “call now.”
Frequently Asked Questions
What is anti-design in web design?
A deliberate rejection of the tidy, grid-locked template look. It uses broken grids, clashing type, off-kilter spacing, raw textures and visible imperfection so the site feels made by a person.
Are custom cursors bad for usability?
They can be. Keep the hotspot where users expect it, fall back to the system cursor on touch devices and in text fields, and respect reduced-motion settings. Laggy cursors and hidden native pointers are the usual problems.
Should a business website use anti-design?
Usually not wholesale. Borrow one element, like a texture or a typeface, and keep navigation, contact details and forms conventional.
Is the 2026 nostalgia trend about copying old websites?
No. The version that works borrows warmth and texture from older interfaces and keeps modern, responsive, fast code underneath.
Want a site with more personality?
Tell me what you’re building and who it’s for. I’ll tell you honestly how far toward the expressive end it can go before it starts costing you leads.
Related Articles
Microinteractions, Motion and 3D
How to use motion and depth without making visitors wait for them.
Brutalism & Anti-Design
The raw, unpolished side of web design and where it came from.