Guide CMS publishing · 2 of 9
How to Move a Google Doc Into WordPress Without Breaking the Formatting
Move a Google Doc into WordPress cleanly: prepare the doc, paste into the block editor, fix five common problems, and replace Google-hosted images.
Key takeaways
- Use real heading styles and list buttons before you copy.
- Check List View after pasting, not just the visual result.
- Replace Google-hosted images with Media Library files.
You can move a Google Doc into WordPress by copying it into the block editor and then checking what the paste created. Most of the work happens after the paste. Headings may arrive as bold text, lists may break, and images may still load from Google. A short cleanup pass fixes these problems before anyone sees the page.
This guide gives you a method, not a list of plugins. It covers how to prepare the doc, paste it, find the five common problems, and fix them. It ends with a checklist you can reuse. For the full release process around this step, see the guide to publishing a blog post.
Prepare the doc before you copy
Clean input gives you a clean paste. Spend two minutes in Google Docs first:
- Use real heading styles. Mark section titles as Heading 2 and subsections as Heading 3 from the style menu. Bold text that only looks like a heading will paste as a paragraph.
- Remove the title from the body. The post title goes in the WordPress title field. Leave it out of the text you paste.
- Use the list buttons. Lists typed with dashes or numbers by hand will not become list blocks.
- Make an image list. Note each image, where it goes, and where the original file is. You will upload these files later.
- Accept or reject suggestions. Open comments and suggested edits can carry stray text into the paste.
If you are unsure how headings should be ordered, the blog post formatting guide explains the structure. This article only covers moving the text across.
Paste into the block editor and check what it created
Select the body text in Google Docs and copy it. In WordPress, open a new post, click into the first empty block, and paste. The block editor tries to turn the pasted content into matching blocks: headings, paragraphs, lists, tables, and images.
Do not trust the visual result alone. Open List View to see the blocks the editor actually made. In current WordPress versions, you open it with the Document Overview button at the top left of the editor, as the WordPress List View documentation describes.
Scan the list from top to bottom. Every section title should show as a Heading block. Every list should show as a List block. If you see a long run of Paragraph blocks where you expected structure, the paste did not keep it.
Five problems to look for after the paste
| Problem | How it shows up | Fix |
|---|---|---|
| Fake headings | Bold Paragraph blocks where a section title should be | Transform the block to a Heading and set the level |
| Inline styles and spans | Odd fonts, colors, or sizes in the code editor view | Clear formatting on the block, or paste that part as plain text |
| Broken lists | Each item is its own paragraph, or numbers are typed in the text | Rebuild the list with a List block |
| Tables | Merged cells, missing header row, or a table pasted as an image | Rebuild in a Table block with a header row |
| Images hosted by Google | Image blocks that point to a Google address, not your site | Replace each one with a file from your Media Library |
To check styles, open the block’s options menu and choose the HTML editing view, or switch the whole post to the code editor. Look for style= and span tags that were not in your plan.
Worked example: before and after cleanup
Fictional example. A writer at an imaginary bakery supply shop pastes a 900-word draft called “How to Store Flour at Home.” List View shows what arrived. The team logs each issue and its fix:
| What List View showed | Issue | Fix applied |
|---|---|---|
| Paragraph: “Why flour goes stale” in bold | Fake heading | Transformed to Heading 2 |
| Five Paragraph blocks starting with “-“ | Broken list | Merged into one List block |
| Table with a merged top cell | Table problem | Rebuilt with three columns and a header row |
| Two Image blocks with Google URLs | Externally hosted images | Uploaded originals and replaced both |
| Paragraph with a custom font size | Inline style | Cleared the block’s formatting |
After five fixes, List View shows four Heading blocks, two List blocks, one Table block, and two images from the Media Library. The text did not change. Only the structure did.
Upload images to the Media Library
An image pasted from Google Docs may keep its Google address. That means your page depends on a file you do not control. It may stop loading later, and you cannot manage it like your other media.
Use the image list you made earlier. For each image:
- Download or locate the original file.
- Select the pasted Image block and use Replace to upload the file.
- Confirm the new image address points to your own site.
- Add a caption or credit if the image is not yours.
Choosing images and writing alt text are separate tasks. See the guide to choosing blog images for that work.
When to paste as plain text and rebuild
Sometimes cleanup takes longer than starting fresh. Paste as plain text when:
- List View shows almost no headings or lists.
- The code view is full of spans and inline styles.
- The doc used heavy custom formatting, columns, or text boxes.
Plain text paste keeps the words and drops the formatting. On most systems the shortcut is Ctrl+Shift+V, or Cmd+Shift+V on a Mac. Then rebuild the headings and lists with blocks. For a long article, this can be faster than fixing dozens of broken blocks one by one.
If the post needs a video, add it after the text is clean. The video embed guide covers that step.
Final check in preview
Save the draft and open the preview. Read it as a visitor would. Check that headings break the page into clear sections, lists look like lists, and every image loads. Then check the preview on a phone, using the steps in the mobile review guide.
Once the draft is clean, it is ready for the normal release steps. You can publish, or schedule the post for later. Make sure the person who pastes the doc has the right role to do so. The WordPress user roles guide explains who can publish what.
DEX publishes approved articles through the connected CMS, so teams that use it skip the manual paste. When you do paste by hand, the cleanup steps above still apply.
Paste cleanup checklist
- Use heading styles and list buttons in Google Docs.
- Remove the title from the body and resolve suggestions.
- Paste into the block editor, then open List View.
- Fix fake headings, inline styles, broken lists, and tables.
- Replace every Google-hosted image with a Media Library file.
- Switch to plain text paste if cleanup takes too long.
- Preview on desktop and phone before release.
FAQ
Can I paste a Google Doc straight into WordPress?
+
Yes. The block editor converts pasted content into blocks, but you should check headings, lists, tables, and images afterward.
Why do my images still load from Google?
+
Pasted images can keep their Google address. Upload the original files to the Media Library and replace each image.
When should I paste as plain text?
+
When List View shows almost no headings or lists, or the code is full of inline styles. Paste plain text and rebuild the structure.
Sources
- List view · WordPress.org
- Headings tutorial · W3C WAI