Skip to main content
Agency Program Get 2× more leads and save 50% on hosting. Built for agencies ready to grow. Book a call

How to Connect n8n to WordPress: 5 Workflows That Save Hours

Connect n8n to WordPress step by step with application passwords and webhooks. Includes 5 ready-to-build workflows for WooCommerce, forms and publishing, plus how to self-host n8n with unlimited executions on InstaPods.

VS
Vikas Singhal
Founder, InstaWP
Updated Jul 29, 2026 17 min read

Every WordPress site leaks manual work. A form comes in and someone copies it into a spreadsheet. An order lands and someone pastes the details into Slack. A post goes live and someone opens four tabs to share it. None of it is hard. It is just endless.

When you connect n8n to WordPress, most of that manual work disappears, and unlike Zapier it does not bill you per task. n8n is an open-source automation tool with a visual workflow editor and a native WordPress node, so you can wire your site to 400+ other services without writing a plugin.

This guide covers the full n8n WordPress integration end to end: the two connection methods most tutorials skip, five workflows worth building first, and where to run n8n so a busy site does not blow past an execution cap.

n8n visual workflow nodes connected by data-flow lines to a WordPress website, illustrating the n8n WordPress integration

How the n8n WordPress Integration Actually Works

Here is the thing most guides get wrong. n8n’s WordPress node is action-only. It can create posts, update posts, and manage users. It cannot listen for anything.

That trips people up constantly. They add the WordPress node, look for a “new post” trigger, and give up. The fix is knowing which of the three connection methods you need, because only two of them are triggers.

Get that direction straight in your head and the rest is plumbing. Writing to WordPress goes through the REST API. Getting WordPress to talk back goes through a webhook. WooCommerce is a special case that handles its own webhooks for you.

How to Connect n8n to WordPress: Different Methods Covered

There is no single way to connect n8n to WordPress. There are six, they do different jobs, and picking the wrong one is why most people stall on their first workflow. The native node cannot listen for events. Webhooks cannot write to your site. The REST API can do anything but asks more of you.

This page compares all six, tells you which one your use case needs, and points you to the build guide once you have chosen. Two minutes here saves an afternoon of hunting for a trigger that does not exist.

Method Direction Best for Flexibility Skill
1. WordPress node (self-hosted) n8n → WP Posts, pages, users. The default choice. ★★☆☆☆ Low
2. Webhooks WP → n8n Form submissions, new posts, comments ★★★☆☆ Low to mid
3. WooCommerce Trigger WP → n8n Orders, refunds, customers ★★☆☆☆ Low
4. HTTP Request to REST API n8n → WP Custom post types, plugin endpoints, taxonomies ★★★★★ High
5. WP-CLI over SSH n8n → WP Bulk operations, maintenance, database work ★★★★★ High
6. MCP AI ↔ WP Letting Claude or ChatGPT act on your site ★★★★☆ Low to mid

First, work out the direction

Before comparing features, answer one question: is n8n doing something to WordPress, or is WordPress telling n8n that something happened? Almost every stalled n8n project traces back to skipping this.

If n8n acts on your site (creating a post, updating a user, changing a price), you need methods 1, 4 or 5. If your site starts the workflow (a form is submitted, an order lands, a post goes live), you need methods 2 or 3. Most real workflows use one of each, chained together.

1. WordPress node on a self-hosted instance

This is the default method and covers most of what people actually want. It pairs the native WordPress node with a self-hosted n8n instance, which matters more than it sounds, because this is the method your highest-volume workflows will run on.

The other methods fire occasionally. A webhook runs when someone submits a form. An MCP call runs when you ask for it. The WordPress node is different: it is the workhorse you point at scheduled publishing, bulk updates and per-order user creation, so it is the method most exposed to execution billing. There are three reasons to run it on your own instance.

Execution volume lands here first.
n8n counts one execution per workflow run. Cloud’s entry tier caps you at 2,500 a month (n8n’s published pricing, checked July 2026). A WooCommerce store at 100 orders a day burns 3,000 from a single workflow. Self-hosted Community Edition has no cap at all.
A stable IP you can allowlist.
Security plugins like Wordfence and iThemes commonly restrict REST API access, which is the single most frequent cause of 401 and 403 errors on this method. Allowlisting is the fix, and allowlisting needs an address that does not move. Your own pod has one. Shared cloud infrastructure generally does not.
Client credentials stay on your infrastructure.
This method authenticates with an application password that has full admin write access to the site. If you run automation for clients, where that credential is stored is a question you will eventually be asked. Self-hosting gives you a straight answer.
n8n Cloud Starter
$288 / year
Self-hosted, managed
$84 / year
Raw VPS
from $48 / year

