Automate the Web Visually

Build robust automation flows directly in your browser. No code required. Data stays local.

Add to Chrome - It's Free

See it in Action

FlowsMatch Intro

FlowsMatch Terms of Use

1. Acceptance of Terms

By accessing and using the FlowsMatch website and Chrome extension, you accept and agree to be bound by the terms and provision of this agreement.

2. Description of Service

The Extension: FlowsMatch provides a visual interface for creating web automation scripts. These scripts are executed locally within your web browser. No automation data is sent to our servers for execution.

The Website: This website is provided for informational purposes to demonstrate the capabilities of the FlowsMatch extension.

3. User Conduct

You are solely responsible for the automations you build and run. This tool must not be used for any wrongdoing, harmful actions, or malicious activities. You agree not to use the service for any of the following:

4. Disclaimer of Warranties

The service is provided "as is". We make no warranty that the service will be uninterrupted, timely, secure, or error-free.

5. Limitation of Liability

In no event shall FlowsMatch or its owners be liable for any direct, indirect, incidental, special, or consequential damages resulting from the use or the inability to use the service.

6. Contact Information

For any questions about these Terms, please contact us at flowsmatch_feedback@filesmatch.com.

FlowsMatch Privacy Policy

Information Collection and Use

We are committed to your privacy. This policy applies to both the FlowsMatch Chrome Extension and this website.

1. The FlowsMatch Chrome Extension

FlowsMatch is designed to be a local-first tool that you control.

2. The FlowsMatch Website

This website is static and does not use first-party cookies or analytics services.

Third-Party Embeds: We embed videos from YouTube. When you interact with these videos, Google may collect data or set cookies in accordance with their Privacy Policy.

Hosting Provider: This website is hosted via Cloudflare. Cloudflare may collect technical data (such as IP addresses and system logs) strictly for security, performance, and reliability purposes. This data is governed by Cloudflare's privacy policy.

Data Security

Since FlowsMatch operates primarily locally, your data remains within your own browser environment. We do not have access to your passwords, cookies, or the data you scrape. Any data interaction with Google services occurs directly between your browser and Google, orchestrated by the extension, without passing through our servers.

Contact Us

If you have any questions regarding this privacy policy, you may contact us at flowsmatch_feedback@filesmatch.com.

About FlowsMatch

FlowsMatch is a powerful, visual web automation tool designed to simplify complex browser-based workflows. Our mission is to empower users to automate repetitive tasks without writing a single line of code.

Whether you're a QA tester, a data entry specialist, or just looking to streamline your web interactions, FlowsMatch provides an intuitive interface to build robust automations.

Ethical Use: FlowsMatch is intended for legitimate and ethical automation tasks only. Users are strictly prohibited from using this tool for any harmful, malicious, or illegal activities.

For feedback, support, or inquiries, please contact us at flowsmatch_feedback@filesmatch.com.

How to Use FlowsMatch

Product Overview

FlowsMatch is a visual web automation tool that runs locally in the browser. Users build automation flows by dragging and dropping "nodes" (steps) and connecting them.

Core Concepts

User Interface Guide

The Designer

Running Automations

  1. Click "Run Automation".
  2. The view switches to Execution Mode.
  3. Steps turn Blue (Running), Green (Success), or Red (Failed).
  4. Headless Mode: Check "Run Headless" to run the automation in a background tab without focusing it.
  5. Stopping: Clicking "Stop" in the UI aborts the run immediately. To exit cleanly and still generate output files (screenshots, spreadsheets), use a "Stop Flow" step inside your logic instead.
  6. After a run finishes, screenshots and any generated files are available for download; execution history (flow name, status, timestamp, duration, errors) is kept locally for your 100 most recent runs.

Templates

Scheduled Runs

Schedule a saved template to run automatically in the background — Chrome must be running, but the FlowsMatch tab does not need to be open.

Feature Reference

Browser Actions

Go To URL

Navigates the browser to a new web page. This is usually the first browser step in any flow.

URL: https://www.google.com
Click Element

Finds an element on the page using a selector and performs a click action on it.

Selector: [data-testid="login-button"]
Or: regex/Login
Type Text

Finds an input field, textarea, or other editable element and types text into it.

Selector: input[name="username"]
Text: john.doe@example.com
Clear Input

Finds an input field, textarea, or other editable element and clears its current value.

Selector: input[name="search_query"]
Select Option

Selects an option from a dropdown menu. Supports standard <select> elements as well as custom dropdown components (e.g., Element UI, Vuetify).

Selector: #country-select
Value: US
Toggle Checkbox / Select Radio Button

Clicks a checkbox or radio button to toggle/select it. Functionally the same as "Click Element" but labeled for clarity when building forms.

Selector: input[id="terms-and-conditions"]
Selector: input[name="shipping_method"][value="express"]
Click Link

Clicks a link (<a> tag). The selector can point to the link itself or any container that wraps a link — the action finds the link inside automatically. The "Tab Behavior" setting controls what happens after the click.

Selector: td.symbol > a
Tab Behavior: Open in new tab (switch focus)

// After interacting with the new tab:
Close Tab -> Active Page   (returns focus to the original page)
Hover Element

Simulates hovering the mouse cursor over a specific element. Useful for revealing dropdown menus or tooltips that only appear on hover.

Selector: .menu-item
Press Key

Simulates pressing a key or key combination. If an optional selector is provided, the automation waits for and focuses that element before pressing the key.

Key: Enter
Times: 1
Wait

Pauses the automation for a specified number of seconds.

Seconds: 3
Wait for Element

