1. gibin.in
  2. Writing
  3. Playwright vs RPA platforms
RPA · Tools

Playwright vs Blue Prism and UiPath: when code-first RPA wins

I've built automation on Blue Prism and Appian at S&P Global, with Selenium crawlers alongside them, and now run a Playwright-based RPA engine on 70+ portals at Edvoy. Neither side wins everywhere. Here's how I'd choose.

Someone in a forum once answered this question with "Playwright is a testing tool, RPA is an automation tool". That's true on the box and wrong in practice. Playwright drives a browser very well, and a lot of RPA is driving a browser. The real question is what else you need.

Where I'm coming from

To be clear about my experience: at S&P Global I built RPA on Blue Prism and Appian, and Python crawlers with Selenium. At Edvoy I lead a config-driven RPA engine on Node.js and Playwright that has handled 3,000+ submissions across 70+ portals. I haven't run UiPath in production. Where I mention it, I'm talking about what platform RPA tools have in common, not UiPath-specific details.

What a platform gives you on day one

Platform RPA tools like Blue Prism and UiPath are built for organisations, not just for automating a task. What you're really buying is the stuff around the bot:

  • Desktop and legacy apps. Windows applications, Citrix sessions, old green screens. This is where platforms are hardest to replace, because a browser library can't touch them.
  • A visual designer that people outside engineering can read, and often build with.
  • Orchestration: scheduling, queues, bot pools and a control room, ready to use.
  • Governance: credential vaults, role-based access, audit trails. In regulated teams this alone can decide it.
  • Vendor support and a hiring market that knows the tool.

The cost is licences, a vendor's way of doing things, and, in my experience, a slower loop when you need something the designer doesn't do well.

What Playwright gives you

Playwright is Microsoft's open-source browser automation library. It's free, it drives Chromium, Firefox and WebKit, and you can write it in TypeScript or JavaScript, Python, Java or .NET.

  • Auto-waiting. Locators wait for elements to be ready before acting. Most of the sleep-and-hope code from older Selenium bots disappears.
  • Real code. Version control, code review, tests, and the same tooling as the rest of your engineering team.
  • Control of the browser: network interception, multiple isolated contexts, downloads and uploads, all in code.
  • No per-bot licence. Scaling out is an infrastructure question, not a procurement one.

What you have to build yourself

This is the part people underestimate. Playwright drives the browser. Everything a platform's control room does, you build. On our engine that meant:

  • A job API and a queue (FastAPI, Celery and RabbitMQ) so work is picked up, retried and never lost.
  • Session and result storage (Redis), and a full log of every step (MongoDB).
  • A way for people to step in for OTPs, CAPTCHAs and uploads, then hand back to the bot.
  • Failure labels, so the right person fixes the right problem.
  • A dashboard with an honest success rate.
  • Deployment, scaling and monitoring (Docker on AWS ECS).
Playwright drives the browser. The rest is yours.what we built around it
Playwrightbrowser control, auto-waiting, selectors
Job API + queueFastAPI, Celery, RabbitMQ
Sessions + resultsRedis
Step logMongoDB
Human handoverOTP, CAPTCHA, uploads
Failure labelswho fixes what
Dashboardhonest success rate
Deploy + scaleDocker, AWS ECS

None of that is exotic, but it's real engineering time. If you don't have engineers who'll own it for years, a platform is probably cheaper than it looks.

How I'd choose

If this is trueLean towards
The work lives in desktop apps, Citrix or legacy systemsPlatform
Business users will build and maintain the botsPlatform
You need audit and access controls signed off fastPlatform
The work is all in the browserPlaywright
Many sites do the same job in different waysPlaywright, config-driven
You have engineers who'll own the platform around itPlaywright
Bot count will grow a lot and licences are the blockerPlaywright
A quick way to pickscenario
Is all the work inside a browser?
No: desktop, Citrix, legacy appsPlatform RPA
Many sites doing the same job differently?
YesPlaywright, config-driven
Who will maintain the bots?
EngineersPlaywright
Business usersPlatform RPA
Not a rule, a starting point. The table above has the longer version.

For us the browser-only and many-similar-sites rows decided it. Every portal was a website, there were dozens of them, and each new one would have been another bot to build and license. With Playwright and a config-driven design, a new portal is a config file.

The part that matters more than the tool

I've seen fragile bots on platforms and fragile bots in code. The tool isn't usually what makes a bot fragile. One script per site, no clear definition of "done", no plan for the steps a bot shouldn't attempt, and no labels on failures will hurt you on any tool.

Get those right and either side works. Get them wrong and switching tools just moves the problem.

Product details reflect public documentation and my own use of Blue Prism, Appian, Selenium and Playwright. Check current features and pricing with each vendor before deciding.