The catch has always been setup. On a raw VPS you provision the server, install Node, configure nginx as a reverse proxy, get SSL working, open the right firewall ports, set up a process manager so n8n survives a reboot, and point a domain at it. That is a real afternoon, and you own it forever after.

A managed host collapses all of that. InstaPods runs n8n as a pre-built one-click app. You pick n8n from the marketplace, choose a plan, and InstaPods provisions a real Linux server, installs n8n, configures networking and issues HTTPS. About sixty seconds later you have a live instance with a custom domain and SSH access. The Build plan at $7 a month gives you 2 vCPU and 2 GB RAM, which matches n8n’s own documented minimum and comfortably handles a few dozen active workflows.

Flat pricing is the point. You are not counting runs, so you can put the WordPress node on a schedule without doing arithmetic first. Full walkthrough in our step-by-step deployment guide.

Deploy n8n in about 60 seconds

Unlimited executions on a flat monthly price, with HTTPS, custom domains and SSH handled for you. New accounts get $10 in credit.

Deploy n8n on InstaPods

Step 1: Open the n8n app page and click Deploy

Go to the InstaPods n8n app page and sign up with email or a social login. If you already have an account, you land straight on the plan selector. Nothing is provisioned yet at this point, so you can back out without leaving anything running.

Click Deploy n8n. That is the entire starting point. There is no Docker image to pull, no server to rent first, and no repository to connect.

Deploying the pre-built n8n app from the InstaPods one-click marketplace

Step 3: Pick your plan

Pick your plan. The Build plan at $7 a month flat is the sweet spot for a WordPress site: unlimited executions, HTTPS and a custom domain included, and SSH access if you ever want to get under the hood.

There is a smaller Launch plan from $3 a month for light workloads, and InstaPods gives you $10 in credit when you add a card, which covers months of hosting before you spend a cent of your own.

Selecting the Build plan while deploying n8n on InstaPods

Wait about a minute. InstaPods finishes provisioning and hands you a live n8n instance on its own HTTPS URL, ready to log into and start building. No nginx config, no SSL certificates, no reboot scripts.

A running n8n instance deployed on InstaPods with an HTTPS URL and SSH access

Because the same instance ships with native AI nodes for OpenAI, Anthropic and local models, it doubles as your AI automation box too. If that is where you are heading, see our full guide to building AI automation workflows with n8n, or the deeper n8n pricing breakdown for the per-execution math on every plan.

Step 4: Connect n8n to WordPress With an Application Password

WordPress has shipped application passwords since version 5.6, so you do not need a plugin to connect n8n to WordPress. An application password is a dedicated 24-character key that authenticates the REST API without exposing your real login.

Open your WordPress dashboard and go to Users → Profile.

The WordPress Users profile screen with the Application Passwords section highlighted

Scroll down to the Application Passwords section, enter a name you will recognise later, such as “n8n,” and click Add New Application Password.

WordPress showing a newly generated application password with a Copy button

WordPress will display a 24-character password only once, so copy it immediately.

Step 5: Create your WordPress workflow

Next, open n8n app you have created on InstaPods and click into Credentials, then click Add Credential (top right).

Creating a new credential from the n8n Overview screen

A search box appears. Type wordpress. Pick WordPress API from the results. There’s only one WordPress option, so you can’t pick the wrong one.

Selecting WordPress API from the n8n credential type search

Now enter the asked details such as username, password, and WordPress URL.

Entering the WordPress username, application password, and site URL in the n8n WordPress API credential

If details are correct, the connection will be successful.

The WordPress API credential connecting successfully in n8n

Then click Save, and click Test (or the connection tests automatically on save, depending on version). A green tick means you’re done. Leave the credential named something obvious like “yoursite.com WordPress” and close the panel.

Go back to the workflows list and click Create Workflow. You get an empty canvas with a single “Add first step” button.

Clicking Create workflow on the n8n Overview screen

Click it and choose your trigger.

Opening the trigger picker on a new n8n workflow canvas

On the right edge of that trigger node is a small + symbol. Click it. A node search panel opens. Type wordpress and select the WordPress node.

Searching for WordPress in the n8n trigger panel with the WordPress trigger highlighted
401 Unauthorized
Wrong username (people enter their email), or the application password was regenerated. Create a fresh one and try again.
403 Forbidden
A security plugin is blocking REST access. Wordfence and iThemes both do this. Allowlist your pod’s IP address.
404 Not Found
Almost always the URL. Check for a trailing slash or a stray /wp-admin. Confirm the API responds by opening yoursite.com/wp-json in a browser.
No Application Passwords section at all
The feature requires HTTPS and disappears on plain HTTP, which catches people on local and staging sites. A plugin or an wp_is_application_passwords_available filter can also disable it.

