Skip to content

Every 15 minutes

Score new Zoho leads and email me a briefing

Every new lead in Zoho CRM is scored, the score is saved on the lead, and you get a short briefing email on the ones worth calling.

Runs
Every 15 minutes
Apps
Gmail, Zoho CRM
AI
Yes, uses the built-in AI allowance
Access
Zoho read+write; gmail.send

Send this to your assistant

Create a ClickRuntime automation: every 30 minutes, check Zoho CRM for new leads. Score each one for fit, save the score and reason on the lead, and email me a briefing on any scoring 7 or above.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

A B2B services firm gets dozens of leads a week from webinars, its website and partners. Most are students or tiny businesses; a few are serious buyers. The founder skims them in the evening and often misses the good ones until a day later.

Each new lead is now scored for fit as it arrives, with the reason saved on the lead in Zoho. The strong ones arrive as a short briefing email with what the company does and why they might buy, ready for a same-day call.

What you get out of it

  • Call the best leads first

    A clear score means the right people get a call while they're still interested.

  • Context before the call

    The briefing explains the company and likely need, so the first conversation is useful.

  • Scores live in the CRM

    Every lead carries its score and reason, so the whole team can sort and filter by them.

  • Your criteria, written down

    You describe your ideal customer once and every lead is judged against it the same way.

How it works

What happens, step by step

  1. Every 30 minutes, ClickRuntime checks Zoho CRM for leads it hasn't scored yet.

  2. AI scores each one against your ideal customer and writes a one-line reason.

  3. The score and reason are saved on the lead in Zoho, which also marks it as done.

  4. You get a briefing email for each lead that scores high.

Before it runs live

  • Connect Google through your own Google app (a one-time, 10-minute setup), so it works with your own Gmail
  • Connect Zoho CRM

What you get

RunsEvery 15 minutes
Score new Zoho leads and email me a briefingtoday, 9:00Succeeded
Email · Lead briefingHot lead: Northwind Freight (8/10). 200-person logistics firm in Leeds, asked about warehouse scheduling.

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

Changes you can ask for

  • Act only on the items that match your own rules, and skip the rest
  • Change what the AI looks for, or how it writes the result
  • Add another app, for example also send it to Slack
  • Combine it with other Gmail and Zoho CRM steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
ai_lead_qualification_and_briefing_email.pyexample
import base64
from email.message import EmailMessage
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from clickruntime import on_trigger, credentials, http, ai, state, report_fetched

ZOHO = "https://www.zohoapis.com/crm/v6"
IDEAL = "Logistics or retail companies with 50-500 staff in the UK or EU."

@on_trigger
def run(event):
    zh = {"Authorization": f"Zoho-oauthtoken {credentials.connection('zoho', 'work')}"}
    leads = http.get(f"{ZOHO}/Leads", headers=zh, params={"fields": "Company,Designation,Email,Description,Fit_Score",
                                                         "sort_by": "Created_Time", "sort_order": "desc"}).json().get("data", [])
    new = [l for l in leads if l.get("Fit_Score") is None]
    report_fetched(len(new))
    if not new:
        return {"summary": "No new leads"}
    gmail = build("gmail", "v1", credentials=Credentials(credentials.connection("google", "work")), cache_discovery=False)
    for l in new:
        r = ai.generate(f"Ideal customer: {IDEAL}\nLead: {l}", max_output_tokens=200,
                        json_schema={"type": "object", "properties": {"score": {"type": "integer"}, "reason": {"type": "string"},
                                     "briefing": {"type": "string"}}}).json
        http.put(f"{ZOHO}/Leads", headers=zh, json={"data": [{"id": l["id"], "Fit_Score": r["score"], "Fit_Reason": r["reason"]}]})
        if r["score"] >= 7:
            msg = EmailMessage()
            msg["To"], msg["Subject"] = "me", f"Hot lead: {l.get('Company')} ({r['score']}/10)"
            msg.set_content(r["briefing"])
            gmail.users().messages().send(userId="me", body={"raw": base64.urlsafe_b64encode(msg.as_bytes()).decode()}).execute()
    return {"scored": len(new)}

FAQ

Common questions

What is the score based on?
The lead's company, title, size and any notes or form answers, compared with the ideal customer you describe in the prompt.
Which Zoho fields does it update?
A score field and a reason field that you add to the Leads module, such as Fit Score and Fit Reason. Other fields are left alone.
Can I get a battle card when a competitor is mentioned?
Yes. If the lead mentions a competitor, the briefing can include short talking points you've provided for that competitor.
What permissions does it need?
Zoho read+write; gmail.send. Nothing else in your accounts is used.
Does it need AI?
Yes. It uses ClickRuntime's built-in AI, so you don't need an OpenAI or Anthropic key. Every plan includes a monthly AI allowance.
How many runs does it use?
One run each time it checks. Checks that find nothing new and stop right away aren't counted.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Score new Zoho leads and email me a briefing” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.