• Home

  • Automation with Zapier

  • Zapier tutorials

Zapier tutorials

7 min read

How to distribute leads without an expensive CRM

By Matt Jackman · July 20, 2022
Hero image with an icon of a person and a plus sign

I don't know about you, but I've been thinking about having a pool in my backyard for years. Living in Australia, pools are everywhere. Most of us live close to the beach, but it's hard to beat walking 20 feet to take a quick dip in a refreshing pool when it's sweltering outside. 

So I decided to send an inquiry. That's right, a good old-fashioned get-in-touch online form to kick things off. I gave them my real name, contact information, and location. I was committed.

And then….crickets.

Maybe they could tell I'm probably never going to be able to afford a pool in my backyard. Or more likely, they have a manual and unreliable lead distribution process that needs some TLC.

If you're reading this, anonymous pool company, you could set up a super simple lead distribution process that works 24/7 to send leads to the right people without an expensive CRM or sales pipeline… and I'll show you how.

There are heaps of amazing form Apps in the Zapier universe, but I'll use Google Forms in this walkthrough because it's free and anybody can use it. If you use a different form, you'll still be able to follow these steps—just choose your preferred form app instead of Google Forms. 

You'll need a Zapier account to use the workflows in this piece. If you don't have an account yet, it's free to get started.

Step 1: Identify your requirements and create your form

Whether you need to distribute leads to five people or 1,000, you need to define how to distribute them. Will it be by ZIP code, state, department, purchased item, or something else? That will be the primary driver behind your lead allocation logic.

Let's pretend we're a national roofing installation company with installers throughout the United States. As luck would have it, we have one installer that's responsible for each state, and we have an installer in all 50 states. 

So all we have to do is identify which state the inquiry relates to and distribute the lead to the right installer in that state. If our requirements were more complex, we might need to capture more information on the inquiry form, like ZIP code.

Our form might look something like the one below.

Roof installation inquiry Google Form with fields for email, state, and name.

Once you've created your Google Form, you'll need to submit a sample inquiry so that Google and Zapier have a response to work with.

When you've submitted your sample inquiry, you can see that you have a new response. Exciting!

Google Forms response panel showing 1 response.

Now we'll move on to the next step.

Step 2: Create a distribution spreadsheet

The next thing you'll need to do is to create a way to find the right installer based on the information that's provided on the inquiry form. For us, that'll be the state that the user selects in our state dropdown field.

In order to find the right installer, we'll again lean on Google to create a simple spreadsheet with a list of states and the associated installer's name and email address so we have a way to contact them when the lead comes in.

Example of responses spreadsheet

Step 3: Set up your Zap

Now that we've created our form and our distribution logic spreadsheet, we can go ahead and create our Zap.

Form submission trigger

The first step will be set up our trigger—the event that starts a Zap. Our trigger will be a New Form Response to Google Forms. Once you've selected the form you'd like to use, test your trigger.

Test trigger: "We found a response!"

Now that we have our test response information, we can look for the installer to distribute the lead to.

Whether you use Google Forms or another form app, the important thing is that you're able to pass a value to Zapier—in this case, the installer who covers each state—that will allow you to find the right person to send the lead to.

Find the right person

The next action step in our Zap will be to find a row in the Google Sheet where we've stored the states, names, and email addresses of our installers.

Action set-up: Lookup Spreadsheet Row in Google Sheets
Action set-up continued

We want to find the row that matches the state that was submitted on the inquiry form. For this to work, you'll need to be sure that your form options exactly match the way you have listed the lookup values in your spreadsheet.

Test action: Test was successful. A spreadsheet row as added to Google Sheets just now.

It looks like Timothy in our Alabama office is going to get this one. He's great!

As a final step, we need to let Timothy know about his new lead.

Send the lead information

In order to send this lead to the right person, we'll rely on the name and email address we listed out in our sheet. This is how Zapier knows to send Alabama leads to Tim, and Illinois leads to Cordell.

Our final step will be to have Zapier send an email to Tim using Email by Zapier. There are some volume restrictions with Zapier's email action, so if you need to send out a large number of emails, you can instead use a transactional email tool that integrates with Zapier. But for our purposes, Email by Zapier works well.

Action set-up: Send Outbound Email: Choose app & event: Email by Zapier

We'll need to set up the email to go to Tim with all of the customer's information within the body of the email.

Set up action: Send Outbound Email, continued

You can use the information that you capture in the form to dynamically populate the email content.

When Tim gets the email, it'll look something like this.

Example email auto-generated based on form fields.

There you go. It's that easy to automatically distribute leads from form submissions using Zapier.

