tr Skip to content

Turn a weekly leads spreadsheet into CRM contacts automatically

Once a week, this workflow reads the rows of a Google Sheets leads list, loops through them with an Iterator, creates or updates a FluentCRM contact for each lead and sends that person a short welcome email.

Schedule Google Sheets Iterator FluentCRM Email

5 steps Setup ~8 min Used on 1.9k sites Revenue Ops Free to import

The Turn a weekly leads spreadsheet into CRM contacts automatically workflow on the FlowMattic canvas, with 5 steps across Schedule, Google Sheets, Iterator, FluentCRM, Email
The workflow as it appears in the builder after import. Each step opens for editing.

What this workflow does

Leads often pile up in a shared spreadsheet: names from a trade show, a partner's referral list, a sheet your sales assistant keeps. Someone then has to copy them into the CRM and write to each one. This workflow does that on a weekly timer, so the sheet stays the place people add leads and your CRM catches up on its own.

Every seven days the Schedule trigger wakes the workflow up. The Google Sheets step gets rows from the spreadsheet you connect. An Iterator then takes that list of rows and runs the next two steps once per row. For each row, FluentCRM creates a contact from the email, first name and last name values, or updates the contact when that email is already in your CRM. Last, the Email step sends a welcome message to the same address, greeting the lead by first name.

The template does not mark rows as done. Each weekly run reads the sheet again, so a lead who stays on it is updated in FluentCRM again and gets the welcome email again. Clear handled rows, or add a Filter as the tips explain, before you switch it on. Task History shows every run and each pass of the loop.

Trade show badge scans

Your team pastes the week's badge scans into a sheet with email, first name and last name columns. By the next run each visitor is a FluentCRM contact and has a welcome note in their inbox.

Partner referral sheet

A reseller adds referred prospects to a shared Google Sheet. You get them into FluentCRM without giving the partner a WordPress login, and each prospect hears from you that week.

Moving a lead list off spreadsheets

You kept leads in Google Sheets before installing FluentCRM. Run the workflow once to bring the list across, then keep it scheduled for the rows people still add by hand.

How this workflow runs

What happens at each step once the workflow is on, and what you need before you import it.

  1. Step 1Trigger
    Schedule Every Week

    Starts the workflow on a weekly schedule. Nothing else triggers it, so leads added mid-week wait until the next run.

  2. Step 2Action
    Google Sheets Get Rows

    Gets rows from the Google Sheets spreadsheet you connect after import. Their values are passed on as a list for the Iterator to work through.

  3. Step 3Logic
    Iterator Loop Through Array

    Loops through the rows returned by Google Sheets. The FluentCRM and Email steps after it run once for each row, using that row's values.

  4. Step 4Action
    FluentCRM Create or Update Contact

    Creates a FluentCRM contact from the row's email, first_name and last_name values, or updates the contact if that email already exists in your CRM.

  5. Step 5Action
    Email Send Email

    Sends a welcome email to the lead's address with the subject Welcome aboard, greeting them by first name. Edit the subject and text to match your own voice before going live.

What you need

  • FlowMatticCore
  • Google Sheets AccountAccount
  • FluentCRM PluginPlugin

After importing, map your own data. To keep the template universal, not every step is pre-filled. Open each step in the builder and connect your accounts and fields (channels, lists, sheets, recipients) before you switch the workflow on.

Make it yours

Changes worth making after you import it.

  • Add a status column to the sheet and a Filter after the Iterator that continues only when it is empty. Leads you have already handled then skip the FluentCRM and Email steps on later runs.
  • Map more columns into the FluentCRM step, such as a company or phone column, if your sheet holds them. Run a test first so you can see the exact column names the Iterator returns.
  • Add a FluentCRM Add Tags to Contact step after the contact step, so leads that came from the sheet carry a tag you can segment on later.

Questions about this workflow

Will a lead get the welcome email every week?

Yes, if the row is still in the sheet. Each run reads the rows again and emails every one. Remove handled rows, or add a status column and a Filter, so only new leads are emailed.

Does FluentCRM create duplicates when a lead is in the sheet twice?

No. The step creates or updates by email, so a repeated address updates the same FluentCRM contact. The Email step still runs for each row, though.

What column names does my Google Sheet need?

The template maps values called email, first_name and last_name from each row. Use those headers, or remap the FluentCRM and Email steps to your own after a test run.

Can I run it daily instead of weekly?

Yes. Change the Schedule trigger to a daily or custom interval. Remember that every run reads the sheet again, so set up a way to skip handled rows first.

Import this workflow into your WordPress site

Download the JSON, import it from the Workflows screen and connect your accounts. Every run stays on your server, with no per-task fees.

30-day money-back guarantee Unlimited workflows and runs Self-hosted

Customers who run it every day

Rated 4.8 out of 5 by customers
Read more reviews

It's very straightforward, has a lot integrations and they work well. It is one thing to 'integrate' new external software, but integrating it well, with lots of options is where FlowMattic shines.

Koen A.

Works within WordPress, so it can easily access any inbuilt WP functions or custom functions and use them in your flow. It's easy to use and already has many useful integrations built.