Marketing & AI Automation · ThoughtSpot

I build the AI layer
that makes marketing
teams work harder.

Eight years running paid acquisition engines in B2B SaaS — $43.9M in pipeline, $10M+ in managed budget. Now building the agent systems and internal tools that remove the manual work between marketing, sales, and revenue.

$43.9MPipeline generated
$10M+Budget managed
6Systems shipped
$43.9M
Pipeline Generated
NA · EMEA · APJ
Agent Systems
HubSpot · Salesforce
6sense ABM
Google Ads
ThoughtSpot AI Analytics Relevance AI Agent Build Next.js Internal Tools Google Ads tROAS · PMAX Salesforce Attribution HubSpot API Campaign Ops 6sense Intent · ABM Python Scoring Logic NA · EMEA · APJ Global InMobi AdTech ThoughtSpot AI Analytics Relevance AI Agent Build Next.js Internal Tools Google Ads tROAS · PMAX Salesforce Attribution HubSpot API Campaign Ops 6sense Intent · ABM Python Scoring Logic NA · EMEA · APJ Global InMobi AdTech
Impact by the numbers

Numbers that close
the conversation.

Every figure here is tied to pipeline, revenue, or efficiency — measured in the CRM, not the ad platform.

$43.9M
Pipeline generated
ThoughtSpot · NA, EMEA, APJ
$2.98M
Closed-won revenue
Paid Search · 2.7× ROI on $1.09M
95%
CPL reduction
$4,200 → $210 · Google Ads rebuild
$10M+
Budget managed
Search · Social · ABM · Syndication
20+
Structured experiments
Bidding · Creative · Landing pages
About
N
Nishanth S L
Senior Marketing & AI Automation Manager
ThoughtSpot · From Aug 2026
Previously Global Senior Demand Generation Manager, ThoughtSpot (Jan 2024 – Jul 2026). Before that, Lead — Global Demand Generation at InMobi. Earlier: Resolute / HumanFractal AI, Ernst & Young.
Markets Served
North AmericaEMEAAPJANZIndia
Industries
B2B SaaSAI & AnalyticsAdTechDigital Health
Experience8+ yrs
Pipeline generated$43.9M
Budget managed$10M+
Systems in production6
Most marketing teams don't have an AI problem — they have an implementation problem.

The use cases are obvious: automate campaign setup, enrich inbound leads, turn content into sales enablement, stop making people ask three colleagues whether an account already exists. But prototypes don't ship, integrations break, and nothing survives contact with a real workflow. That's the gap I close.

I spent eight years building paid acquisition engines in B2B SaaS — Google Ads, LinkedIn, Meta, ABM via 6sense, content syndication — and learned that the channel work is the easy part. What compounds is the architecture underneath: attribution that reaches revenue, scoring that reflects real ICP, and now an agent and tooling layer that removes the manual coordination between marketing and sales.

Everything I build is bounded. Write surfaces are minimal and deliberate. Deterministic logic handles anything that must be consistent; AI is reserved for judgement. Anti-fabrication controls validate against actual tool results rather than good intentions. And each system ships with a runbook written for someone who didn't build it — because a tool that stops working when the builder leaves the room hasn't transformed anything.

What I Build
Multi-agent workflow design & orchestration
Internal GTM tools (Next.js, TypeScript, API integrations)
Paid acquisition architecture (SEM, Social, Video)
Full-funnel attribution: MQL → SAL → pipeline → revenue
Lead scoring models in HubSpot & Salesforce
Offline conversion & GCLID upload strategy
ABM programs driven by intent data
Marketing ops buildouts & SDR cadence orchestration
"A tool that only shows successes is a prompt. A tool that refuses correctly is a system."
AI Automation Portfolio

Not prompts.
Bounded systems.

Six systems in production or pilot — five agents and one coded internal application. Each is documented to a seven-section standard: baseline, capability, architecture, guardrails, runbook, impact, adoption. The interesting part isn't what they generate — it's what they refuse to do.

On impact metrics
Adoption data is being collected forward, not reconstructed retroactively. Retention curves and hours-reclaimed figures don't yet exist at a defensible confidence level — so they aren't published here. The tracking framework is built and running. Happy to discuss specifics directly.
01 / Campaign Launch Orchestration Coded App HubSpot API live
Field Event & Webinar Launch Builder
Next.js 14 · TypeScript · HubSpot API · Deterministic core

Turns one structured campaign brief into a launch-ready technical package: readiness validation, a full UTM matrix, HubSpot landing page setup, email and request packages, QA checklist, and cross-functional handoff details — with safe draft-only HubSpot page creation already working against the live API.