Now you just need to turn on your Zap and give it a test!

Step 4: Our Hawaii installer retired… now what?

What we've covered so far is about as easy as it gets when it comes to automatically distributing leads from online form submissions. Sometimes things change and you won't always be able to automatically allocate a lead.

For example, what if our Hawaii installer retires and we don't have anybody available in that area.

I'll delete the row for Hawaii because we don't have any installers there.

If somebody submits an inquiry relating to Hawaii, our Zap will fail because our spreadsheet lookup step won't find any rows for Hawaii.

As a daily Zapier user myself, I've set up some really complicated lead distribution systems to create functionality that I couldn't find even on the most expensive CRM platforms. I'm talking about automatic lead distribution down to the ZIP code level, with load-balanced allocations for shared zones, weekly distribution limits, and automatic reallocation for manually rejected leads. Needless to say, I couldn't find a CRM that could perform that level of distribution logic so I just made one myself using Zapier. It's probably more than I need, but it works extremely well.

One piece of logic that I always deploy whenever I'm creating a complex setup, is to have a safety path. This means that if for some reason I can't find anybody to allocate the lead to, it goes to a centralized contact person who can then manually allocate the lead.

So if you need to allocate leads based on specific ZIP codes, but don't want to define every zip code in the country, you can create a safety path to allow Zapier to still successfully process enquiries that don't match any of your defined criteria.

I'll edit our simple Zap to show you what that looks like.

First, we'll need to delete our last step and replace it with a Path action step with two paths. One path if we successfully find a row in our distribution spreadsheet, and one if we don't.

Action set up: Conditionally run... Installer Found (contains 2 steps). Installer Not Found (contains 2 steps).

We'll set up the Installer Found path first to set up a rule that will have the Zap follow that path if an installer name was successfully found in our spreadsheet. 

We do that by setting up our Rule to Only continue if… > Name (from our spreadsheet lookup step) > Exists.

Rules setup and testing: Only continue if...

In our case, we found Tim in our spreadsheet lookup step, so we can continue and send him an email by creating an email step just like we did before.

Next, we'll configure the Installer not found path to send an email to a central contact point to manually distribute the lead or action it appropriately.

In this case, we'll configure our rule to Only continue if… the Name from step 2 does not exist. Or in other words, if we didn't find a row in our distribution spreadsheet.

Rules setup and testing: "Your path would not have continued"

From there, we can create an email step that goes to a central email inbox. That email can include the lead information so whoever is in charge of manually reviewing these leads is able to take action.

Setup Action: Send Outbound Email: Choose app and event

So our Safety Path would look like this.

Rules: 6. Installer Not Found. Action: 7. Send Outbound Email.

Now your leads will never get lost—even if your distribution logic doesn't account for every scenario that might come through on your forms.

Let's test it out

Every good Zap deserves a few good test runs...and Zapier makes it incredibly easy to see exactly what's happening with your Zaps via their Zap history.

So let's submit a few inquiries, one for Arizona and one with Hawaii to trigger our safety path.

If I head over to my Zap History for the Zap I just created, I can see a new Zap run.

Zap History: Success

It worked! And I can even dive into the details by clicking on that Zap run to see exactly how it flowed at each step and to see which path ran.

In this case, I selected Arizona, so it found an installer.

"Installer Found (Condition Matched)"
Example email sent connecting roof installer to client

This time Lucas was the lucky installer and I can see that the email was sent successfully.

Now I'll test it again, but with Hawaii selected in my Google Form.

After a few minutes, a new Zap run comes through, but this time it stopped because it wasn't able to find a matching row in the distribution spreadsheet.

Zap History: Stopped
"This step was safely halted because nothing was found in Google Sheets"

That's exactly what we planned for, because if it can't find a matching row in the spreadsheet, it should go down the "Installer Not Found" path, which is exactly what it did.

Zap History: This path ran: Installer Not Found

So instead of this lead getting lost within Zapier because of a failed step, the inquiry was safely passed onto the central contact point for further action.

Installer Not Found (Condition Matched)

Hopefully, that helps you set up a simple but robust way to distribute your leads without having to rely on manual allocation or pay for a complex CRM system with bells and whistles that you don't need.

Related Articles:

This article was originally published in May 2021 by Matt Jackman and was updated in July 2022 by Krystina Martinez.

Get productivity tips delivered straight to your inbox

We’ll email you 1-3 times per week—and never share your information.


Related articles

Improve your productivity automatically. Use Zapier to get your apps working together.

Sign up
A Zap with the trigger 'When I get a new lead from Facebook,' and the action 'Notify my team in Slack'