99.co
Lead Generation Automations
- Overview
- Ever wondered if programming a CRM on Google Sheets is possible? Yes, it is. Is it painful? Also, yes.
- Role
- Software Engineer Intern
- Timeline
- March 2022 to May 2023
- Team
- T. Daranidarran (Me), Prachi Singh (Lead Generation Team lead)
- Tech
- Python, Google App Script (Javascript), Google Sheets, Google Drive

What is the Lead Generation programme?
The Lead Generation programme is an experimental initiative by 99.co that generates high quality βleadsβ β users looking to buy, sell, or rent their homes β for Real Estate agents.
A particular pain point for real estate agents was finding customers looking to buy, sell or rent homes. In Singapore, agents earn commissions by selling or renting out properties, and there is a huge demand for potential clients.
A profitable business revolves around solving a niche problem, and this initiative could be just that.
The initial processes were set up in Google Sheets. Leads were manually distributed by the team lead who would copy and paste rows from a master Sheet to each telemarketer's Sheet.
The goal was to automate these processes to scale the business unit.
Implementation Shortcomings
The Team Lead did not possess programming skills and did not have access to engineering resources. As a result, most of the implemented processes were labor-intensive and inefficient π.
Telemarketers' call sheets
The old telemarketer calling sheet consisted of 31 columns, requiring constant horizontal scrolling. A significant portion of the information was irrelevant to telemarketers, making onboarding harder.

After gathering telemarketer feedback and personally engaging in calls using the old sheet, it was clear a complete overhaul was needed.
The old sheet displayed unnecessary information that overwhelmed telemarketers. At times, they would mistakenly qualify a user when not all criteria were met.
The UI and logic of the new form were implemented using Google Apps Script, executable directly from the Menu bar.

Distribution logic
Users were called by telemarketers only once. Returning users who could be potential leads were not being contacted.
The Batching algorithm included returning Property Valuation users in the distribution β resulting in an 80% increase in callable users.
The Prioritisation algorithm re-ordered users based on importance by assigning points to each user. Leads with lower points indicated higher priority.

Both algorithms together resulted in a 2% increase in call-to-lead conversion. In lead generation, a 0.5% improvement is considered excellent.
Lead distribution
At the start of each day, the Team Lead manually distributed leads by copying and pasting rows into each telemarketer's Sheet. This consumed approximately 45 minutes of her time every day.
The Distribution automation was implemented in Python and ran the Batching and Prioritisation algorithms as integral components β fully eliminating the manual daily task.
Lead and agent mapping
When matching a lead with an agent, the Team Lead had to manually search through statistics of all subscribed agents to find one experienced in the relevant area.
This script assigned leads to agents based on conditions queried against a real estate transaction history database β resulting in a 5% increase in success rate.
Proper-tea is interesting π§
This internship gave me the opportunity to explore and better understand myself. I've come to appreciate that I hold more potential than I give myself credit for.
The Lead Generation project was fascinating π. Over the course of the internship I: engaged in user calls as a telemarketer, explored raw business ideas, brainstormed solutions, built them, and conducted user research.
I discovered my knack for breaking down intricate tasks into manageable components and articulating solutions in straightforward terms.
Special shoutout to Prachi for being a great boss, and Jack, Akqeel and Kevin for always helping me navigate through challenging problems π.