Posts
Practical pieces on structure, voice, and shipping content for the web.
The em dash doesn't make your sentence more sophisticated
You're using em dashes to join thoughts that shouldn't be joined. They're not a substitute for structural decisions about how sentences relate.
Draft mode means someone else will publish it
If you're the only person working on your site, draft mode might be hiding a workflow problem you don't actually have.
Write the page title before you write the page
The title isn't decoration you add at the end. It's the constraint that keeps everything else on track.
Write the redirect before you delete the page
Deleting a page without planning the redirect means broken links and lost traffic. Decide where visitors should land before you hit delete.
Search result snippets aren't auto-generated magic
Most CMSs let search engines pick whatever text they want for your result snippet. That's a choice you made by leaving the meta description field empty.
Content audits start with what you can count
You don't need a spreadsheet with forty columns. Start by counting what's actually there, then decide what matters.
Set character limits before users hit them
Field-length constraints aren't validation failures. They're decisions you make visible while someone is still typing.
Write button labels that complete the user's sentence
Button text should finish the thought your interface started. If users have to guess what happens next, your label failed.
Tag taxonomy before you tag a single post
Your CMS will let you create tags on the fly. That doesn't mean you should.
Write error messages before the error happens
You can't write a decent error message in the moment someone breaks something. Draft them during setup, when your head is clear.
Validation messages that tell users what to fix
Error messages that say "invalid format" waste everyone's time. Write validation copy that points to the actual fix.
Decide what happens when users leave a field blank
Every form field on your site needs a plan for what happens when someone skips it. That plan is content work, not a developer problem.
Alt text for people who won't see the image
Write descriptions that work when the image doesn't load, not captions that assume it did.
Empty states are instructions, not decoration
What your CMS shows when a field or section is empty shapes how people use it. Write those moments like documentation.
Batch upload your images once you've named them all
Upload one image, name eight more, upload the next one — you're wasting time on context switching. Name everything first, then upload the set.
Image file names before you upload them
Your image management problem starts when you click 'choose file' with a filename like IMG_3847.jpg. Name it right the first time.
Placeholder text is a prompt, not an example
What you put in empty fields shapes what people type. Most placeholder text just wastes the opportunity.
Write meta descriptions people actually click
Meta descriptions don't affect rankings, but they affect whether your ranked page gets the click. Write them like you're competing for attention, not keyword density.
Revision dates remind you who changed what when
Adding a simple last-updated field to your CMS catches stale content before readers do and gives your team a shared reference point.
Section breaks signal shifts, not just visual rhythm
Readers need structural cues to know when you're changing gears. A section break isn't decoration—it's a visible promise that something new is starting.
Default sort order is an editorial decision
How you order lists, tables, and archives shapes what users think matters. Set defaults deliberately, not by accident.
Mark your required fields before users start typing
Required field indicators work when they appear before the user makes a decision, not after. Visual consistency prevents form abandonment.
Paragraph breaks are structural decisions, not pauses
Most writers treat paragraph breaks like breath marks in sheet music. That's backwards—breaks are load-bearing structure that controls how readers process information.
Write the boring sentence that makes the next one work
Good web writing needs setup sentences that don't dazzle. They hold the door open so the important line can walk through.
Write the list item before you decide it's a list
Formatting content as a list too early obscures whether the items belong together or even need bullets at all.
Footer links are last-resort navigation
If people need your footer to find something critical, your main navigation already failed. Treat footers as cleanup, not strategy.
Version control for content isn't just for developers
Track what changed, when, and why — without learning Git or relying on CMS revision logs that expire.
Write headings before you write the section
Most people write the paragraph first, then add a heading to label it. Reverse the sequence and the work gets easier.
Consistent terminology beats clever synonyms
Using different words for the same thing doesn't improve your writing. It confuses people and breaks their search attempts.
Publish schedules reveal how you actually work
Your editorial calendar isn't aspirational decoration. It's infrastructure that either matches your team's real capacity or creates friction you'll blame on laziness.
Stop writing introductions that repeat the heading
Your first sentence should move the idea forward, not restate what the reader just read in larger type.
File names matter before you upload
Your image file names become part of your site's structure. Name them clearly once instead of renaming them later in the CMS.
Content chunks that actually chunk
Breaking content into sections isn't just visual spacing—it's a structural decision that determines whether your page can be scanned, understood, and used.
Choose your default publish state and stick to it
Your CMS offers draft and published states for a reason. Pick which one new content starts in, make it consistent across your site, and stop creating confusion.
Link text that survives getting skimmed
Most people never read the sentence around your link. Write anchors that work in isolation or stop pretending accessibility matters.
Preview mode is for checking your work, not doing it
If you're writing in preview mode, you're letting visual polish interrupt your thinking. Draft with the CMS tools that keep structure visible.
Your style guide doesn't need a tone section
Most small sites waste time documenting voice when they need usage rules. Write down decisions that prevent inconsistency, not aspirations.
Captions are part of the image decision
If you can't explain why an image is on the page, you probably don't need it. Captions force that honesty.
Sentence length variation isn't a style choice
Monotonous rhythm makes people quit reading. Mix short and long sentences on purpose, not by accident.
Navigation labels are interface copy, not branding
Your navigation isn't a place to be clever. It's wayfinding infrastructure that fails the moment someone has to guess what a link does.
Stop resizing images by eye
Guessing at image dimensions wastes time and produces inconsistent layouts. Define your sizes once, then enforce them at upload or in templates.
Field-level help text that prevents mistakes
Most CMS help text just repeats the field label. Effective help text shows format expectations, gives examples, and stops errors before they happen.
Subheadings that actually subdivide
Most subheadings just restate the topic. Good ones show structure, set expectations, and let scanners jump straight to the part they need.
Draft in plain text, format in the CMS
Separating writing from formatting reduces friction and produces cleaner content. Write first, structure second, style never.
Page titles for people who don't read your nav
A page title needs to work when someone lands there from search, a link, or a bookmark — without any surrounding context. Here's how to write titles that orient people instantly.
Content templates aren't forms to fill in
Templates should guide decisions, not replace them. Here's how to build content templates that actually improve consistency without flattening everything into Mad Libs.
Redirects are documentation your future self will need
Every redirect you set up is a tiny piece of institutional memory. Treat them like the load-bearing infrastructure they are, not cleanup tasks.
The second paragraph is where you lose people
Your intro hooks them, but paragraph two is where readers decide if you're worth their time. Here's what actually keeps them reading.
Breadcrumbs that actually tell users where they are
Most breadcrumb trails break at the worst moment—when users need orientation. Here's how to build navigation that survives real content sprawl.
Edit for the person who arrives at 4pm on Friday
Your reader is tired, distracted, and has six other tabs open. If your page demands their best attention, they'll leave.
Metadata inheritance saves hours you're currently wasting
Stop filling the same fields on every page. Let parent pages pass values down and override only what changes.
Taxonomy before taxonomy: name your buckets once
Most sites drown in overlapping categories because no one sat down first. Define your buckets before you file a single page.
URL structure you can maintain for ten years
Good URL patterns survive redesigns and organizational changes. Plan them with durability, not cleverness.
Alt text audit in fifteen minutes
A systematic sweep through image descriptions that actually helps search and screen readers, without overthinking or AI slop.
One H1 per page is not a rule
The single-H1 myth survives because it used to matter and now it's just cargo cult. Current HTML and search care about hierarchy, not counting.
Build pages people finish
If the reader bounces at paragraph two, the page did not fail at SEO. It failed at being a page.
CMS guardrails for staff who should not design
Editors need power over words and images — not over the gravity of the layout.
Write for scanners without lying
Scannability is not clickbait. It is honest labeling of useful sections.
The editing pass that ships
Stop polishing forever. Use a brutal checklist once, then publish.
Images that earn their kilobytes
A hero image is not decoration. It is either evidence, atmosphere with intent, or dead weight.
Information architecture before voice
Personality is paint. IA is the load-bearing walls. Paint the walls after they stand.