12channels
99UTM scenarios
38passing tests
3regions modelled
Next.js 14TypeScriptTailwindHubSpot APIDeterministic UTM engineVitest

The baseline it replaces

Launching a multi-region field event or webinar means collecting a brief, checking for missing inputs, building UTM links for every channel, preparing landing page setup details, requesting invite and reminder emails, coordinating across marketing ops, web, field, demand gen, and campaigns, then producing a QA checklist — and doing it all by hand, consistently, every time. The real cost isn't the drafting. It's the rework loops: a request bouncing back three days later for a missing field, or a UTM inconsistency discovered after launch that quietly breaks reporting.

Architecture decisions

Deterministic where consistency matters, AI where judgement doesUTMs are not generated by a language model. The engine encodes a real channel taxonomy — 12 channels, 99 scenarios — with fixed source and medium vocabulary and an explicit URL-assembly rule. The same brief produces the same links every time, because inconsistent tracking parameters silently corrupt attribution downstream.
Draft-only write surface, deliberatelyThe HubSpot integration creates a draft landing page shell using an approved template on an approved domain. It does not publish, does not schedule, and requires explicit confirmation. The API token is server-side only. Every other write path — Salesforce campaigns, Asana tasks, Slack notifications — is scoped as a placeholder until permissions, approval gates, and audit logging exist.
Multi-region as a first-class data modelBuilt around how campaigns actually run: one logical campaign with separate NA, EMEA, and APJ sessions, each carrying its own date, timezone, regional lead, goal, and live-versus-replay type. Speakers are structured with confirmed / cancelled / TBD status rather than free text.
Two-level validation before anything leaves the appReadiness is scored at both campaign and per-session level, with per-region status surfaced separately. Incomplete briefs are caught at intake rather than three days later by whoever received the request — which is where most of the calendar time actually goes.
Tested core, not a demo38 passing tests across validation, readiness scoring, UTM generation, and package export — proven against both a clean "Ready" brief and a deliberately messy "Needs Review" one. Read-only HubSpot page and template inspectors were built to verify assumptions against the live account rather than trusting documentation.

Scope

Working today
  • Structured brief intake with demo-load
  • Campaign + per-session readiness validation
  • Deterministic UTM matrix generation
  • HubSpot landing page setup package
  • Live draft-only HubSpot page creation
  • Email & request package generation
  • QA checklist and handoff details
  • Markdown and CSV export

Why everything isn't connected yet

Every deferred item involves production write permissions. Connecting them early risks wrong campaigns created in the CRM, accidental publishes, duplicate landing pages, broken attribution, and unrequested noise in other teams' tools. The MVP proves the workflow safely first; production writes get added with named owners, approval steps, audit logs, confirmation gates, error handling, and a rollback path. Scoping restraint is the design decision, not a limitation of it.

Measurement status

Time-savings figures are deliberately not published. A defensible number requires the team's real cycle times — campaigns per quarter, hours per launch today, and how often requests bounce back — and that baseline is being collected rather than estimated. The verifiable claim is the architecture: a real GTM operations problem scoped, deterministic and AI responsibilities separated on purpose, safety controls built in from the first commit, and the whole thing grounded in the team's actual conventions rather than a generic template.

02 / Audience Intelligence Read-only HubSpot
Slicey McSliceface
HubSpot · Slack Canvas · Internal agent platform

Reads HubSpot to size, segment, and assess campaign-ready audiences. Returns a fixed ten-section brief — audience size (total vs marketable), persona and title breakdowns, industry and account coverage, data quality gaps, ready-to-use list criteria, recommended motion, and stated limitations — delivered as a Slack canvas a field marketer can execute from directly.

HubSpotSchema validationSlack CanvasMulti-factor scoring

The baseline it replaced

Answering "do we have enough audience for this?" meant a request to marketing ops, hand-built HubSpot filters, a CSV export, pivot tables for persona and industry breakdowns, a separate marketability check, and a prose brief someone had to interpret and rebuild. Days of latency, inconsistent standards, and data gaps discovered only after a campaign underperformed.

Design decisions

