Write a clear, empathetic EOL announcement with rationale, customer impact, and next steps. Use when retiring a product, feature, or plan without creating avoidable confusion.
git clone https://github.com/deanpeters/Product-Manager-Skills.git--- name: eol-message argument-hint: "[product or feature being retired]" description: Write a clear, empathetic EOL announcement with rationale, customer impact, and next steps. Use when retiring a product, feature, or plan without creating avoidable confusion. intent: >- Craft a clear, empathetic End-of-Life (EOL) message that communicates product or feature discontinuation, explains the rationale, addresses customer impact, provides transition support, and positions the replacement solution. Use this to maintain customer trust during difficult transitions and reduce churn by demonstrating care and offering a clear path forward. type: component --- ## Purpose Craft a clear, empathetic End-of-Life (EOL) message that communicates product or feature discontinuation, explains the rationale, addresses customer impact, provides transition support, and positions the replacement solution. Use this to maintain customer trust during difficult transitions and reduce churn by demonstrating care and offering a clear path forward. This is not a generic sunset announcement—it's a customer-centric communication that acknowledges loss while framing the change as progress. ## Input **Works best with:** What's being retired (product, feature, or plan) and roughly when. **Also useful:** The rationale, affected customer segments, migration or replacement path, and support commitments. Anything supplied with the invocation itself — text after the skill name, a pasted context dump, or an appended `ARGUMENTS:` line — counts as answers already given. Use it and skip whatever it covers; don't re-ask. **Arriving empty-handed? That works too.** The skill asks for the what/when/why before drafting — an EOL message without a stated rationale and next step reads as abandonment. **Example invocation:** `Draft an EOL message: retiring our legacy reporting module Dec 31, replaced by the new analytics dashboard; 400 accounts affected.` ## Key Concepts ### The EOL Messaging Framework An effective EOL message balances honesty about the change with empathy for customer impact. It includes: 1. **Company context:** Who you are and your commitment to customers 2. **The announcement:** What's being discontinued and what's replacing it 3. **The rationale:** Why this decision benefits customers (not just the business) 4. **Current product context:** What the product was and who it served 5. **Customer impact:** How this affects users (acknowledge the disruption) 6. **Transition solution:** What the replacement is and how it improves on the old 7. **Support measures:** How you'll help customers migrate 8. **Timeline:** Key dates and milestones 9. **Call to action:** Next steps and contact info ### Why This Works - **Empathy-first:** Acknowledges customer disruption before justifying the decision - **Clarity:** No ambiguity about what's changing and when - **Support-focused:** Shows you're not abandoning customers mid-transition - **Future-oriented:** Frames change as progress, not loss ### Anti-Patterns (What This Is NOT) - **Not a terse shutdown notice:** "We're discontinuing Product X. Goodbye." - **Not business-centric:** Don't lead with "This reduces our costs" - **Not vague:** "Soon" is not a timeline - **Not defensive:** Don't blame customers ("low usage forced us to shut down") ### When to Use This - Discontinuing a product, feature, or service - Migrating customers from legacy to new platform - Sunsetting an acquisition target's product - Deprecating a technology stack or API ### When NOT to Use This - For minor feature tweaks (don't over-communicate small changes) - Before you have a transition plan (communicate *after* you know how you'll support customers) - If you're secretly hoping customers won't notice (be transparent) --- ## Application Use `template.md` for the full fill-in structure. ### Step 1: Gather Context Before drafting, ensure you have: - **Product being discontinued:** What specifically is ending? - **Replacement solution:** What's replacing it (if anything)? - **Timeline:** Key dates (announcement, feature freeze, shutdown, data export deadline) - **Customer impact:** How many users affected? What workflows disrupted? - **Support plan:** Migration support, training, discounts, data export tools - **Rationale:** Why is this happening? (Technology obsolescence, strategic shift, consolidation, etc.) **If missing context:** Don't send the message until you have a complete transition plan. Customers will ask "What do I do now?"—you must have an answer. --- ### Step 2: Draft the Product Transition Narrative #### Company Context Establish who you are and your commitment: ```markdown ### Product Transition Narrative **We are:** [Describe the company and its relationship to the product being phased out] - [Key point about company's commitment to customers] - [Key point about company's product evolution] - [Key point about company's future vision] ``` **Example:** ```markdown **We are:** Acme Workflows, a workflow automation platform serving 50,000 small businesses - We're committed to helping you save time and focus on what matters - We continuously evolve our product based on your feedback and technological advances - We're building toward a future where automation is accessible, powerful, and simple ``` --- #### The Announcement Be clear and direct: ```markdown **Announcing:** - [Single sentence that clearly states the EOL of the product and introduces its replacement] ``` **Example:** - "We are discontinuing Acme Workflows Classic on December 31, 2026, and migrating all customers to Acme Workflows Pro." --- #### The Rationale (Customer-Benefit-Focused) Explain *why* this benefits customers: ```markdown **Because:** - [Reason 1: e.g., technological advancements] - [Reason 2: e.g., improved performance] - [Reason 3: e.g., better alignment with customer needs] **Which means for you:** - [Describe the impact and benefits from the customer's perspective] ``` **Example:** ```markdown **Because:** - Acme Workflows Classic runs on outdated infrastructure that limits performance and scalability - Acme Workflows Pro is built on modern technology that enables faster automation, better integrations, and real-time collaboration - Consolidating to one platform allows us to invest 100% of our engineering resources in features you've requested **Which means for you:** - Faster automation execution (3x speed improvement) - 50+ new integrations with tools you already use - Access to new features like real-time collaboration and mobile app ``` --- ### Step 3: Provide Current Product Context Acknowledge what's being lost: ```markdown ### Current Product Context **Our product** [name of the product being discontinued] - **is a** [brief description of the product and its primary function] - **that has served** [target customer/user] for [duration or timeframe] - **by providing** [key benefits or solutions the product offered] ``` **Example:** ```markdown **Our product** Acme Workflows Classic - **is a** workflow automation tool that helps small businesses eliminate repetitive tasks - **that has served** over 20,000 customers for 8 years - **by providing** reliable, straightforward automation without requiring technical expertise ``` --- ### Step 4: Acknowledge Customer Impact Be honest about disruption: ```markdown ### Customer Impact **We understand that this may affect you by:** - [Potential impact 1 on customer operations or processes] - [Potential impact 2 on customer operations or processes] - [Potential impact 3 on customer operations or processes (if applicable)] ``` **Example:** ```markdown **We understand that this may affect you by:** - Requiring time to migrate workflows from Classic to Pro - Learning new features and interface changes - Updating integrations or API connections if you've customized workflows ``` --- ### Step 5: Present the Transition Solution Use positioning statement format (reference `skills/positioning-statement/SKILL.md`): ```markdown ### Transition Solution **For** [target customer/user affected by the EOL] - **that currently use** [name of the product being phased out] - [name of the replacement product] - **is a** [definition of the replacement product category] - **that** [statement of benefit to the user, focusing on continuity and improvements] ### Differentiation and Continuity - **Like** [product being phased out], - [name of the replacement product] - **provides** [how the replacement maintains key benefits of the old product] - **while also offering** [new benefits or improvements] ``` **Example:** ```markdown ### Transition Solution **For** small business owners - **that currently use** Acme Workflows Classic - Acme Workflows Pro - **is a** next-generation workflow automation platform - **that** maintains all the simplicity and reliability you love while adding 3x faster performance, 50+ new integrations, and real-time collaboration ### Differentiation and Continuity - **Like** Acme Workflows Classic, - Acme Workflows Pro - **provides** easy-to-build automations without coding, reliable execution, and straightforward pricing - **while also offering** 3x faster workflows, mobile app access, real-time team collaboration, and integrations with tools like Slack, Asana, and Notion ``` --- ### Step 6: Outline Support Measures and Timeline #### Support Measures ```markdown ### Support and Next Steps **To ensure a smooth transition, we will:** - [Support measure 1, e.g., "Provide 1-on-1 migration assistance for all customers"] - [Support measure 2, e.g., "Automatically migrate your workflows (with your approval)"] - [Support measure 3, e.g., "Offer a 3-month discount on Acme Workflows Pro for existing customers"] ``` --- #### Timeline ```markdown ### Timeline - [Key date 1 and associated milestone, e.g., "March 1, 2026: Migration tool available"] - [Key date 2 and associated milestone, e.g., "September 1, 2026: Acme Workflows Classic becomes read-only"] - [Key date 3 and associated milestone, e.g., "December 31, 2026: Acme Workflows Classic fully discontinued, data export deadline"] ``` **Quality checks:** - **Sufficient lead time:** Customers need time to plan (6-12 months is typical) - **Clear milestones:** When does functionality freeze? When does shutdown happen? - **Data export deadline:** When do they lose access to their data? --- ### Step 7: Provide Clear Next Steps ```markdown ### Call to Action - [Clear next steps for customers, e.g., "Log in to your account to start the migration wizard"] - [Contact information for questions or assistance, e.g., "Contact our support team at [email protected] or call 1-800-ACME-HELP"] ``` --- ## Examples See `examples/sample.md` for a full EOL message example. Mini example excerpt: ```markdown **Announcing:** We are discontinuing Acme Classic on Dec 31, 2026 **Because:** Legacy infrastructure limits performance **Which means for you:** Faster automation + new integrations ``` ## Common Pitfalls ### Pitfall 1: Business-Centric Rationale **Symptom:** "We're discontinuing Product X to reduce costs and consolidate our portfolio." **Consequence:** Customers feel like collateral damage in a business decision. **Fix:** Frame rationale around customer benefits: "We're consolidating to Product Y so we can invest 100% of resources in features you've requested." --- ### Pitfall 2: Vague Timeline **Symptom:** "Product X will be discontinued soon." **Consequence:** Customers can't plan. Anxiety and churn increase. **Fix:** Provide specific dates: "March 1: Migration tool available. December 31: Full shutdown." --- ### Pitfall 3: No Support Plan **Symptom:** "You'll need to migrate to Product Y. Good luck!" **Consequence:** Customers feel abandoned. High churn risk. **Fix:** Offer migration support: "1-on-1 assistance, auto-migration tool, 3-month discount, training resources." --- ### Pitfall 4: Ignoring Customer Impact **Symptom:** Message jumps from announcement to "Here's the new product!" **Consequence:** Customers feel their concerns aren't acknowledged. **Fix:** Explicitly acknowledge impact: "We understand this requires time to migrate and learn new features." --- ### Pitfall 5: Terse or Defensive Tone **Symptom:** "Due to low usage, we're shutting down Product X." **Consequence:** Sounds like you're blaming customers. **Fix:** Be empathetic and forward-looking: "We're consolidating to focus on the future of automation." --- ## References ### Related Skills - `skills/positioning-statement/SKILL.md` — Informs the transition solution positioning - `skills/problem-statement/SKILL.md` — Helps frame the customer impact section - `skills/proto-persona/SKILL.md` — Defines affected customers ### External Frameworks - Crisis communication best practices — Transparency, empathy, action - Customer success playbooks — Retention during product transitions ### Dean's Work - EOL Messaging Template (created for product lifecycle management) ### Provenance - Adapted from `prompts/eol-for-a-product-message.md` in the `https://github.com/deanpeters/product-manager-prompts` repo. --- **Skill type:** Component **Suggested filename:** `eol-message.md` **Suggested placement:** `/skills/components/` **Dependencies:** References `skills/positioning-statement/SKILL.md`, `skills/problem-statement/SKILL.md`, `skills/proto-persona/SKILL.md`
No install command available. Check the GitHub repository for manual installation instructions.
git clone https://github.com/deanpeters/Product-Manager-Skills/tree/main/skills/eol-messageCopy the install command above and run it in your terminal.
Launch Claude Code, Cursor, or your preferred AI coding agent.
Use the prompt template or examples below to test the skill.
Adapt the skill to your specific use case and workflow.
Draft a clear and empathetic end-of-life (EOL) announcement for [PRODUCT/FEATURE/PLAN NAME] in [COMPANY]. Include the retirement date, rationale for the decision, direct customer impact, and actionable next steps for affected users. Address concerns about alternatives or migration paths. Keep the tone professional yet compassionate.
### End-of-Life Announcement: Legacy API v1.0 **Effective Date:** December 31, 2024 Dear [COMPANY] Customers, We are writing to inform you that [COMPANY] will officially retire **Legacy API v1.0** on **December 31, 2024**. This decision was made to streamline our infrastructure, enhance security, and focus our resources on delivering a more robust and scalable API platform for the future. **What This Means for You:** - All requests made to **api.legacy.company.com/v1** after December 31, 2024, will return a `410 Gone` response. - Your existing integrations using v1.0 will continue to function until the retirement date, but we strongly recommend migrating to the newer **API v2.0** as soon as possible. - No new features or security patches will be developed for v1.0. **Next Steps:** 1. **Review the Migration Guide:** [Link to documentation] – This guide provides step-by-step instructions for transitioning from v1.0 to v2.0. 2. **Test Your Integrations:** Use our sandbox environment to validate your migration before December 31. 3. **Contact Support:** If you encounter any challenges or have questions, our support team is available at [[email protected]]. We understand that transitions like this can be disruptive, and we appreciate your partnership as we work to improve our services. Thank you for your understanding and cooperation. Best regards, The [COMPANY] Team
skills-collection
Take a free 3-minute scan and get personalized AI skill recommendations.
Take free scan