A landing page built for paid traffic.

A lead page for AHA’s paid ads: fast on phones, tracked end to end, leads straight into the CRM.

Role
Design, build, tracking & CRM integration
When
Jun – Jul 2026
Built with
HTML/CSS/JS · Node.js · sharp · Zoho CRM API · GTM / GA4
Where
AHA Smart Homes
−94%Image weight
0Secrets in the browser
4Events tracked

How it helped AHA

  • Straight into the CRMEach enquiry is saved in Zoho as a new lead, with phone and pincode already checked. The thank-you page appears only when the server accepts it.
  • Customer data kept privateThe CRM keys live on a small server endpoint, so no one can read or write AHA’s leads from the browser.
  • Quick on a phoneImages went from 3.3 MB to 0.18 MB, so the page loads fast even on a slow mobile connection.

The problem

  • Leads had to reach Zoho CRM instantly, but my first draft put CRM keys in the browser.
  • Source photos were up to 17 MB each.
  • Ad platforms needed a clean conversion signal.

What I did

  • Server-side lead capture: a small endpoint holds the keys; the browser only posts the form. Read →
  • CRM-ready validation: phone and pincode checks, plus the fields sales actually needs.
  • An image pipeline: WebP, exact display sizes and lazy loading. Read →
  • Clean tracking: four data-layer events and a thank-you page URL for the ad platforms.

Written up from this project.

All posts

Lead capture without handing the browser your CRM keys

0 secrets in the page

From 3.3 MB to 180 KB, the image diet behind a fast landing page

−94% image weight

More work.

All case studies
home_engine.py · rules + local LLM

AI prototypeFeb 2026

Smart-home command engine

Rules first, a local LLM second, guardrails always.

For AHAPlain-English home control that stays fast, offline and safe.

AI agent · DataFeb 2026

CRM daily insights agent

SQL computes the numbers; the LLM only narrates them.

For AHAA daily CEO briefing from the CRM, with every number computed in SQL.