Read-only by designBroad read access to HubSpot, exactly one narrow write — delivering its own output to the requester. Every write request is refused and converted into criteria a human executes.
Property names are verified, not guessedMust resolve HubSpot internal field names via a schema call before filtering. Hallucinated field names produce confidently wrong counts — the specific failure mode it was built to prevent.
Multi-factor readiness ratingNever rates on raw size. Combines marketability, persona coverage, account coverage, and data completeness — and must name the driving factors. A small audience can rate Strong for an executive roundtable and Weak for a webinar.
Asset recommendations validate against tool resultsBefore listing content assets, confirms a real tool call returned them this turn. If not, emits a fixed fallback line rather than plausible-sounding asset names.
03 / Relationship Lookup No write surface Salesforce
Customer & Vendor Relationship Intelligence
Salesforce · Internal agent platform

Answers one question: what is our current commercial relationship with this company, and who internally should I speak with? Returns relationship type, match confidence, account ownership, open opportunities, account team, and exactly one recommended internal contact chosen by a fixed priority ladder.

SalesforceIntent classificationConfidence branchingRevOps

The baseline it replaced

Anyone about to contact, evaluate, buy from, or partner with an external company needed to know whether a relationship already existed. That meant asking in Slack and waiting, searching Salesforce directly (assuming a licence and knowledge of the object model), interrupting RevOps — or skipping the check and reaching out cold.

Design decisions

Intent classification before retrievalThree modes — quick lookup, relationship summary, deep dive — selected from how the question is phrased. A yes/no question doesn't trigger a full account briefing. This is what keeps it fast enough for interactive use.
Relationship semantics held distinctProspect, customer, vendor, and partner are four different things, and the agent is explicitly forbidden from conflating them. An open opportunity never implies customer status — the most common human error in this workflow.
Match confidence is a first-class outputEvery match carries High / Medium / Low, and behaviour branches on it. On Low, the agent stops, presents up to three candidates, and asks the user to choose. It will not guess when the stakes are ownership and outreach.
Absence of evidence handled correctlyNo CRM record found does not mean no relationship exists. The agent says the relationship may live in another system rather than concluding absence.
Five distinct missing-data phrases"None", "not recorded", "not visible with current permissions", "no matching record", and "may be maintained in another system" mean different things. A user can tell a fact from a permissions gap from an unmodelled concept.
04 / Content Activation Anti-fabrication Slack Canvas
SDR Wire
Slack Canvas · Internal agent platform

Turns any marketing asset — whitepaper, customer story, webinar transcript, battlecard, analyst report — into a fourteen-section sales-ready deliverable: elevator pitch, talking points, discovery questions, cold and warm outreach, objection handling, personas, statistics with sales-relevance notes, and an executive cheat sheet readable in under sixty seconds.

Slack Canvas14-section outputGrounding boundarySales enablement

The baseline it replaced

Marketing publishes assets written for a reader who has time. SDRs have a call in four minutes. That gap was crossed by product marketing hand-writing an enablement one-pager per asset — slow, and only for assets someone remembered to request — or by the rep reading the asset themselves, or most often not at all. The coverage gap, not the quality gap, was the real cost.

Design decisions

Brevity as a hard constraintEvery bullet caps at 18 words, one idea, outcome-first, written for the ear. Specific filler phrases are banned by name. A bullet a rep can't read aloud in five seconds is a failed bullet.
Anti-fabrication via a fixed phraseWhen the source is silent, the agent writes "not present in the provided content" rather than filling the gap plausibly. Applied at section and sub-point level, with gaps surfaced back to the requester.
The agent never picks a competitorIf the asset doesn't name one, no competitive section is generated. Competitive claims must be explicitly supported by the source — no invented weaknesses, pricing, or performance numbers.
A required "when not to compete" sectionCompetitive enablement almost always tells reps how to win. This agent requires an explicit section on the deal scenarios where head-to-head positioning is the wrong move.
Grounding boundaryDoes not research the prospect, market, or competitor beyond the supplied asset. It is a translation layer, not a research tool. Loosening this would make it speculative.
05 / Inbound Enrichment Relevance AI CRM write
MQL Research Agent
Relevance AI · Salesforce

Triggered automatically on every inbound MQL. Pulls campaign data from Salesforce, researches the prospect and their company, retrieves relevant case studies, and auto-uploads a structured brief back into the CRM for SDR outreach — eliminating manual pre-call research across the entire inbound pipeline.

Relevance AISalesforceAuto-enrichmentSDR workflow

Design rationale

  • Every inbound lead gets the same research depth, not just the ones a rep had time for
  • The brief lands in the CRM where the rep already works — no new tool to adopt
  • Case study retrieval means the rep opens with relevant proof, not generic positioning
  • Triggered on record creation rather than requested manually, so coverage is complete by default
06 / Outbound Enablement Human-in-the-loop Slack approval
Email Sequence Agent
Slack approval gate · Salesforce · Gong

