AI4MKTRS NOTE
AGENTS • MARKETING • ZAPIER • MODEL PORTABILITY
Read Time: 14 minutes
KEY TAKEAWAYS |
|---|
|
|
|
|
Introduction
Most marketing teams don’t have an AI imagination problem. They have an AI operationalization problem — and nowhere is that gap more expensive than in how teams choose, and then get stuck with, an AI model.
As a marketer, you’ve probably asked yourself: does model portability — the ability to switch from one AI model to another inside your agents — really matter?
When you build your first agent, you select a model because it’s “the model you always use,” it’s already part of your team’s AI subscription, or it’s the default choice on your agent development platform. Those are reasonable starting points. They are not good long-term reasons to select an AI model.
In my experience developing multi-agent systems for marketers, the ‘right’ AI model for your agent changes — based on context and over time — for several different reasons:
New agent requirements. As development gives way to deployment, production governance, security, and other priorities change model requirements.
Volume increases. As the agent’s user pool moves from individual contributor to the full team, increased volume and cost dictate different model selection.
New capabilities. From month to month, new frontier models and open-wieghts competitors are released, and new capabilities emerge as LLM pricing shifts.
That’s exactly the kind of gap that separates casual AI experimentation from a governed, repeatable operating model. Model portability means you’re not locked into one vendor’s roadmap, one price point, or one set of guardrails — you can adapt as requirements, budgets, and the model landscape shift, without rebuilding your agents from scratch.
The Stack: Zapier + OpenRouter
Zapier. In this article I use a software stack grounded in the low/no-code development platform Zapier, integrated with many common tools and software solutions. Model portability is built from a couple agents (Zapier Agents), a Zap, some tools (Tools) and a few tables (Zapier Tables).
OpenRouter. For maximum flexibility and agility, OpenRouter — a platform with a single access point to 400+ AI models — is integrated into the final model portability solution.
Key Reasons to Include Model Portability in Your Agents
In formal terms, here are seven reasons to incorporate model portability in your agents:
1. Cost & Token Optimization
Marketing workflows vary from high-volume, repetitive tasks (e.g. generating social media post graphics for each ad platform) to complex, creative tasks (e.g. generating campaign creative concepts), to long-reasoning efforts (e.g. marketing strategy). Model portability allows you to route simpler tasks to low-cost models, and reach for high-reasoning models for complex outputs with higher token costs.
Result: Marketing budget is intact.
2. LLM Strengths Vary
Increasingly, LLMs excel at different marketing capabilities. One model generates long-form copy well (and keeps it on brand voice), while another handles ad images with embedded text (multi-modal assets) best. Model portability ensures you assign the right LLM to each agent.
Result: Agent performance fine-tuned.
3. Availability & Redundancy
AI model outages, rate limits, and subscription plan throttling can shut down lead generation processing, customer service responses, and campaign planning — your agentic automation flows. Model portability incorporates instant model fallback switching (to avoid outages) along with cost- and latency-aware real-time model selection (e.g., choosing the model that is cheapest or has the lowest wait time).
Result: Agent uptime assured.
4. Flexibility & Future-Proofing
The AI ecosystem is evolving rapidly, with frontier model updates arriving roughly quarterly for incremental refreshes and about annually for major releases. Model portability supports immediate testing and model re-selection across agents as new capabilities emerge.
Result: Agents perform at the leading edge.
5. Testing
A/B testing simplifies model selection. During development, side-by-side model output analysis from the same agent is fast and simple. The proof is in the output, and controlling all other test variables is built in.
Result: Data-driven decisions.
6. No-Code Optimization
Decoupling agent flow from AI model selection reinforces the advantages you already gain from a no-code agent development platform like Zapier. Separating agent prompts from the LLM in play zeroes out model changeover time and cost.
Result: Agent DNA remains squarely no-code.
7. Governance & Approved-Model Control
Legal, security, and brand teams increasingly want a say in which AI models are allowed to touch customer data or brand voice. Because model selection lives in one place — a Zapier Table, not scattered across every agent’s configuration — you can maintain a single approved-model list, retire a model that fails a compliance review, and show exactly which model produced any given output, all without touching agent logic.
Result: AI governance without an engineering ticket.
Conclusion: Increasingly, I’ve found that all seven reasons matter on every agent development project. In practice, model portability is needed throughout the full life cycle of these marketing agentic flows — from proof-of-concept to production management.
Technical Architecture
Model portability plays a role in every step of agent development, so the technical framework has to support general portability — easy model switching in diverse circumstances. Here are the details of my model portability technical framework, built in Zapier.
Two Platforms, Two Agents
Setting up general model portability leverages Zapier for the core workflow automation, and OpenRouter for model selection, execution, and management. Here’s more detail:
Zapier: Uses Zapier Agents (for the core agentic flow), Zapier Tables (to store status and context along the way), Zapier Zaps for deterministic workflow segments, various Tools (Zapier’s integrations to external apps like Google Sheets and Slack), and a small code snippet in Code by Zapier (which I vibe-coded using Google Gemini — a five-minute, one-time task).
Note: The Code by Zapier step is crucial to overall model portability, as it solves a significant limitation in the Zapier platform — see “One Big Limitation” below for details.
OpenRouter: The flow includes a request to OpenRouter to execute the LLM call. The Zap sends the prompts and the user-selected AI model; OpenRouter connects to that model, sends the request, waits for the response, and returns the status (success or error) along with the model’s response. OpenRouter handles all the messy technical work in between — the API endpoint address, account management for each model, the handshake for the exchange, content formatting, error handling, and even billing.
The Agents
Two agents work together to provide model portability:
Agent #1 — System and User Prompt Generator Agent: A Zapier Agent that assembles the current task requirements for the model call and generates a best-practice-driven, model-adapted System Prompt and User Prompt. For example, if the current marketing automation task is LinkedIn Ad Campaign Performance Analysis, this agent puts together the right prompts to do that well.
Agent #2 — Model Executor Agent: Retrieves the AI model requested by the user (from a Zapier Table) and, along with the prompts generated by Agent #1, calls OpenRouter to submit the request to the model and return the answer. For example, if the task is LinkedIn Ad analysis, the model selected by the user is asked to analyze the detailed LinkedIn Ad data and send back its insights and recommendations for improving the ad campaign.
One Big Limitation
Zapier provides a deep, capable platform for agent development. But it has one critical limitation that stymies longer-running agents: a 30-second timeout on AI model requests. When you call an AI model (or, in this case, call OpenRouter to call an AI model), the request times out after 30 seconds. That’s not enough time for most models to complete their work.
The Problem. Most AI model requests for marketing flows actually require more than 30 seconds to complete. Ask Claude Sonnet 5 to evaluate the LinkedIn ad performance results for the last 30 days, and you’re looking at 45 to 60 seconds. Zapier errors out after 30 seconds, issues a “time-out” message, and your agent halts without getting an answer — and, worse, tries the AI model call again, only to hit the same 30-second limit.
Zapier technical support confirms there is a platform-wide 30-second timeout applied to all API calls. In practice, that means when you use a Tool (integration) with an external app, the Tool must get it’s work done within 30 seconds. For traditional Zaps, this is rarely a problem — call Salesforce to retrieve a customer record, message a user via Slack, or import a performance report from LinkedIn Ads, and you’re fine. Call an AI model with a “thinking” task, and it goes well beyond the limit.
The Solution. Today, there is one solution for the AI model timeout problem: Code by Zapier. This custom-code feature lets you inject bespoke software code (Python or JavaScript) into a Zap, and it includes the fix for our 30-second timeout — the Extended Runtime setting. Set a longer limit, and AI models can run for one, two, three (or more) minutes when the model request is submitted from this Code by Zapier step.
Note: Zapier recognizes this AI model timeout issue is a problem, and submitted a product update request to address it.
That translates to a more complex Zapier model portability solution — but still very much worth it, in my opinion, given the portability advantages. Instead of two Agents, two platforms, and a Tool call to OpenRouter, we add a Zap with a Code by Zapier step to get the extra time the model needs to finish its work. It took about five minutes to vibe-code the Code by Zapier Python needed here. For clarity: I’m not a software engineer, and I don’t do any type of coding.
Why OpenRouter
OpenRouter is an integral part of this model portability solution, and so let’s highlight why it’s so useful (I have no professional affiliation with OpenRouter).
OpenRouter is a platform providing streamlined access to 400+ AI models. It caters mostly to software developers, but works well with the Zapier platform, too. I’m a big fan of OpenRouter, as it’s packed with features that make AI model portability work better:
One integration covers 400+ models. Instead of maintaining separate Zapier app connections for OpenAI, Anthropic, Google, Mistral, DeepSeek, and others, a single OpenRouter step in your Zap or agent gives you access to models from 60+ providers. You don’t add new integration points every time you want to try a new model.
Swapping models doesn’t mean rebuilding an agent. Because routing happens inside OpenRouter, changing which model handles a task is a parameter change — the model name — not a new app connection or automation-step rebuild in Zapier. This is the same principle as AI by Zapier’s model-selection dropdown, extended to a much larger model catalog than Zapier’s native integrations cover.
Automatic fallback if a provider fails. If a model or provider has an outage, hits a rate limit, or errors out, OpenRouter can fail over to a backup model automatically. For marketing agents running on production schedules (campaign triggers, content pipelines), this means a single provider’s downtime doesn’t silently break the workflow.
Cost- and latency-aware routing. OpenRouter can route requests based on price, speed, or your stated preferences, letting you optimize spend across a marketing agent’s steps — cheap, fast models for classification or tagging, premium models for brand-voice-critical drafting — without hardcoding a single provider’s pricing tier into your workflow.
Access to new and niche models on day one. When a new frontier model ships, OpenRouter typically has it available immediately — you don’t wait for Zapier’s native app integration to catch up. This matters for agents where staying current on model quality (e.g., reasoning-heavy steps) is a competitive factor. The same is true for second-tier, low-cost open-source models.
Centralized billing and usage visibility. One bill and one usage dashboard across every model you touch, instead of separate invoices and setting rate-limit dashboards per AI platform provider. For a marketing team running multiple agents across strategy, content, sales enablement, and support, this simplifies both budgeting and auditing of the models actually doing the work.
Lower experimentation and development cost. Because there’s no new account, API key, or billing relationship needed to try a different model, marketing teams can seamlessly A/B test models for a given task (say, comparing three models on subject-line generation) inside the same Zap or agent. This is critical during agent development, as you sort out the right model for the job, and it’s helpful in production to keep AI inference costs in check.
Use Case: LinkedIn Ad Performance Analysis
How does model portability play a role in a typical marketing use case? Let’s look at how model selection and portability played out for a real marketing agent: LinkedIn ad performance analysis and recommendation.
The Ad Performance Agent
I built a small ad performance agent system for analyze the performance of a LinkedIn Ad campaign:
1) Get Data Agent: retrieves the LinkedIn ad campaign details and performance data; and,
2) Performance Review Agent: reviews the performance data and makes recommendations for improving campaign performance.
The Performance Review Agent calls the Model Portability System (System and User Prompt Generator Agent, and Model Executor Agent) - to perform the actual campaign analysis. This makes it easy to swap in different AI models to evaluate the campaign.
Inputs
Here are the important inputs for the Model Portability System:
Company, Brand, and Creative Guidelines: A file (Knowledge Source) with background on the company running the campaign, its brand guide, creative requirements (fonts, color palette, etc.), and sample campaign assets. The System and User Prompt Agent selectively pulls content from this source and injects it into the System and User Prompts.
Campaign Details: The campaign description, including summary, offer, channels, audience, and so on. This content ends up mostly in the System Prompt, and to a lesser extent the User Prompt — again, sorted out and distributed by the System and User Prompt Agent.
Campaign Instructions: Simple, specific instructions to the AI model about what you want it to do. In this case:
## PRIMARY TASK ##
You evaluate the included campaign performance results, decide whether the campaign is meeting its goals and objectives, and recommend specific, practical changes or tests to improve campaign performance.
Campaign Data: Daily ad performance data collected from the LinkedIn Ads platform — line-item (by day) detail including granular ad-level information (intro, headline, CTA, etc.) and performance data (spend, impressions, clicks, average CPM, etc.).
Only the Campaign Data is updated from one Agent run to the next to inject the current day’s results. Everything else is crafted once, at campaign start.
Models Tested
For this exercise, I selected three AI models and ran them with exactly the same inputs and agents. The only variable that changed from run to run was the AI model:
Anthropic Claude Sonnet 5
Nvidia Nemotron 3 Ultra
OpenAI GPT 5.6 Sol
The Anthropic and OpenAI models are current-generation frontier models, while Nvidia’s model is its current flagship in the open-weights model ecosystem — built specifically to reduce the cost and latency of multi-step AI agents. It’s free to users, since Nvidia’s focus on AI hardware supports “giving away the software” (read, model) for free.
Model Selection Design — Three Goals
Test frontier models against each other. At test time, Anthropic’s and OpenAI’s latest models were Sonnet and Sol, respectively. I wanted to see what impact turning loose the most capable models would have on analysis and recommendation quality, and how they compared to one another.
Test real capabilities of frontier vs. free models. Nvidia’s model was free, while OpenAI Sol cost $0.13 for a single test run, and Anthropic Sonnet cost $0.06. The ad-analysis agent was intended to run weekly at first, then eventually daily (five days a week) for better analysis granularity into short-duration campaign changes. That frequency, combined with multiple multi-channel campaigns running simultaneously each quarter, potentially adds up to hundreds or thousands of agent runs. A free open-weights model would meaningfully reduce inference costs.
Test ‘expensive’ vs. ‘cheap.’ Do we really need frontier models for this analysis task? Could we use a free or cheap model instead and save money? Is the free model capable enough to do the job?
Model Output Quality
With no-overhead switching between models, it was easy to run the comparison test.
Model Retooling Time
The test required that I run the Campaign Performance Agent three times - once for each model. In the past this model changeover required, minimally, Agent prompt updates amounting to approximately 30-45 minutes. With the model portability system, it took just 5-10 seconds to select the model from a drop-down in a Zapier Table. That’s 45 minutes vs. 10 seconds. The rest was handled by Zapier and OpenRouter.
Human Baseline
Before running the LinkedIn Ad analysis agent, I reviewed the 30-day LinkedIn ad performance data set myself.
Review, prep, and presentation of results took 50 minutes to comb through the campaign results, assemble the key insights, decide next steps, and prepare a few slides with results, analysis, and recommendations. At an assumed $250/hour blended marketing-analyst rate, call that a direct cost of about $208 and total time of roughly 0.8 hours.
My summary of the campaign analysis and recommendations:
General Performance Evaluation: The campaign was underperforming. The client’s goal was a 1.0% click-through rate; the campaign was delivering an aggregate 0.97% CTR.
Observations: One ad was clearly underperforming, delivering a weak CTR and dragging down the campaign average.
Recommendation: Kill the underperforming ad, shift spend to the high-performing ad, and test other ad directions — while avoiding overexposure on the high performer and making sure we tested different offers to find the best ask.
The client agreed we’d use that basic review as the foundation for comparing the models.
Hypotheses
Our hypotheses for the test spanned five areas:
#1 Underperforming campaign. All three models would successfully evaluate the data and identify that it was underperforming.
#2 Detailed analysis. All three models would provide good insight on individual ads and campaign-level performance.
#3 Differing quality. There would be a substantive difference in analysis and recommendation quality between the two frontier models (OpenAI & Anthropic) and the open-weights model (Nvidia).
#4 Substantive cost difference. There would be a meaningful cost difference between the frontier models versus the free open-weights model. Free is hard to beat and our annual model use would grow into low 4 digits.
#5 Nvidia model wins. The open-weights model would win for production use, based on delivering good/acceptable analysis and recommendation quality with no inference cost. It would be good enough, and cost nothing.
Process
I ran the Ad Performance Agent with each model, using exactly the same inputs and the two-agent model portability system described above. The “retooling” — changing over from model to model — amounted to selecting the model from a Table dropdown and clicking Run. All three models ran with no errors.
Results
Overall, all three models produced solid results.
Campaign Performance: All three models correctly evaluated the campaign as “Underperforming.”
Reason: All three models correctly identified that one ad variant was underperforming, and cited detailed numerical analysis of the shortfall. The low performance of one ad was dragging down the overall average CTR.
Shift ad spend: All three models recommended removing or reducing spend on the underperforming ad and shifting that budget to the high performer.
Test new ads: All three models recommended developing new ads to test, though the reasoning varied — avoiding ad fatigue and testing other hooks (Nvidia Nemotron), adapting the winning hook with message variants (ChatGPT and Claude), and a specific rewrite suggestion for the low-performing ad (ChatGPT). All three offered new-ad ideas, some more detailed and compelling than others.
Analysis nuance: The two frontier models (ChatGPT and Claude) incorporated more nuance around the LinkedIn Ads algorithm and how to work with it, ad messaging, audience evaluation, and other areas. The difference in nuance between the frontier models and the free open-weights model reads like the gap between a young, competent analyst and the additional polish and real-world experience finessed by a seasoned consultant.
Hypotheses vs. Reality
#1 Underperforming Campaign — CONFIRMED. All three models successfully evaluated the performance data and determined the campaign was underperforming.
#2 Detailed Analysis — CONFIRMED. All three models laid out detailed analysis to support their conclusions, documented accurate campaign math, and extrapolated from the numbers to a more complete explanation.
#3 Differing Quality — PARTIALLY CONFIRMED. Both frontier models produced more polished, nuanced analysis and recommendations. But the core conclusions were consistent across all three models — this was a difference in details and polish, not in correctness.
#4 Substantive Cost Difference — NOT CONFIRMED. The cost per run for the frontier models was so low that, even at annual campaign volumes, the net expense for the frontier models was negligible.
#5 Nvidia Model Wins — NOT CONFIRMED. The capability gap between the frontier models and the open-weights model was small but real. Given cost parity between the frontier models and the open-weights model, the decision was to use Anthropic Claude Sonnet 5 in production. In addition to performing well here, Claude was familiar to the internal marketing team, which already uses Claude Cowork. That influenced their final choice.
What This Means for Model Portability
As expected, model switching during the test was easy to see firsthand for the client team — and it stuck with them. Up to this point, model portability meant rewriting prompts, managing separate model API accounts, and switching from one AI subscription to another. They did no model benchmarking, and very little A/B model testing. With this streamlined experience, the client team discussed additional ways to take advantage of this new capability, and identified the following:
Relook at high-volume, high-impact agents. Run an organized testing session on a couple of their high-volume, high-impact agents. Add the model portability tool call, and formally compare how different models affect agent cost and output quality. Do this within two weeks, with quarterly relooks going forward, and change models where warranted.
New-model rapid assessment. The team wants to capitalize on new frontier models as they’re released, to capture competitive advantage. Previously it was too much work to swap in each new model. With model portability in place, they identified three marketing agents to use as performance benchmarks — running each with new models as they’re released, comparing cost and quality to the existing model, and permanently swapping in new models where warranted.
OpenRouter feature review. The team hadn’t previously considered managing AI model accounts and billing through OpenRouter, nor used latency-, availability-, or fallback-based model switching across their agents. A team member volunteered to assess the opportunity, build a new operational framework for model management across the department, incorporate legal’s feedback, and present recommendations, cost savings, and new capabilities to the team.
Cost
As noted above, the per-run model cost breaks out as follows:
Nvidia Nemotron 3 Ultra: Free
Anthropic Claude Sonnet 5: $0.06 per run
OpenAI GPT 5.6 Sol: $0.13 per run
Extrapolated to annual campaign volume — accounting for simultaneous campaigns each quarter and analysis running each weekday — that nets out to roughly this annual budget:
Nvidia Nemotron 3 Ultra: $0
Anthropic Claude Sonnet 5: $108
OpenAI GPT 5.6 Sol: $234
Result: Annual model inference cost, even at annual campaign volumes, is negligible given their comparatively sizeable marketing budget.
Bottom Line
Model portability isn’t a nice-to-have technical detail — it’s what turns an agentic marketing program into a smart, optimized, economically coherent system that leverages the right models in all the right places. And, let’s face it, if every model swap on your team still means rebuilding workflows, model testing and optimization probably won’t happen.
Next Up
Stay tuned for more …
Judge Agent. To formalize the model review process, I’m implementing a review agent (LLM-as-Judge) to evaluate and score the output from the Campaign Performance Agent run with different models. The client automatically scores their model benchmarks, and documented within a quantified, standardized framework.
Automated Model Optimization. In addition, I’ll be testing the automatic model selection capability in OpenRouter - a Zapier Agent classifies the task complexity, and the model portability agent sends a ‘routing policy’ to OpenRouter instead of a model selection. This fundamentally shifts the model portability role from model selection to automated model optimization.
About Jeff Patrick
I provide practical, governed AI strategy and agent-building to marketing teams — no engineering degree required. If you’re working through similar model or agent decisions, I’d love to hear what you’re running into. Drop a comment or send me a note (jeff@AI4mktrs.com).
Appendix A: Detailed Model Output
Full, lightly edited (for length) output from each model for the Ad Performance Agent test runs described above.
Model | Insights | Recommendations |
|---|---|---|
Nvidia Nemotron 3 Ultra | Overall Performance: Underperforming Reason: One ad variant is underperforming and dragging down the overall average Key Observations:
Key Bottlenecks and Opportunities: Budget misallocation: 59% of spend on variant with 0.79% CTR. Shift spend to Variant_1_Ad_1; immediate CTR lift to ~1.15% (projected) Creative fatigue / single-angle risk: Only two variants tested; one relies solely on cost savings. Test new hooks: “speed-to-value,” “AI-augmented team,” “fractional CMO vs. full hire” Audience saturation | Narrow targeting: (C-suite/VP, specific firmographics) + 30-day run Refresh audience exclusions (e.g., exclude engaged non-converters); test lookalike expansion Identify a second winning variant to sustain performance & reduce fatigue risk. Target: ≥1.2% CTR for at least one new variant. Medium effort 3–5 business days (copy, design, approval, launch). Run test for 7–10 days before evaluating. Only two variants tested in 30 days. Company X’s “New Frontiers” pillar demands modern angles (AI, speed). Variant_1_Ad_1’s “overwhelm” hook works; “cost” hook fails. New hooks diversify appeal to C-suite/VP buyers. | HIGH PRIORITY A. Pause Variant_3_Ad_4 & reallocate budget to Variant_1_Ad_1
Projected blended CTR: 1.25–1.35% (based on Variant_1_Ad_1’s 1.35% at scale). CPC reduction: ~$0.70–$1.00 (from current $6.24 → ~$5.50). Low effort / Immediate (15 min in platform). Results visible within 2–3 days. Variant_1_Ad_1 already meets goal with 46% of clicks on 33% of impressions. Shifting the 59% of spend currently wasted on Variant_3_Ad_4 will mathematically push blended CTR above 1.0%. B. Launch two new creative variants testing alternative hooks Create & launch:
Allocate 30% of remaining budget to test (A/B against Variant_1_Ad_1). |
Anthropic Claude Sonnet 5 | Overall Performance: Underperforming Summary Campaign CTR sits at 0.97%, marginally below the 1.0% CTR goal. This is a narrow miss (a 3-point relative gap), not a structural failure, and is fully explained by one underperforming variant dragging down an otherwise goal-exceeding creative. Key Observations
This is a classic case of the platform optimizing for cheap delivery over quality engagement when budget/bidding isn’t constrained toward CTR.
Variant_3 leads with a confrontational cost-shock statistic (“$335K… Think again.”). The empathetic/aspirational angle is outperforming the fear/cost-comparison angle with this senior executive audience — a group generally less responsive to blunt financial-shame framing. Key Bottlenecks & Opportunities
Treat as a strong signal to act on, not a statistically bulletproof certainty. | HIGH IMPACT 1. Reallocate budget from Variant_3_Ad_4 to Variant_1_Ad_1 (70/30 shift, not full pause)
2. Build 2-3 new creative variants extending Variant_1’s empathetic “overwhelm” narrative
|
OpenAI GPT 5.6 Sol | Overall Performance: Underperforming Summary The campaign’s reported CTR is 0.97%, narrowly below the 1.0% goal. Performance is being pulled down by Variant_3_Ad_4 at 0.79% CTR, while Variant_1_Ad_1 exceeds the target at 1.35% and also generates clicks more efficiently. Key Observations What is working
That approach is the strongest available creative direction in the supplied data. What is underperforming
The difference between the two CTRs is directionally strong and approximately statistically significant at the 95% level, but the sample remains modest at 65 total clicks. It supports reallocating delivery and testing the message further, not assuming universal causality. | HIGH IMPACT 1. Shift delivery away from Variant 3
2. Build two controlled challengers from Variant 1’s message
3. Rewrite the cost-focused ad instead of continuing the current version
|