I found out about Zapier deprecating Functions from someone in a Discord server, not from an email or a changelog I actually opened. They posted a screenshot and said "wait, is this actually gone?" I checked. The May 2026 product update confirmed it: Functions was being deprecated, and the migration guidance was thin.
Functions was the feature that let you run JavaScript inside a Zap when standard action blocks stopped being enough. If you needed to parse a nested JSON response three levels deep, or do a string transformation no native action covered, Functions was how you did it. The editor was basic and the error messages were sometimes useless, but it worked. It sat inside Zapier‘s existing auth model, which meant people without infrastructure experience could actually use it.
The replacement Zapier is offering is their Agents layer, now merged with Zap templates into a unified hub. You can version agent releases, publish them, and manage them from a central location. You can launch directly from the Templates hub and push updates to live agents without downtime. That sounds like progress unless you are someone who just needed to run forty lines of JavaScript on a webhook payload.
Zapier’s migration documentation points toward two alternatives: Code by Zapier and the new Agents layer. Code by Zapier is essentially Functions under a different name, not an upgrade. Suggesting Agents as a replacement for a custom code layer is a category error. Agents are for autonomous multi-step task execution, not for running a data transformation script on a single webhook payload.
I have seen this happen before with other platforms. A power-user feature gets added, real workflows get built on top of it, and then the platform decides that feature does not fit where they are going. The users who built on it are not the target market anymore. They never really were.
Zapier’s pivot to Agents is a direct response to what is happening in the AI workflow space. LangChain, CrewAI, and a range of newer tools have spent the last eighteen months making the case that AI agents are the future of automation. Zapier’s real strength was always the depth of its integrations and how quickly you could wire up a trigger-action flow. Agents require a different kind of operational trust, and Zapier has not built that track record yet.

I moved a client’s data processing workflow from Zapier to n8n last year, and the Functions logic ported into a Code node cleanly. The real work was credential reconnection and adjusting the data path references, not rewriting the logic. The n8n documentation says the Code node supports external npm modules, but it skips a critical step. You have to allowlist those modules in your environment variables first, and that requirement does not appear in the node documentation at all.
Documentation that is technically accurate but operationally incomplete is what costs you two hours at the wrong moment. I found the fix in a GitHub issue someone else had hit three months earlier. It is not a dealbreaker. But it is the kind of thing Zapier manages away by controlling the full stack, which is the trade-off you accept when you self-host.
The n8n Code node also runs Python now, not just JavaScript, which is something Zapier never offered. If your Functions logic involved regex operations, data transformation, or external module calls, the upgrade path inside n8n is cleaner than anything Zapier’s current documentation is pointing you toward. That matters when you are migrating a workflow that has been running in production and you cannot afford a gap in execution.
The Code node in n8n is a first-class part of the platform, not an escape hatch for when the platform cannot do what you need.
Removing Functions tells you something specific about where Zapier is going and who they are building for. They are building for users who want AI agents to handle their workflows autonomously. They are not building for the person who needs to write code that handles the edge cases an agent will miss. If your work puts you in that second group, the platform is moving away from you, and calling the move a feature launch.

Olaitan Oladipo holds a BSc in Sociology from Olabisi Onabanjo University. He is a self-taught automation builder who has spent years inside n8n doing the work that most tutorials skip: debugging OAuth errors at 2am, migrating client automations from Make.com mid-project, fighting reverse proxy misconfigurations on AWS EC2, and figuring out through trial and error what actually holds up in production versus what only looks clean in a demo.
He is not a developer by training and not a SaaS founder. He is the person in the Discord server who actually answers the question instead of linking to the docs.
His writing on n8n Automation Tutorial covers self-hosting, AI agent workflows, tool comparisons, and the security vulnerabilities the automation industry would rather not discuss. He has built AI-assisted invoice approval flows using OpenAI function calling, connected Claude via HTTP Request nodes, and holds considered opinions about Zapier, Make.com, LangChain, and CrewAI that their marketing teams would not appreciate.
He writes for people who are technical enough to follow a tutorial but experienced enough to want the honest version.