Drafts personalised three-email sequences per prospect, routes them to the SDR via Slack for approval, then writes the confirmed copy directly into Salesforce and Gong. Removes research and copywriting overhead for an entire region while keeping a human approval gate before anything reaches a prospect.

Slack approvalSalesforceGongRegional rollout

Design decisions

The approval gate is not optionalNothing reaches a prospect without an SDR confirming it in Slack. The agent removes the drafting work, not the judgement. Fully automating outbound copy would put unreviewed text in front of prospects — an unacceptable trade for the time it saves.
Writes into existing systemsConfirmed copy lands in Salesforce and Gong where the sequence actually executes — not into a document someone has to copy from. The handoff is the deliverable.
How I build

What separates a system
from a prompt.

These recur across everything I've shipped — agents and coded applications alike. They're the substance of the work, and the reason it holds up under scrutiny.

01
Blast radius
is designed first

Write surface is decided before capability. One agent is read-only with a single delivery write. One has no write surface at all. One writes only after a human confirms. The launch app creates drafts and refuses to publish.

02
Deterministic where
consistency matters

UTMs, validation rules, and readiness scoring are coded logic, not model output. AI is reserved for judgement. Anything that must produce the same answer twice shouldn't be generated probabilistically.

03
Anti-fabrication
validates reality

Where possible the check is "did a real tool call return this?" — not "did the model try to be accurate?" Schema resolution before filtering. Fixed fallback phrases when a source is silent. Intention isn't a control.

04
Refusals
are features

Each system has a documented set of things it declines to do, demonstrated rather than hidden. A tool that only shows successes is a prompt. A tool that refuses correctly is a system.

05
Handoff is
the deliverable

Each build ships with a runbook written for someone who didn't build it. A tool that stops working when the builder leaves the room hasn't transformed anything.

06
Known issues are
documented, not buried

Every record carries an honest list of contradictions and gaps in its own instruction set, with severity and proposed fixes. Self-audit before someone else audits you.

AI becomes valuable only when it survives real workflows.
— Nishanth S L
Performance Marketing

Work that moved
the pipeline.

The acquisition engine underneath the automation work — where structure, attribution, and intent-based thinking drove measurable revenue.

01 / ThoughtSpot
Paid Search as the primary acquisition engine

Rebuilt Google Ads architecture around buyer intent, then wired offline conversions to Salesforce so every optimisation signal traced to revenue — not form fills.

$20Msourced pipeline
$2.98Mclosed-won · 2.7× ROI
<$250CPL on 11,500+ leads

Approach

  • Restructured campaigns into Brand, Category, Competitor, and TOFU tiers by intent stage
  • Built full-funnel attribution: MQL → SAL → pipeline → revenue
  • Shifted optimisation target from CPL to keyword-level revenue contribution

Execution

  • Integrated Salesforce opportunity data via GCLID offline conversion uploads
  • Reallocated budget weekly based on revenue-producing keyword cohorts
  • Ran 20+ structured experiments across bidding, creative, and landing pages

Results

  • CPL reduced from $4,200 to $210 — a 95% drop
  • $2.98M closed-won on $1.09M spend (2.7× ROI)
  • $20M sourced revenue pipeline with positive payback maintained throughout
02 / ThoughtSpot
Half the spend, double the pipeline

Cut Paid Social spend by 50% while holding lead volume flat and increasing attributed pipeline 110% — through audience segmentation, retargeting architecture, and frequency-based spend controls.

−50%spend ($525K → $260K)
+110%attributed pipeline
$8.6Mpipeline at full scale

Approach

  • Rebuilt audience segmentation to eliminate overlap and wasted impressions
  • Designed a retargeting architecture with clean exclusion logic
  • Introduced frequency-based spend controls tied to channel-level ROAS

Results

  • 50% spend reduction with lead volume held flat
  • 110% increase in attributed pipeline
  • MQL volume +8%, conversion rate 3×, CPA −74% from CRO work
  • At full scale: 11,800+ leads and $8.6M+ attributed pipeline on $3.2M invested
03 / ThoughtSpot
Rebuilding EMEA for a longer sales cycle

Adapted channel mix, funnel design, and conversion paths to the reality of EMEA enterprise buying — rather than porting a North America playbook and hoping.

4–5 → 7–9monthly opportunities
$645Ksyndication pipeline
27%Lead→MQL conversion

Approach

  • Redesigned funnel stages and conversion paths for longer consideration windows
  • Shifted channel mix toward intent-led and account-based motions
  • Built a structured multi-vendor content syndication program with quality SLAs

