Canada Post error messaging framework
The challenge: A messy error messaging landscape
When I was asked to refine error message microcopy at Canada Post back in 2022, I assumed it would be a simple task—just tweak some wording for clarity. But as I reviewed the existing messages, a deeper issue emerged:
-
Inconsistent phrasing → Some messages were directive, while others were passive or vague (e.g., “Your form contains X errors” vs. “Please review these X issues to continue”).
-
Lack of structure → Some experiences had field-specific errors, while others only provided general notifications.
-
No shared guidelines → UX writers had no standardized framework for writing error messages,

My approach: Content strategy & cross-team collaboration
Recognizing the need for alignment, I initiated a workshop with the Content Operations team to define a standardized error messaging framework.
How I tackled the problem:
✅ Audited existing error messages → Identified patterns, inconsistencies, and gaps.
✅ Facilitated a content workshop → Brought together UX writers to discuss best practices.
✅ Created a structured error messaging framework → Established tone, phrasing rules, and message hierarchy.

The solution: A structured, scalable error messaging framework
To ensure clarity and consistency, I worked with the Content Operations team to develop a framework for categorizing and structuring error messages.
The framework focused on two key dimensions:
📌Categorizing errors by type of failure & impact
📌Categorizing errors by interruption patterns

The final output: A unified internal messaging table
Once these principles were defined, as a team, we created a comprehensive internal messaging table that:
✅ Standardized messaging guidelines for UX writers across all Canada Post products.
✅ Provided a reference for structuring error messages based on failure type and user impact.
✅ Ensured cross-team alignment, making it easier for designers, developers, and product managers to implement consistent messaging.

Final thoughts: Balancing consistency with brand voice & reality
While the new framework brought much-needed clarity and alignment, content decisions are never one-size-fits-all. One ongoing debate? The use of "sorry" in error messages.
Although I believe removing the apologies would create a more direct, action-oriented experience, others believed "sorry" added a layer of empathy, especially given Canada Post’s brand voice and customer expectations. Ultimately, we didn’t eliminate it entirely—but the conversation itself highlighted an important takeaway: consistency matters, but so does adaptability. After all, we’re a Canadian company, and let’s be honest—apologizing is practically part of our national identity. 🍁
That said, even with a solid framework, we recognize that microcopy will still vary across different experiences. Why?
1️⃣ Context matters. Different error scenarios require different levels of detail and tone.
2️⃣ The microcopy library is a mess. With thousands of legacy error messages, no one has the time to check every single one for alignment—or update them all to match the framework.
📌 Lesson Learned: A framework provides guidance, not rigid rules—and great UX writing requires balancing clarity, brand identity, and real-world constraints.