Step 6: Let WordPress Trigger n8n With Webhooks

Now, you have to define your trigger. You have two choices: Schedule and Webhook. These are generic n8n triggers being suggested as partners for the WordPress actions.

The n8n WordPress node listing Schedule and Webhook triggers and WordPress post actions

The application password lets n8n push changes into WordPress. To go the other way, so that something happening on your site starts a workflow, you use a webhook. Add a Webhook node in n8n, copy its URL, then fire at that URL from WordPress.

For a first run, leave the method as GET. That lets you fire the webhook by pasting a URL into a browser tab, which is far easier than setting up WordPress to send anything. You can switch it to POST later once you know the plumbing works.

You can also replace that random path string with something readable like wp-new-post. Optional, but it makes the URL easier to recognise later.

If you want zero code, the WP Webhooks plugin exposes most core actions through a settings screen. If you would rather not add another plugin, this snippet in your theme’s functions.php or a small mu-plugin covers new posts:

add_action( 'publish_post', function ( $post_id ) {
    if ( wp_is_post_revision( $post_id ) ) {
        return;
    }
    wp_remote_post( 'https://your-n8n-url/webhook/wp-new-post', [
        'headers'  => [ 'Content-Type' => 'application/json' ],
        'body'     => wp_json_encode( [
            'id'    => $post_id,
            'title' => get_the_title( $post_id ),
            'url'   => get_permalink( $post_id ),
        ] ),
        'blocking' => false,
    ] );
}, 10, 1 );

The 'blocking' => false line matters. Without it, WordPress waits for n8n to respond before it finishes saving the post, and your editor feels sluggish every time you publish.

WooCommerce is easier. It ships its own webhooks under WooCommerce, then Settings, then Advanced, then Webhooks, and n8n has a matching WooCommerce Trigger node that handles the handshake for you. The WooCommerce webhooks documentation lists every event you can hook into, from new orders to refunds.

Other Ways to Automate WordPress with n8n

Here are some other ways to automate WordPress with n8n.

WooCommerce Trigger node

Use it for anything involving orders, refunds or customers. This is the easiest connection of the six because both sides already speak the protocol. WooCommerce ships its own webhooks under WooCommerce, then Settings, then Advanced, then Webhooks, and n8n has a dedicated WooCommerce Trigger node that handles the registration handshake for you.

No code, no extra plugin, no manual URL copying. Select the event (order.created, order.updated, customer.created and so on) and n8n sets it up. The WooCommerce webhooks documentation lists every available topic.

HTTP Request node to the WordPress REST API

Use it when the native node does not go far enough. The HTTP Request node talks directly to the WordPress REST API, so anything the API supports is available: custom post types, taxonomies, media uploads, comments, and endpoints registered by plugins like Yoast, ACF or WooCommerce Subscriptions.

Authentication uses the same application password. Set the node to Basic Auth with your username and key, then point it at an endpoint:

POST https://yoursite.com/wp-json/wp/v2/your-custom-post-type

{
  "title": "{{ $json.title }}",
  "content": "{{ $json.body }}",
  "status": "draft",
  "meta": { "your_custom_field": "{{ $json.value }}" }
}

The trade-off is that you are now reading API documentation instead of picking from a dropdown. Worth it the moment your site has custom post types, which for most agency builds is immediately. Check what is available by visiting yoursite.com/wp-json in a browser.

A useful hybrid: use the native node for the 80% it covers and drop in an HTTP Request node only for the calls it cannot make. Mixing both in one workflow is normal and keeps the readable parts readable.

WP-CLI over SSH

Use it for bulk operations the REST API handles badly. Regenerating thumbnails, search-and-replace across a database, bulk plugin updates, flushing caches, exporting tables. These are one-line WP-CLI commands and painful API sequences.

n8n’s Execute Command node runs shell commands on the machine n8n itself is running on, so this route needs SSH access from that machine to your WordPress server. It is the most powerful method and the one with the sharpest edges: a mistyped wp db command does not ask twice. Test on staging, always.

This is also a reason to care where n8n lives. Managed n8n hosts often lock down shell access. InstaPods gives you SSH on every plan, so this method stays open to you.

MCP for AI assistants

Use it when you want an AI assistant acting on your site, not a fixed workflow. Model Context Protocol is a standard that lets tools like Claude and ChatGPT call your WordPress site directly. Instead of building a workflow for every task, you describe the task in plain language and the assistant makes the calls.

The two approaches are complementary rather than competing. n8n is right for anything scheduled, repeated or triggered by an event. MCP is right for one-off and exploratory work: auditing content, bulk-editing based on judgement, answering questions about your own site. n8n can also expose its workflows as MCP tools, so an assistant can call a workflow you already built.