Pauses the automation until an element appears on (or disappears from) the page, then continues immediately. More reliable and usually faster than a fixed "Wait" of N seconds.

Selector: .search-results .result-row
Wait Until: Element appears
Timeout: 30 seconds
Scroll

Scrolls the page — either jumping to the bottom/top a number of times (with a pause between jumps), or scrolling until a specific element is centered on screen.

Scroll Mode: Scroll the page
Direction: Down (to the bottom)
Scrolls: 3 times
Pause Between Scrolls: 2 seconds
Click Until Gone

Repeatedly clicks a button — like "Load More" or "Next" — pausing between clicks so new content can load, until the button is no longer present or becomes disabled. A self-contained replacement for the older Loop + If/Else + Break Loop pattern previously needed to detect the end of pagination.

Selector: button.load-more
Max Clicks: 20
Pause Between Clicks: 1.5 seconds
Screenshot

Takes a screenshot of the visible browser area, or the entire page if "Capture Full Page" is enabled. Screenshots are saved in memory and can be downloaded as a .zip file after the run.

Checkbox: Capture Full Page (enabled)
Switch Tab

Switches the browser's focus to a different open tab. Can match by Title, URL, or simply switch to the currently active page (useful after a popup or new window opens).

Match By: Active Page
Close Tab

Closes a browser tab based on its Title or URL. It will not close the last remaining tab.

Match By: URL
Text to match: "example.com/confirmation"
Browser Navigation

Performs standard browser navigation actions: Back, Forward, or Refresh.

Action: Back
Upload File

Uploads a file to an input element of type "file".

Selector: input[type="file"]
(Select a file using the button)
Download File

Triggers a file download, either by clicking a download button on the page or by fetching a direct URL.

Mode: Click Download Button
Selector: #export-csv
File Name: report_{{loop_index}}
Auto-save to Downloads folder: checked
Solve Captcha

Helps handle CAPTCHA challenges on the page — either by pausing for you to solve it yourself, or by auto-clicking the "I'm not a robot" checkbox and verifying it actually passed.

Type: Auto-Click Checkbox
Max Wait for Manual Solve: 10 minutes

Network

HTTP Request

Sends an HTTP request to a specified URL. Powerful for interacting with APIs directly, without needing a web page.

Method: GET
URL: https://httpbin.org/get
Store response in variable: http_response
Send Webhook

Posts a message to a Slack, Discord, or Microsoft Teams channel — or any custom webhook endpoint. No API keys or sign-in required: you paste a webhook URL that you create once in the target app.

Format: Slack
Webhook URL: https://hooks.slack.com/services/T00/B00/XXXX
Message: Daily report finished — {{row_count}} rows saved ✅

Data & Variables

Loop Over Data

Iterates over a data source — rows from an uploaded CSV or Excel file, items in a list variable, or a fixed number of repetitions. Steps connected to the "Loop Steps" path run once per item.

Mode: From Data Source
Source: Uploaded File (CSV / Excel)
File: products.xlsx
Sheet: Q3 Catalog
Data Range: (auto-detected: B4:F129)

// Inside the loop, a "Type Text" step:
Selector: #search-box
Text: {{product_name}}

// Types the "product_name" column's value for each of the 125 rows.
Declare Variable / Set Variable

"Declare Variable" creates a new variable; "Set Variable" updates one declared in a prior step. Both support the same three sources of data.

Variable Name: api_endpoint
Set Value From: Value / Expression
Value: "https://api.example.com/data"

// Or, to capture the current page:
Variable Name: source_url
Set Value From: Active URL text

Logic & Control Flow

If/Else Condition

Executes different branches of the flow based on logical conditions, with support for multiple criteria and a common exit path.

Condition 1: {{status_code}} equals 200
Logical Join: AND
Condition 2: {{body.success}} is true

// Goes to "True" only if both match, then proceeds to "Next Step".
Try / Catch

Wraps a series of steps so that a failure doesn't stop the whole flow. If any step on the "Try Steps" branch fails, the error is caught and logged in the Handled Errors panel, and execution continues from the main path after the block.

No parameters needed. Place steps that might fail on the "Try Steps" path.
Break Loop

Immediately exits the current loop and continues execution from the step connected to the loop's exit path.

No parameters needed.
Stop Flow

Immediately stops the flow and generates results — a clean, planned exit rather than aborting with the UI "Stop" button.

Keep browser tabs open: checked
Return focus to FlowsMatch: checked
Run Flow

Runs a saved template as a step inside another flow — a reusable sub-flow. The template's steps execute right at that point in the flow, sharing the calling flow's variables, browser tabs, and spreadsheets. When the sub-flow finishes, execution continues with the next step of the calling flow.

Template to Run: Login to Portal

Spreadsheet & Reporting

Declare Spreadsheet

Defines an output spreadsheet for the flow to write to, on one of three platforms.

Platform: Cloud Google Sheet
Spreadsheet Name: Monthly Report
Update Spreadsheet Cell

Writes a value to a previously declared spreadsheet — either to a specific cell, or as a whole appended row.

Mode: Append Row
Target: report
Row Values:
  A: {{product_name}}
  B: {{price}}
  C: =HYPERLINK("{{url}}","view")
Insert Screenshot to Spreadsheet

Takes a screenshot and inserts it into a cell range. Not supported for CSV files.

Target File: report
Sheet Name: Sheet1
Cell: B2:J25

Organization

Add Note

Adds a freeform comment box to the canvas for documenting your flow (e.g., explaining why a section exists, or leaving reminders for future edits).