SMF·STREAK-CRM
Can a prompt replace Streak?
CRM & sales outreach — CRM inside Gmail
Exhibit tracking slip
Verdict
Streak's product is a surface it does not own. The pipeline sits in Gmail's own thread list, and the mail merge sends from your own account — both achieved by injecting into an interface Google can change without warning. You can build a supported Google Workspace add-on that shows pipeline state in a sidebar, and that is a sitting's work, but a sidebar is not the thread list. Betting a CRM on continued access to somebody else's DOM is the kind of dependency that makes this a no, however small the code is.
Exhibit A — The prompt
Received on31.07.2026Build a Gmail sidebar CRM using the supported Google Workspace Add-on API, not a DOM-injecting extension.
Why that choice matters, and the README should say it: an add-on built with CardService keeps working when Gmail's markup changes, and an extension that reads the thread list does not.
Parts:
1. An Apps Script add-on with a contextual Gmail trigger. When a thread is open it reads the sender address through the add-on API, calls your backend, and renders a card: the contact's name, current stage, last three notes, and buttons to change stage or add a note. Editing writes straight back through your backend.
2. A small backend — your language of choice, Postgres or SQLite — exposing an authenticated JSON API for lookup-by-email, stage change, and note append. Authenticate the add-on to the backend with a long-lived token stored in Apps Script user properties, and rotate it from a settings card.
3. A plain web UI on the backend for everything the sidebar is too small for: the board view, bulk edits, CSV import and export.
Model: Contact (email is the identity), Pipeline, Stage, Note. Every stage change stores who, when, from and to.
Because the add-on runs in Google's sandbox, be explicit about its limits in the README: it cannot see the thread list, cannot modify the compose window beyond the supported compose actions, and has quota limits on script runtime.
When the sidebar sees an address with no contact, offer a one-tap "create contact from this sender" that pulls the display name from the message.
Write tests for the backend API, and a manual test checklist for the add-on since Apps Script is awkward to test automatically — that honesty is better than a fake test suite.
Do not build a Chrome extension that scrapes Gmail's interface, and do not implement mail merge or open tracking.
Opening prefills the prompt — press enter to run it.
Exhibit B — What you lose
- B.1 pipeline columns inside the Gmail thread list, which is the actual product
- B.2 mail merge with per-recipient fields and send throttling
- B.3 email tracking for opens and link clicks
- B.4 shared pipelines and the team activity view
- B.5 snippets and send-later inside the compose window
Exhibit C — Why people still pay: living inside Gmail
Because salespeople live in their inbox and every CRM that asks them to open a second tab loses. Streak charges for being the one that does not ask.
Questions
Why refuse the Chrome extension route when it would look more like Streak?
Because it is a maintenance liability with a fixed expiry date you do not control. Gmail's markup changes on Google's schedule, and a personal CRM that breaks silently is worse than one that never claimed to be there.
Can the add-on show a pipeline column next to each thread?
No. The Workspace Add-on API gives you a sidebar and a handful of compose actions, and that is the ceiling. This is the concrete reason the verdict here is no rather than kinda.
What about the mail merge?
Left out on purpose. Sending a few hundred messages from a personal Gmail account runs into a hard daily cap and, more importantly, into the deliverability problems that get accounts suspended. If you need volume, that is a job for a proper sending platform, with all the cost that implies.
Does Streak let me take my data with me?
Yes — pipelines export as CSV per pipeline, with boxes, stages and custom fields. The email threads themselves stay in Gmail, which is arguably the correct place for them.
Related tools
Receipt