Why I Use Formgrid for Every Client Website I Build

1 6 15
calendar_todayschedule2 min read
— Originally published at formgrid.dev

A few months ago, I was building a website for my web design agency at leadsgrid.co.

I had the homepage done. The services page was looking good. The industry landing pages were ready. Everything was working.

Then I got to the contact form.


The Problem Every Web Developer Hits

I needed a lead capture form on the site. Not just a contact form that sends me an email. A proper form that would:

Notify me immediately when someone enquires. Store every submission somewhere I could track it. Let me see which enquiries I had followed up on and which ones I had not. Tell me which marketing channel sent each lead.

I had built this before. I knew what it involved.

A PHP backend to receive the POST request. An email sending library to format and deliver the notification. A database to store submissions. A dashboard to view them. Spam protection so bots do not flood the inbox. Something to track UTM parameters.

I looked at my shared hosting on Namecheap. cPanel. PHP 8. MySQL.

I thought: I could build this.

Then I thought: I already built this. It is called Formgrid.


Why I Almost Did Not Use My Own Tool

Here is the thing about building a product. You spend so much time inside it, thinking about edge cases and user flows and feature gaps, that you sometimes forget to step back and see what it actually does.

I almost went down the cPanel route out of habit. The same habit that makes developers spin up a Node.js backend and configure Nodemailer for a contact form when a better option already exists.

What stopped me was a simple question:

If I were not the founder of Formgrid and I needed a form backend for a static agency site right now, what would I use?

The answer was obvious.


What I Actually Did

I pointed the enquiry form on leadsgrid.co at a Formgrid endpoint.

<form action="https://formgrid.dev/api/f/your-form-id" method="POST">
  <input type="text" name="name" placeholder="Your Name" required />
  <input type="email" name="email" placeholder="Your Email" required />
  <select name="package">
    <option value="">Choose a package</option>
    <option value="Lead Starter">Lead Starter $500</option>
    <option value="Lead Engine">Lead Engine $950</option>
    <option value="Lead Machine">Lead Machine $1,500</option>
  </select>
  <textarea name="message" placeholder="Tell me about your business">

1 Comment

0 votes
🔥 Join developers growing publicly
Share your knowledge, build in public, and grow your developer presence with a global community.

More Posts

Just completed another large-scale WordPress migration — and the client left this

saqib_devmorph - Apr 7

How I Built a React Portfolio in 7 Days That Landed ₹1.2L in Freelance Work

Dharanidharan - Feb 9

Beyond Finance: Use Cases for Client-Side ETL

Pocket Portfolio - Mar 19

TypeScript Complexity Has Finally Reached the Point of Total Absurdity

Karol Modelskiverified - Apr 23

I’m a Senior Dev and I’ve Forgotten How to Think Without a Prompt

Karol Modelskiverified - Mar 19
chevron_left
294 Points22 Badges
6Posts
3Comments
4Connections
Software Engineer

Related Jobs

View all jobs →

Commenters (This Week)

1 comment
1 comment
1 comment

Contribute meaningful comments to climb the leaderboard and earn badges!