Imagine this. You’ve got dozens, or even hundreds, of blog posts or pages. They’re all sitting pretty in a spreadsheet. But uploading them one by one into WordPress? Ugh. Sounds like a huge drag, right?
Good news — there’s a much faster way! You can bulk import all those posts and pages from a CSV file straight into WordPress. It’s faster, easier, and honestly, kind of fun.
This guide will show you exactly how to do it — step by step. Whether it’s blog posts, landing pages, or any kind of custom content, we’ve got you covered.
✨ Why Use a CSV to Import Content?
Let’s get real — data entry isn’t anyone’s idea of a good time. Here’s why CSV import is a game changer:
- Speed: Upload hundreds of posts in minutes.
- Consistency: Avoid typos and formatting issues.
- Efficiency: Reuse old content or migrate from other platforms easily.
Still on board? Great! Let’s jump into the process.
🛠️ What You’ll Need
- A CSV file with your content.
- Admin access to your WordPress Dashboard.
- A handy plugin like WP All Import or Really Simple CSV Importer.
Not a spreadsheet guru? No worries — we’ll walk through that too.
📁 Step 1: Create Your CSV File
The CSV file is where all your post data lives. You can use Excel, Google Sheets, or any spreadsheet software.
Here are the most important columns to include:
- post_title: The title of your post or page.
- post_content: The main body of your post.
- post_date: The date you want it published.
- post_type: Should be
post
orpage
. - post_status: Use
publish
to publish immediately ordraft
for saving.
Optional but helpful columns:
- post_excerpt: A short summary of the post.
- post_author: The ID or username of the author.
- post_category: Comma-separated list of categories.
- tags_input: Tags, also comma-separated.

Pro Tip: Save or export your sheet as a .csv
file — not .xlsx
.
🔌 Step 2: Install an Import Plugin
WordPress doesn’t handle CSV imports out of the box. That’s where plugins come in.
Here are two awesome (and free) plugins you can use:
- WP All Import: Super powerful and flexible. Great for posts, pages, or even custom post types.
- Really Simple CSV Importer: As the name says — very simple. Perfect for basic post and page imports.
To install:
- Go to your WordPress dashboard.
- Click Plugins > Add New.
- Search for your chosen plugin.
- Click Install, then Activate.
We’ll continue using WP All Import in this guide since it’s the most flexible.
📥 Step 3: Import Your CSV File
Once the plugin is active, you’ll see a new menu — All Import.
- Click All Import > New Import.
- Upload your CSV file.
- Select your post type — post or page.
- Click Continue to Step 2.
That’s it! Now the fun part — mapping your data!
🧩 Step 4: Map Your Fields
This is where you tell WordPress which piece of data goes where.
You’ll see your CSV columns on the left. On the right side, you drag and drop them into the correct WordPress fields:
- Post Title: Drag in
{post_title}
- Content: Drag in
{post_content}
- Excerpt: Drag in
{post_excerpt}
if you have it - Date: Drag in
{post_date}
Also, check the settings tab for:
- Status: Make sure it says ‘Publish’ or ‘Draft’
- Author: Assign default or specific author

🚀 Step 5: Run the Import
Almost done! Here’s what to do next:
- Click Continue after mapping your fields.
- On the summary screen, click Confirm & Run Import.
Now sit back and watch the magic happen. 🎩✨
Once complete, you’ll get a confirmation screen saying how many posts or pages were created.
Voila! You just bulk imported content into WordPress without breaking a sweat.
🧠 Bonus Tips and Tricks
- Use Custom Fields: WP All Import supports importing into ACF fields for advanced layouts.
- Update Existing Posts: You can match posts by ID or slug to update them instead of creating new ones.
- Scheduled Imports: Automate your imports on a schedule using WP All Import Pro.
Feeling fancy? You can even import images by providing their URLs in your CSV. WordPress will download and attach them to your posts. How cool is that?
🧐 Troubleshooting Tips
Ran into a hiccup? It’s okay. Check these quick fixes:
- Wrong post type? Double-check your
post_type
column. - Blank posts? Make sure the
post_title
andpost_content
columns are filled. - Bad formatting? Use UTF-8 encoding and save your CSV properly.
Still stuck? The plugin documentation or forums usually have helpful answers.
🎉 Wrapping It Up
There you go — you now know how to import dozens (or hundreds!) of posts or pages into WordPress using a simple CSV file.
No more copy-paste madness. No more repetitive clicking. Just upload your CSV, map the fields, and hit go.
Now kick back, grab a snack, and enjoy your new content-filled site. You just saved hours of work!

Oh, and one last thing: don’t forget to back up your site before big imports — just in case. Happy importing 🚀