Duck
Tutorials5 min read

ChatGPT vs custom AI agents: when to stick with the chatbot and when to build your own

Samet Turan— Editor··5 min read

Learn when ChatGPT is enough and when a custom AI agent saves time, with real prompts, tools, and a blueprint to get you started.

You keep opening ChatGPT, typing the same prompt, copying the answer, and pasting it into a spreadsheet or email. It works, but it feels like you’re doing the robot’s job. After reading this you’ll know exactly when the chatbot is fine, when a purpose‑built agent saves you hours, and you’ll have a working example you can copy today.

What most guides get wrong

Most tutorials treat the choice as a binary: either you use the chatbot or you code a complex agent from scratch. They ignore the middle ground where a lightweight automation glues the model to your data without writing a single line of Python. In reality the biggest win comes from connecting the model to a trigger—like a form submission or a new row in Google Sheets—so the AI runs automatically.

Another common mistake is to assume you need the latest, most expensive model for every task. For simple classification or summarization a cheaper, faster model often gives you the same quality at a fraction of the cost. I’ve seen teams burn through credits on GPT‑4 Turbo just to rewrite product descriptions when a fine‑tuned GPT‑3.5 would have done the job.

How do you know when a custom agent is worth the effort?

Ask yourself if the task repeats more than three times a week and if the output needs to land somewhere other than the chat window. If you’re manually copying the answer into a CRM, an email draft, or a task manager, the copy‑paste loop is the cost you’re paying. When the loop appears, building a tiny agent that pulls the input, runs the model, and pushes the result back pays for itself in a few days.

If the task is truly one‑off—like brainstorming a blog outline or checking a quick fact—stick with the chatbot. The overhead of setting up a webhook, an API key, and a workflow outweighs the benefit for a single use.

Concrete named example: lead enrichment agent

Here’s a real workflow I run for a freelance outreach business. When a new lead appears in a Google Sheet, the agent pulls the company name, queries the OpenAI API for a one‑sentence summary of the company’s recent news, and writes the result back to the sheet.

Prompt (sent to the model): “Give me a concise, one‑sentence summary of the latest news about {{company}}. If you can’t find recent news, say ‘No recent public news found.’”

I built this in n8n workflows because it lets me connect Google Sheets, an HTTP request to the OpenAI API, and a Google Sheets update node without writing code. The steps are:

  1. Google Sheets trigger – watches for new rows in the “Leads” tab.
  2. Set node – extracts the company name into a variable called {{$json[“company”]}}.
  3. HTTP Request node – calls https://api.openai.com/v1/chat/completions with the model gpt-3.5-turbo, the prompt above, and a max_tokens of 60.
  4. Function node – parses the API response and pulls out the message content.
  5. Google Sheets node – updates the same row, column “News Summary” with the extracted text.

The whole thing runs in under five seconds per lead. I pay $0.006 per 1K tokens for gpt-3.5-turbo, so a typical lead costs less than $0.001. The n8n instance runs on a $5/mo VPS, which is negligible compared to the time saved.

What I love about n8n

The visual workflow editor lets me see the data flow at a glance, and the built‑in credential manager means I never have to paste an API key into a plain‑text node. I can clone the workflow, change the prompt, and reuse it for a completely different task—like turning meeting transcripts into action items—in less than ten minutes.

One feature that saved me hours is the ability to trigger a workflow from a webhook. I hooked a Typeform survey to the same agent, so every survey response automatically gets enriched with company news before it even hits my inbox.

What annoys me about ChatGPT’s browsing

I tried using ChatGPT’s built‑in browsing to fetch the same company news, but the tool often cuts off after thirty seconds, returns a partial answer, or refuses to cite a source. When I need a reliable, repeatable summary for dozens of leads each day, that unpredictability is a deal‑breaker.

Plus, the browsing mode is locked behind the Plus subscription, and you can’t automate it—you have to manually start each chat. That defeats the purpose of scaling outreach.

How to debug when this breaks

First, check the n8n execution log. If the HTTP Request node shows a 401 error, your OpenAI key is either missing or expired. Regenerate the key in the OpenAI dashboard and re‑enter it in n8n’s credentials.

If the Google Sheets node throws a “permission denied” message, the service account linked to the sheet lacks edit rights. Re‑share the sheet with the email address shown in the n8n Google credential.

When the model returns an empty string, verify the prompt syntax. The double curly braces {{company}} must match exactly the variable name you set in the Set node. A typo here silently passes an empty string to the API, which then returns a generic refusal.

Finally, if the workflow runs but the sheet never updates, look at the “Write Range” field in the Google Sheets node. It should be something like “Leads!C2” where C is the column for the news summary and the row number comes from the trigger. Hard‑coding a row number will cause the workflow to overwrite the same line every time.

Once you’ve cleared those four checkpoints, the agent will run reliably for weeks without touching.

Adjacent reading: deeper coverage of AI agent platforms.

If you’d rather skip the build and deploy a working version in an afternoon, we’ve packaged this workflow as a blueprint at deepusecase.com/vault/ai-agent-builder-kit.

— The Colophon

One AI tool. Tested. Reviewed.
In your inbox every Sunday.

~3 minute read. Real outcomes from operators, not marketers.

Free. One email per Sunday. Unsubscribe in one click.