Open Source RPA Tools
Robotic process automation earns its keep by driving the clicks a person would in software that has no real API - and the commercial model charges per running robot, so the bill grows with every process you automate while the bots themselves become a vendor's scripts you cannot read. The open source tools here approach the same UI and desktop automation as code or flows you own, from keyword-driven test frameworks to visual recorders to vision-based agents. Running as many unattended workers as your hardware allows costs nothing extra, and the logic lives in files you can diff, review, and version rather than renting each robot. What you trade for that is the operational work of hosting, isolating, and monitoring the runners yourself.

EasySpider
No-code visual web crawler and browser automation tool with command-line execution

Skyvern
AI-powered browser automation for websites, with vision-based workflows and a Playwright-compatible SDK

Robot Framework
Open source automation framework for acceptance testing, ATDD, and RPA with plain text syntax

TagUI
Free RPA tool for automating websites, desktop apps, and command-line tasks with simple TagUI language

RPA for Python
Python package for robotic process automation with web, desktop, and OCR-based UI control

OpenRPA
Open source Windows RPA software with OpenFlow for managing multiple robots
RPA Framework
Open-source RPA libraries and tools for Robot Framework and Python

taskt
Open-source RPA client for building rule-based automation without writing application code
Our picks
Pick by what you automate and who maintains the flows.
Best for change-prone websites: Skyvern Skyvern automates browser workflows with LLMs and computer vision, mapping visual elements to actions so a flow can run on sites it has not seen and fall back from selectors to AI when layouts shift. It offers a Playwright-compatible SDK plus a no-code builder, self-hosts locally, and has a managed cloud. The AGPL-3.0 core keeps automation and data on your side.
Best keyword-driven framework: Robot Framework Robot Framework is a generic automation framework for acceptance testing and RPA that uses plain-text, keyword-driven syntax and runs from the command line. It extends through generic and custom libraries, runs on Python 3.8+ and PyPy, and is backed by the non-profit Robot Framework Foundation under Apache 2.0. Its readable text files fit code review and version control.
Best for Windows desktop fleets: OpenRPA OpenRPA records and replays desktop and browser workflows on Windows, targeting UI elements directly, reading table data from Chrome, automating SAP, and falling back to image recognition and OCR. It pairs with the self-hostable OpenFlow backend to schedule and manage fleets of robots, with high-density configs running many bots per machine. MPL-2.0 licensed.
Best no-code visual automation: EasySpider EasySpider is a visual, code-free tool for browser automation and data collection: you point and click to select page elements and define operations, then run tasks from the desktop interface or headless from the command line. It loops through elements, opens detail pages, and includes OCR. AGPL-3.0 and free for commercial use.
Matching an RPA tool to the work it has to drive
RPA tools fail in different ways depending on what they drive, so begin with the surface, not the demo. Browser automation should rely on selectors, DOM events, and network-aware waits rather than pixel clicks - Skyvern goes further, using vision models to fall back from selectors to AI when a site changes layout. Desktop automation needs stable window handles and focus control, which is where taskt and OpenRPA on Windows fit. If your work runs through remote desktops or image-only apps, weigh OCR quality and screen matching first. A clean happy path in a demo proves little; test pop-ups, slow screens, and changed labels.
The execution model is the next hard boundary. Decide whether you need attended bots beside employees, unattended workers on servers, or both, because unattended work demands scheduling, queues, retries, and safe credential injection. OpenRPA pairs with the self-hostable OpenFlow backend to schedule and manage fleets of robots, and taskt offers an optional server for remote execution and bot monitoring. A tool that runs fine on one laptop can turn brittle when ten workers share files and sessions, so look for an operator view that shows which step failed and whether a rerun will duplicate work.
Treat how workflows are stored as an exit-path decision. Some tools keep logic as readable text that fits code review - Robot Framework uses plain-text keyword files, and RPA for Python and the RPA Framework libraries live in ordinary Python - while visual-only projects are hard to diff or refactor. Check where variables, secrets, logs, and screenshots go, and keep credentials out of workflow files. The durable pattern is to move business rules into scripts or services over time and reserve RPA for the UI steps that genuinely cannot be replaced yet.
Related categories
Frequently asked questions
When should I use an RPA tool instead of an API integration?+
Prefer an API whenever one is available and complete - it is faster, easier to test, and unaffected by visual changes. Reach for RPA when the API is missing, incomplete, blocked by policy, or cannot do what a user can. A sound design mixes both: APIs for data-heavy work, RPA for the screens that must be driven interactively. Skyvern and Robot Framework both fit that mixed approach, one for browsers, one for keyword-driven tasks.
How do these open source tools differ from writing a plain script?+
A script automates one task; an RPA tool wraps workflow structure around it - step recording, scheduling, retries, logs, credentials, and shared runners. Robot Framework adds keyword-driven structure and reporting on top of Python, and OpenRPA adds a visual recorder and fleet management. The tradeoff is complexity: for a short command-line job a plain script is easier to maintain, but when non-developers adjust steps or operators need visibility, the RPA layer pays off.
How reliable is RPA when application screens change?+
It depends on how the tool identifies elements. Selectors, accessibility trees, and structured browser targets survive minor layout changes far better than coordinates or screenshots. Skyvern is built for exactly this, using vision models to fall back to AI when selectors break. Even so, labels move and dialogs appear, so favor tools with explicit waits, fallback selectors, and step-level error handling, and budget review time into every application upgrade.
What is the difference between attended and unattended bots?+
Attended automation runs beside a person - useful in call centers or claims review where someone stays in control. Unattended automation runs on a schedule or queue for batch work, and needs stronger orchestration because no one watches each step. OpenRPA with the OpenFlow backend and taskt with its optional server are built for the unattended case, handling queues, scheduling, and monitoring. Many teams need both, but they call for different governance.
How should I handle credentials and secrets in an automation?+
Keep secrets out of workflow files and screenshots, and store them in a separate vault or credential manager the runner can inject at run time. Because bots often hold powerful accounts that impersonate employees across systems, isolate runner machines from ordinary desktops, redact sensitive fields in logs, and give credential managers a different role from workflow authors. For regulated work, control who can edit automations, approve changes, and replay failed jobs.
Can these tools read documents, OCR, and scanned forms?+
They can, but expectations often run too high. OCR quality varies with scan resolution, form consistency, handwriting, and language. EasySpider and OpenRPA include OCR, and the RPA Framework ships document and OCR libraries. If layouts are predictable, template extraction works well; if every document differs, plan for review queues and confidence thresholds. Treat document automation as its own evaluation track, not just another click-recording feature.
TagUI shows as discontinued - is it still safe to use?+
TagUI's official maintenance and support were discontinued by AI Singapore, though its Apache-2.0 code remains available and is carried on by community contributors, and RPA for Python builds on a fork of it. It can still work, but treat an unmaintained tool with caution: confirm it runs on your current browsers and systems, and prefer an actively developed option like Robot Framework or Skyvern for anything business-critical.