Go to Import → paste Gemini JSON → hit Load. Takes 10 seconds.
// Performance Read
Today vs Yesterday
7-Day Rolling Average
Calls made
// NOT ENOUGH SESSIONS YET
Interest rate
// NOT ENOUGH SESSIONS YET
Best calling window
Top recurring objection
Follow up — Showed Interest & Follow Up
Business
Trade
Phone
Status
Follow-up
Interest rate over time
// AWAITING DATA
All-time totals
// Session log
Pickup rate by hour of day
// NOT ENOUGH TIMESTAMPED DATA YET
Pickup rate by day of week
// NOT ENOUGH TIMESTAMPED DATA YET
Objections — all-time
Upcoming follow-ups
Export for Claude
Pulls your aggregated history — totals, trends, time patterns, objections — into one clean text block. Copy it and paste straight into Claude for coaching.
1Run this in Gemini inside your Google Sheet
Copy the prompt → paste into Gemini sidebar in your daily leads sheet → run at end of every session, regardless of which sheet you used.
gemini_prompt.txt
Analyze the call data in this sheet and return ONLY a valid JSON object. No explanation, no markdown, no code fences. Just raw JSON starting with { and ending with }.
Use exactly this structure:
{
"date": "YYYY-MM-DD",
"calls_made": number,
"not_called": number,
"showed_interest": number,
"follow_up": number,
"not_interested": number,
"no_pickup": number,
"left_vm": number,
"disconnected": number,
"closed": number,
"interest_rate_pct": number,
"pickup_rate_pct": number,
"trades": [
{ "name": "trade name", "called": number, "interested": number, "follow_up": number, "left_vm": number, "not_interested": number, "no_pickup": number }
],
"objections": [
{ "text": "short description of objection", "count": number, "example": "one real quote or paraphrase from notes" }
],
"followups": [
{ "business": "business name", "trade": "trade", "phone": "phone or empty string", "status": "Showed Intrest or Follow Up", "heat": "hot or warm", "timestamp": "value from column K for this row, exact string, or empty string if blank", "follow_up_date": "YYYY-MM-DD if a specific calendar date can be confidently determined from the notes, otherwise empty string", "follow_up_time": "HH:MM in 24hr format if a specific time can be confidently determined from the notes, otherwise empty string" }
],
"priorities": ["Priority 1 as a plain sentence", "Priority 2 as a plain sentence", "Priority 3 as a plain sentence"],
"session_notes": "2-3 sentence plain English summary of today"
}
Rules:
- calls_made = rows where Call Status is NOT "Not Called"
- not_called = rows where Call Status is "Not Called"
- interest_rate_pct = showed_interest / calls_made * 100, rounded to 1 decimal
- pickup_rate_pct = (showed_interest + follow_up + not_interested + left_vm + closed) / calls_made * 100, rounded to 1 decimal
- followups must include ONLY rows with status "Showed Intrest" or "Follow Up" — do NOT include "Left VM" rows in this array
- timestamp field = copy the exact value from column K for that row with no reformatting. If column K is blank for that row, use an empty string. Do not guess or invent a timestamp.
- follow_up_date and follow_up_time: read the Notes column for that row. If the contractor mentioned a specific day/time to call back (e.g. "call back Tuesday at 2pm", "follow up June 20 morning", "wants a callback tomorrow at 10"), convert it to an exact calendar date using today's date as the reference point. If the note is vague, ambiguous, or doesn't mention a follow-up time at all, leave both fields as empty strings. NEVER guess a date you are not confident about — an empty string is always safer than a wrong date.
- heat: "hot" = Showed Intrest, "warm" = Follow Up
- Objections come ONLY from Notes of Not Interested rows — group similar reasons, and where the note explains WHY they dropped off, preserve that reasoning in the example field
- Priorities must be specific and actionable, not generic
- All numbers integers except the two _pct fields
- Return nothing except the JSON object
2Paste JSON into Import tab
Copy everything Gemini returns, including the outer braces. Go to Import → paste → Load Session.
3Check Home, then Deep Dive weekly
Home gives you the daily read. Deep Dive is where patterns show up — check it once a week, not every day.