Execution

  • Deployed 6sense intent data across a $280K ABM budget to prioritise high-value accounts
  • Aligned paid acquisition directly with SDR outreach sequencing
  • Ran a $300K multi-vendor syndication program — shifted vendor SLAs from lead volume to MQL delivery

Results

  • Monthly opportunities increased from 4–5 to 7–9
  • Lead→MQL conversion on syndication reached 27%
  • $645K early pipeline from a channel sales had previously written off
04 / ThoughtSpot
Lead scoring rebuilt from real CRM data

The existing model let operational contacts through as MQLs while deprioritising accounts sales actively owned. Reps had stopped trusting the score — which made the whole routing layer decorative.

+13%tighter ICP definition
+4.8%Lead-to-MQL CVR

Approach

  • Rebuilt scoring logic in Python against real historical CRM outcomes rather than assumed persona weights
  • Explicit suppression of operational contacts that were inflating MQL counts
  • Prioritisation of named and AE/SDR-owned accounts within the scoring ladder

Results

  • ICP definition tightened by 13% — fewer, better-qualified leads reaching sales
  • Lead-to-MQL conversion improved 4.8% over the prior model
  • Routing rules and SAL throughput refined with Sales, SDR, Marketing Ops, and PMM
05 / InMobi
HubSpot built from scratch

The demand gen function had no unified CRM layer — no scoring, no nurture automation, no cadence orchestration, and no reporting connecting marketing spend to revenue outcomes.

+35%qualified lead volume
130%ROI on $500K+ SEM
+28%Lead-to-MQL improvement

What was built

  • HubSpot implemented from zero — including the company's first lead scoring model
  • Email sequence automation, chatbot setup, and global-scale nurture flows
  • Sales cadence orchestration for SDR and outbound teams, with workflow automation
  • Performance reporting across GA4, Salesforce, HubSpot, Looker Studio, and SQL

Results

  • Qualified lead volume up 35% through campaign restructuring and conversion architecture
  • $500K+ SEM across Google and Bing delivering 14,000+ leads at 130% ROI
  • Lead-to-MQL improved 28%; first spend allocation dashboards the team had
  • Managed $2.5M total digital budget across paid media, SEO, web, and ABM
06 / InMobi
Scaling paid programs across search, social, and video

Grew the paid footprint across Google, Meta, LinkedIn, and YouTube while building the reporting layer that let the team see which spend was actually producing revenue.

9,200+leads · 1,900+ MQLs
17.8%YoY revenue growth
418SQLs · 86 opportunities

Approach

  • Scaled paid programs across search, social, and video with unified measurement
  • Optimised via Unbounce, Hotjar, and SEMrush to improve conversion and spend efficiency
  • Built the first spend allocation dashboards and campaign diagnostics for the team

Results

  • 9,200+ leads and 1,900+ MQLs generated
  • 17.8% YoY revenue growth contribution
  • 418 SQLs and 86 opportunities delivered
Tools & Stack

The stack I work
with every day.

Not a list for show. These are the platforms I actually ship with — chosen because they're production-tested inside real revenue workflows.

AI & Agents
Relevance AIAirOpsClaudeSlack Canvas
Build & Code
Next.js 14TypeScriptTailwindPythonREST APIsVitest
Paid Channels
Google AdsBing AdsLinkedIn AdsMetaYouTubeReddit
CRM & Revenue
SalesforceHubSpotGongZoomInfo
Analytics & Data
SQLGA4Looker StudioThoughtSpotGTM
Intent & ABM
6senseBomboraContent Syndication
CRO & Research
UnbounceHotjarSEMrushAhrefs

The right tool is chosen for the specific problem, not out of habit — and often the right answer is better use of what's already in the stack.

Beyond the work
"Campaigns are moments.
Systems are what
actually compound."

Eight years in B2B SaaS performance marketing sharpened one instinct above all: every CPL win eventually decays. The attribution architecture, the scoring model, the agent layer — those are the things that keep paying.

Outside the day job I'm learning AI agents and generative AI as infrastructure to build on rather than a trend to follow — which mostly means building things, breaking them, and writing down what broke.

Based in Bangalore, India
Focus AI automation · Demand generation
Learning AI agents · GenAI · Product
Education PG Cert, Digital Marketing — MICA
Open to Global roles · Advisory · Collaboration
Available for conversations
Built for teams
done with prototypes.

If you know where AI should help your marketing organisation but can't get it to run reliably inside real workflows — that's the problem I solve. Open to global opportunities in Singapore, the US, and Europe.