InstaWP sites ship with native WordPress MCP support, so this is a configuration step rather than a build. See connecting AI assistants to your WordPress site using MCP.

5 n8n WordPress Workflows Worth Building First

The theory is done. Here are five n8n WordPress workflows that pay for themselves in the first week. Start with one, let it run for a few days, then build the next.

An n8n workflow sending a new WooCommerce order to a Slack message, a Google Sheets row, and an email

1. WooCommerce order to Slack and Sheets

Fire the WooCommerce Trigger on order.created, then a Slack node and a Google Sheets node in parallel. Your team sees orders where they already work, and finance gets a running log nobody has to maintain.

Add an IF node on order total if you only want a ping above a threshold. Notification fatigue kills these workflows faster than any technical problem.

2. Form submission to CRM

Gravity Forms, WPForms and Formidable can all POST to a URL on submit. Point that at an n8n Webhook node, then branch: leads with a company email go to your CRM, everything else goes to a newsletter list.

Gravity Forms’ official Webhooks add-on needs an Elite license. If you are not on Elite, the free gform_after_submission hook does the same thing with the snippet pattern above. This is the workflow I would build first. It replaces the twice-a-day inbox check that quietly loses leads, and it pairs well if you are building a CRM inside WordPress rather than paying for a separate one.

3. Publish once, distribute everywhere

Fire the publish_post webhook from Step 2, then fan out: post to your socials, queue a newsletter draft, ping the team channel, and submit the URL for indexing.

The trick is a Wait node or a scheduled queue rather than blasting every channel the instant you publish. Staggering over a few hours reads as a human posting instead of a bot dumping.

4. Abandoned cart recovery without another plugin

WooCommerce Trigger on cart events, a Wait node for an hour, then an IF node checking whether the order completed. If it did not, send an email with the cart contents.

Dedicated cart recovery plugins are mostly annual subscriptions. This is an afternoon of work and then it is yours, with the recovery email copy fully under your control. Worth having in place well before you hit a busy sales season.

5. Scheduled site health checks

A Schedule Trigger plus HTTP Request nodes hitting your key pages. A non-200 response, or one slower than your threshold, sends an alert before your visitors notice.

Add a weekly job that pulls the WordPress REST API for posts not updated in 12 months and drops them into a sheet. Instant content refresh queue, no SEO tool subscription required.

Where to Go Next

Start with one workflow. Pick the manual task you did most times last week, wire it up, and let it run for a few days before you build another. The failure mode with n8n is building twelve clever workflows in a weekend and having no idea which one broke on Wednesday.

Once the basic plumbing works, the same setup runs AI workflows on top of your WordPress data, which is where this gets genuinely interesting. And if you want n8n reacting to your own infrastructure events too, InstaWP’s webhooks plug into the same Webhook node.

Frequently Asked Questions

Does n8n have an official WordPress plugin?

No. n8n connects through the WordPress REST API using an application password, so there is nothing to install on the WordPress side. You only add a plugin like WP Webhooks if you want to expose more trigger events without writing code.

Can n8n trigger on a new WordPress post?

Not with the WordPress node by itself, which is action-only. Use n8n’s Webhook node and fire at it from the publish_post hook, or use a webhook plugin like WP Webhooks to expose the event without code.

Is self-hosted n8n free?

The Community Edition is free software with unlimited executions. You pay only for the server it runs on, which is about $3 to $5 a month on a raw VPS or $7 a month flat on a managed platform like InstaPods. Some enterprise features such as SSO sit behind a paid license.

Will this work with WooCommerce?

Yes, and it is the easiest integration of the lot. WooCommerce has built-in webhooks and n8n has a dedicated WooCommerce Trigger node, so orders, refunds and customer events need no code at all.

How many executions will a typical WordPress site use?

One per workflow run. A contact form doing 10 submissions a day is about 300 a month. A WooCommerce store at 100 orders a day is 3,000 a month from that single workflow, which is already past n8n Cloud’s 2,500 Starter limit, so self-hosting pays off quickly.

How do I deploy n8n without managing a server?

Use a managed one-click host. On InstaPods you pick n8n from the marketplace, choose a plan, and get a running instance with HTTPS and a custom domain in about 60 seconds. There is no Docker, nginx or SSL to configure, and you still get SSH access if you want it.

Run n8n Without an Execution Cap

Skip the sysadmin work. Deploy the pre-built n8n instance on InstaPods in about 60 seconds, get unlimited executions on a flat monthly price with HTTPS and a custom domain handled for you, and wire it into WordPress the same afternoon. New accounts get $10 in credit when they add a card.

VS
Vikas Singhal
Founder, InstaWP

Vikas builds tools that take the friction out of WordPress development. He writes about WP-CLI, dev workflows, and running WordPress at agency scale.