How to Create a Plain-Text Version of HTML Email
A plain text version of HTML email keeps your message readable without HTML. Learn how to create, format, test, and send both versions correctly.

Md. Yaikub Hossain Razon
A plain text version of HTML email is a text-only alternative that carries the same core message without images, styled buttons, columns, or visual formatting. Create it by keeping the essential copy, converting linked text into readable URLs, preserving personalization and unsubscribe details, and sending it alongside the HTML version.
HTML and plain text are commonly packaged together using multipart/alternative. This allows the receiving email client to choose the version it can or prefers to display.
This guide is for marketers, email developers, and teams building HTML campaigns. You will learn how to create a clean plain-text alternative, format it properly, handle links and personalization, and test both versions before sending.
What Is a Plain-Text Version?
A plain-text version of HTML email is a text-only representation of the same email message.
It contains normal characters, line breaks, readable URLs, personalization, and essential footer information.
It does not contain:
-
HTML tags
-
CSS
-
Images
-
Styled buttons
-
Background colors
-
Columns
-
Custom fonts
-
Layout tables
For example, an HTML email may display:
20% Off This Weekend
Shop our latest collection.
SHOP NOW
The plain-text version could look like this:
20% OFF THIS WEEKEND
Shop our latest collection.
Shop now:
https://example.com/sale
The goal is not to recreate the visual design.
The goal is to preserve the message.
Why Create a Plain-Text Version?
A plain-text version gives recipients another readable representation of your email.
It can be useful when an email client, security setting, system, or user preference favors text instead of HTML.
It also gives your team another way to review the actual campaign message.
Converting a designed email into plain text can reveal:
-
unclear content order
-
image-dependent messaging
-
missing URLs
-
vague CTA wording
-
repeated navigation
-
incorrect offer details
-
missing unsubscribe information
That makes plain-text review useful even when most recipients receive the HTML design.
HTML vs Plain Text Email
HTML and plain-text email communicate the same message in different presentation formats.
|
Feature |
HTML Email |
Plain-Text Version |
|
Images |
Yes |
No |
|
Styled buttons |
Yes |
No |
|
Colors |
Yes |
No |
|
Columns |
Yes |
No |
|
Custom typography |
Yes |
No |
|
Hidden hyperlinks |
Yes |
No |
|
Visible URLs |
Optional |
Usually |
|
Personalization |
Yes |
Yes |
|
Main message |
Yes |
Yes |
|
Unsubscribe information |
Yes |
Yes |
The content should remain consistent.
If the HTML version says a sale ends Friday, the plain-text alternative should also say Friday.
The design can change between versions.
The meaning should not.
How Does Multipart Email Work?
HTML and plain text are commonly sent inside one message using multipart/alternative.
The receiving email software can then choose which representation to display.
A common structure contains:
-
text/plain
-
text/html
The plain-text part appears first, followed by the richer HTML representation.
A simplified MIME message looks like this:
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="email-boundary"
--email-boundary
Content-Type: text/plain; charset="UTF-8"
Your plain-text content goes here.
--email-boundary
Content-Type: text/html; charset="UTF-8"
<html>
<body>
Your HTML content goes here.
</body>
</html>
--email-boundary--
Most email service providers and sending libraries handle this structure automatically.
You usually do not need to write the MIME boundaries yourself.
Your main job is to make sure the plain-text content is accurate and readable.
How to Create a Plain-Text Version
The best workflow is to create the final HTML email first and then convert its essential content into a simple text reading order.
You can build or edit the HTML campaign using the MailEditor drag-and-drop HTML email builder before preparing the plain-text alternative in your sending platform.
Step 1: Finish the HTML Email
Complete the HTML version first.
Confirm:
-
Headline
-
Body copy
-
Product information
-
Prices
-
Dates
-
Offer details
-
CTA destination
-
Contact information
-
Unsubscribe information
Creating the text version after the HTML is finalized reduces the chance of content differences.
If you already have a coded email, read MailEditor’s guide on how to edit a custom HTML email template without coding.
Step 2: Extract the Core Content
Read your HTML email from top to bottom.
Keep information that still matters when all visual design disappears.
Usually keep:
-
Headline
-
Important body copy
-
Product names
-
Prices
-
Promotional offers
-
Coupon codes
-
Dates
-
CTA destinations
-
Customer support details
-
Footer information
-
Unsubscribe option
Purely decorative text or visual labels may not need to appear.
Step 3: Remove HTML Formatting
Strip away:
-
HTML tags
-
CSS
-
Tables used for layout
-
Image markup
-
Button styling
-
Spacer elements
-
Tracking pixels
Do not leave HTML fragments such as:
<td>
<div>
<br>
<a href=
The finished version should look like normal writing.
Step 4: Rebuild the Reading Order
HTML email can use columns.
Plain text cannot depend on that visual structure.
Convert the content into one logical vertical reading order.
For example:
HTML layout:
Product image | Product name
| Description
| Price
| CTA
Plain-text version:
COTTON SHIRT
Lightweight everyday shirt.
Price: $39
View product:
https://example.com/shirt
The reader should understand the content without seeing the original design.
Step 5: Convert Buttons to URLs
HTML buttons become normal text in the plain-text version.
Do not leave only:
SHOP NOW
Instead, write:
Shop now:
https://example.com/shop
The label explains the action.
The URL gives the recipient a usable destination.
Step 6: Clean Repeated Links
Automatically generated text can contain too many URLs.
They may come from:
-
Header navigation
-
Logos
-
Social icons
-
Product images
-
Footer menus
-
Repeated CTA buttons
Review the list manually.
Keep links that support the purpose of the campaign.
A promotional email may need:
-
Primary offer link
-
Account link
-
Customer support link
-
Preference link
-
Unsubscribe link
It may not need every decorative navigation link.
Step 7: Preserve Important Details
Make sure important information does not disappear with the design.
Check:
-
Discount amount
-
Coupon code
-
Product name
-
Price
-
Event date
-
Event time
-
Deadline
-
Shipping terms
-
Contact details
-
Required disclosures
The plain-text version should make sense on its own.
Step 8: Preserve Personalization
Keep personalization variables when your email platform supports them.
For example:
Hi {{first_name}},
Your actual syntax depends on the sending platform.
Mailchimp, Klaviyo, HubSpot, Salesforce, and other platforms may use different personalization formats.
Do not manually change the merge-tag syntax unless your ESP requires it.
Always test the final version.
Step 9: Keep Unsubscribe Information
The plain-text version should retain the essential preference and unsubscribe information used by your campaign.
For example:
You are receiving this email because you subscribed to Example Brand.
Manage preferences:
https://example.com/preferences
Unsubscribe:
{{unsubscribe_url}}
Example Brand
123 Example Street
Example City
Use the real unsubscribe variable required by your ESP.
Step 10: Add It to Your Sending Platform
Many platforms can automatically generate plain text from HTML.
Others allow you to:
-
Edit the generated version
-
Paste custom plain text
-
Supply a separate text body through an API
-
Send both versions through a mail library
Automatic generation is useful.
However, always review the result before sending.
Auto-Generated vs Manual Plain Text
Auto-generated text saves time, while manual review improves readability.
|
Method |
Best For |
What to Review |
|
Auto-generated |
Simple emails |
URLs and spacing |
|
Auto-generated + edited |
Most campaigns |
Links, hierarchy, footer |
|
Fully custom |
Complex emails |
Reading order and content parity |
|
API-generated |
Developer workflows |
MIME, encoding, variables |
For most marketing teams, a practical process is:
Create HTML → Generate plain text → Review → Edit → Test
You usually do not need to write every plain-text version from scratch.
How to Format Plain-Text Email
Plain-text formatting depends on spacing and clear writing.
You cannot rely on visual CSS hierarchy.
Use Clear Headings
For example:
NEW ARRIVALS
Explore our newest products.
Or:
YOUR ORDER UPDATE
Your package is now on the way.
Simple headings make longer text easier to scan.
Use Short Paragraphs
Avoid large blocks of text.
Instead of:
Welcome to our latest newsletter where we are sharing several new products and company updates that we hope you will enjoy...
write:
NEW THIS WEEK
We added three new products to the collection.
Explore them here:
https://example.com/new
Use Blank Lines
Whitespace replaces much of the visual spacing used in HTML.
Separate:
-
Headings
-
Paragraphs
-
URLs
-
Offers
-
Footer information
with simple blank lines.
Use Simple Separators
For longer emails, you can use:
Do not overuse decorative characters.
Avoid ASCII Layouts
Do not try to recreate columns using spaces, pipes, or complex character patterns.
They may break when displayed with different fonts or screen widths.
Use one simple vertical flow instead.
How Should Links Look?
A plain-text version cannot hide URLs behind styled link text.
Make important destinations visible.
Good:
Read the complete guide:
https://example.com/guide
Less useful:
https://example.com/guide?id=12345&utm_source=email&utm_campaign=september_launch
Your ESP may rewrite URLs when click tracking is enabled.
That is normal.
Focus on whether the delivered version remains understandable.
What Happens to Images?
Images do not appear as visual content in a plain-text email body.
Do not try to recreate them using characters.
Instead, preserve any important information the image communicates.
For example, imagine a banner image contains:
FREE SHIPPING THROUGH FRIDAY
The plain-text version should include:
FREE SHIPPING THROUGH FRIDAY
Shop now:
https://example.com
This is why important campaign information should not exist only inside images.
Does Image Blocking Show Plain Text?
No.
Image blocking and plain-text alternatives solve different problems.
If an email client displays the HTML version but blocks images, it normally continues displaying the HTML message without those images.
It does not automatically switch to the text/plain part just because images are unavailable.
Your HTML email should therefore still include:
-
Live text
-
Useful image alt text
-
Clear content structure
-
Readable CTA copy
-
Sensible fallbacks
The plain-text version remains a separate alternative representation.
Plain-Text Conversion Example
Here is a simple before-and-after example.
HTML Email
Imagine the designed email says:
New Season, New Styles
Refresh your wardrobe with lightweight essentials.
Shop the Collection
Free shipping ends September 30.
Support | Instagram | Account | Unsubscribe
Plain-Text Version
NEW SEASON, NEW STYLES
Refresh your wardrobe with lightweight essentials.
Shop the collection:
https://example.com/collection
Free shipping ends September 30.
Need help?
https://example.com/support
Manage your account:
https://example.com/account
Unsubscribe:
{{unsubscribe_url}}
Example Brand
123 Example Street
Example City
Notice what was removed:
-
Image styling
-
Button styling
-
Social icons
-
Decorative navigation
-
Layout formatting
The important information remained.
That is the goal of a strong plain-text alternative.
Keep HTML and Plain Text in Sync
Both versions should contain the same essential message.
Review the plain-text version whenever you change:
-
Offer amount
-
Price
-
Campaign deadline
-
Event date
-
CTA URL
-
Product details
-
Legal text
-
Personalization
-
Footer information
A useful rule is:
If a change affects what the recipient understands or does, update both versions.
How to Test Plain-Text Email
Testing should happen inside the actual sending workflow.
Do not stop after reviewing a text file.
Step 1: Preview the Text Version
Read it from beginning to end.
Check:
-
Reading order
-
Paragraph spacing
-
URLs
-
Personalization
-
Offer details
-
Footer
-
Unsubscribe content
Step 2: Send a Test Email
Send a real test using the same ESP or delivery system used for production.
This helps reveal formatting and personalization issues.
Step 3: Inspect the Message Source
For technical QA, inspect the raw email source.
Look for:
Content-Type: multipart/alternative
Then confirm that both sections exist:
Content-Type: text/plain
and:
Content-Type: text/html
Step 4: Compare Both Versions
Verify that both contain matching:
-
Headline
-
Offer
-
Dates
-
CTA destination
-
Personalization
-
Footer information
Step 5: Test Again After Changes
Meaningful campaign changes should trigger another test.
For broader HTML rendering QA, follow MailEditor’s guide on how to test email templates across devices.
Plain-Text QA Checklist
Before sending, confirm:
-
A plain-text version exists.
-
The core message matches the HTML version.
-
Prices and offers match.
-
Campaign dates match.
-
Buttons became descriptive URLs.
-
Important links work.
-
Excess navigation links were removed.
-
Personalization variables are correct.
-
Unsubscribe information is present.
-
Contact information is correct.
-
Paragraphs are easy to scan.
-
No raw HTML tags remain.
-
Important information does not depend on images.
-
A test message was sent.
-
MIME structure was checked when required.
Common Plain-Text Mistakes
A good plain-text version should be simple, accurate, and easy to scan.
Avoid these common issues.
Copying Raw HTML
Do not paste HTML source code directly into the text field.
Convert the content rather than the markup.
Removing Too Much Content
Do not remove important information just because it appeared inside a visual component.
Preserve the meaning.
Keeping Every Link
Automatically generated text may contain dozens of unnecessary links.
Remove decorative or repetitive links when your sending platform allows editing.
Changing the Message
The plain-text version should not become a separate campaign.
Both versions should communicate the same core information.
Forgetting Personalization
Test merge tags in both HTML and plain text.
Forgetting the Footer
Keep essential contact, preference, and unsubscribe information.
Trusting Automation Without Review
Automatic plain-text generation is useful.
However, a short manual review can improve:
-
Link clarity
-
Spacing
-
Reading order
-
CTA labels
-
Footer structure
Does Plain Text Improve Deliverability?
A plain-text version should be viewed as good email-development practice rather than a guaranteed inbox-placement technique.
It provides an alternative representation of your message and supports a complete multipart email structure.
Email deliverability depends on many other factors, including:
-
Sender authentication
-
Domain reputation
-
IP reputation
-
List quality
-
Complaint rate
-
Bounce rate
-
Subscriber engagement
-
Sending patterns
-
Message quality
Include plain text because it improves message completeness and compatibility.
Do not treat it as a single deliverability shortcut.
How MailEditor Fits the Workflow
MailEditor focuses on building, importing, visually editing, reusing, and exporting HTML emails.
A practical workflow is:
-
Create or import your HTML email in MailEditor.
-
Edit the layout and content visually.
-
Export or move the completed email into your ESP.
-
Generate or add the plain-text version.
-
Review its reading order and links.
-
Check personalization.
-
Verify unsubscribe content.
-
Send a test.
-
Review the delivered email.
-
Launch the campaign.
This keeps each part of the production process clear.
MailEditor handles HTML email design.
Your sending platform handles final MIME packaging and email delivery.
Final Answer
A plain text version of HTML email should preserve the same core message in a clean text-only format.
The process is straightforward:
-
Finish the HTML email.
-
Extract the important content.
-
Remove HTML and visual formatting.
-
Rebuild the reading order.
-
Convert buttons into descriptive URLs.
-
Keep important prices, dates, and offers.
-
Preserve personalization.
-
Include unsubscribe information.
-
Add the text as the text/plain alternative.
-
Test both versions before sending.
The goal is not to reproduce the visual design.
The goal is to make sure the message remains useful when the design disappears.
For the HTML side of your workflow, start with the MailEditor HTML email builder, complete the design, then review the plain-text alternative inside your ESP before launching the campaign.
Frequently Asked Questions
Question: What is a plain text version of HTML email?
Answer: A plain text version of HTML email is a text-only alternative containing the same core message without images, CSS, styled buttons, columns, or other HTML presentation. It is commonly sent alongside the HTML version using multipart/alternative.
Question: Do HTML emails need a plain-text version?
Answer: Including a plain-text alternative is a strong email-development practice. It gives the message another readable representation for clients, systems, or recipients that prefer text. Many email platforms can generate it automatically.
Question: How do I convert HTML email to plain text?
Answer: Start with the final HTML email. Extract the important copy, remove HTML and visual elements, convert buttons into labeled URLs, preserve personalization and unsubscribe information, and format everything in a simple vertical reading order.
Question: What is multipart/alternative?
Answer: multipart/alternative is a MIME structure that lets one email contain multiple representations of the same message. A common marketing email contains a text/plain version followed by a text/html version.
Question: Should plain text match HTML exactly?
Answer: The wording does not need to preserve the visual layout exactly. However, both versions should contain the same essential meaning, offer, dates, destinations, and required information.
Question: Should plain-text email contain URLs?
Answer: Yes. Important destinations should normally appear as visible URLs because plain-text email cannot hide a destination behind styled anchor text.
Question: Can plain text include personalization?
Answer: Yes, when supported by your ESP. Keep the correct personalization or merge-tag syntax and test the actual delivered message before launch.
Question: Can MailEditor create the HTML version first?
Answer: Yes. MailEditor lets teams create, import, visually edit, reuse, and export HTML email. The final sending platform can then package that HTML alongside the plain-text alternative.
Popular Blogs

Email Design2 mins to read
Top Email Template Builders & HTML Email Editors for 2026
Compare the best email template builders and HTML editors to design professional, responsive campaigns without coding.

Email Tips7 mins to read
Best Drag and Drop Email Editors in 2026
Discover the best drag and drop email editors in 2026. Compare top tools, features, templates, pricing, and automation to build stunning emails fast.

Email Design9 mins to read
Email Signature Size and Image Best Practices
The ideal email signature is 320–600px wide and 90–200px high. Learn the best image sizes, formats, file limits, and mobile-friendly design tips.

Marketing7 mins to read
4 Best Unlayer Alternatives to Design Emails
Looking for Unlayer alternatives? Explore the 4 best email design tools to create beautiful, responsive emails faster and easier.

Marketing6 mins to read
5 Beefree Alternatives to Upgrade Email Design Workflows
Looking for a better email design tool? Explore 5 Beefree alternatives that streamline workflows, improve collaboration, and elevate email campaigns.