GuideUpdated 31 Oct 2026
How to automate copy-paste between applications, even when there is no integration
To stop copy-pasting between two applications, try these in order and stop at the first that works: a native integration, a scheduled import or export, a no-code tool such as Zapier, Make or Power Automate, desktop RPA, an API integration and, when a system has no API, browser automation. The right one depends on whether both apps expose the data, how often it moves, what a failed run costs and who will maintain it.
Which option should I try first?
Rank the options by how little you have to build and maintain. Start at the top, and move down only when an option cannot do the job.
| Option | Fits when | Breaks when | Rough effort |
|---|---|---|---|
| 1. Native integration | Both apps list an integration that moves your fields in the direction you need | It syncs one way, skips custom fields or runs too slowly | Minutes to an afternoon |
| 2. Import, export or scheduled CSV | Data moves in batches, and one app exports a file the other can import | You need near real time, or the import cannot update existing records | An hour or two, then a repeating chore unless scheduled |
| 3. Zapier, Make or Power Automate | Both apps have connectors, the flow is a straight line and volume is modest | No connector has the field, a failed run must roll back or billing grows with volume | An hour to an afternoon per flow |
| 4. Desktop RPA (Power Automate for desktop, UiPath) | A desktop program has no API and a person's clicks are the only way in | A screen changes, a pop-up appears or the machine is off or locked | Days to build, plus upkeep |
| 5. API integration | Both systems have APIs and you need reliability, two-way sync or code you own | One system has no API, or the job is too small for code | Days to weeks, depending on the systems and the rules |
| 6. Browser automation (Playwright, Selenium) | A web system has no API, but a person can do the job in a browser | The site adds MFA or CAPTCHA, changes its layout or forbids automated access | Days to weeks, plus upkeep when the site changes |
The effort column is a rough order of magnitude, not a quote. It grows with the number of fields, exceptions and systems involved.
Is there already a native integration?
Check first, because it is the cheapest option and someone else maintains it. Look in each app's integrations or marketplace page for the other app. Then check the details: which fields it carries, which direction it syncs, how often it runs, what it does with a record that already exists and what happens when it fails. Some native integrations are limited to certain plans.
Fits when it moves the fields you need in the direction you need. Breaks when it is one-way and you need two-way, it ignores custom fields or it runs too slowly. A native sync is also hard to change: if your rules differ from its defaults, you work around it or replace it.
Can a scheduled import or export do it?
Many systems can export a report as CSV or Excel, sometimes on a schedule, and most can import a file. For data that moves in batches, such as a daily list of orders or a weekly payments file, this is plain and reliable.
Fits when timing is not critical and the import can match on a unique key, so a re-run updates a record instead of duplicating it. Breaks when you need near real time, the file format drifts or someone has to remember to run it. A scheduled script between the export and the import removes the person, but then you have built a small integration, and it needs the same care as one.
Is Zapier, Make or Power Automate enough?
Often, yes. These tools join apps through ready-made connectors. A trigger, such as a new email, a new row or a new deal, starts a flow, and actions write to the other app. Zapier calls a flow a Zap, Make calls it a scenario and Power Automate calls it a cloud flow. All three handle simple branching, filters and basic data cleanup. A typical flow for email to spreadsheet: a labeled email arrives, the tool pulls out the fields and adds a row to a sheet (the data-entry guide covers the steps).
Fits when both apps have connectors, the flow is a straight line and a missed run is cheap to retry. Breaks when no connector exposes the field you need, a failed step leaves a half-finished record across systems, the same record is created twice or the bill grows with every run: Zapier counts tasks and Make bills credits. Zapier or Make vs a custom integration sets out the criteria. Testing the failure cases takes longer than building the happy path.
When does desktop RPA make sense?
RPA (robotic process automation) tools such as Power Automate for desktop and UiPath drive the screen of a desktop program the way a person does: they open windows, click, type and copy values. They exist for software that has no API and no connector, such as an old Windows application.
Fits when the program has no other way in. Breaks when a screen layout changes, a pop-up appears, a session times out or the machine that runs the robot is off or locked. Each of those stops the run, and a robot that clicks the wrong thing can write wrong data without raising any error. If the system also has a web interface or an API, one of those is usually more reliable than clicking a desktop screen. Licensing usually differs between attended runs, where you are at the machine, and unattended runs, so check the current terms.
When should I build an API integration?
When both systems have an API and the job needs more than a straight line: two-way sync, rollbacks, volume, rules from your accounting or CRM, or code and hosting you own. A custom integration calls each system's own endpoints, so it reads and writes exactly the fields you choose, retries safely and keeps a log.
Fits when reliability matters and the rules are specific. Breaks when one side has no API, or the job is so small that a connector would do. APIs also change, so plan for versioning, rate limits and credentials that expire.
Two builds on this site show the range. Aid Through Trade keeps orders, customers and its product catalog in Brightpearl, its ERP, while sales works in HubSpot. HubSpot changes reach Brightpearl in real time through webhooks, Brightpearl data reaches HubSpot in daily jobs, and loop protection stops a note synced one way from coming back as a duplicate (Aid Through Trade). Zuniga's reps priced each pool in one tool and then retyped the proposal into HubSpot; now, when the client accepts, the app creates the contact, deal and line items in HubSpot (Zuniga).
How do I automate copy-paste when a system has no API?
Some systems offer no API and no connector: a vendor portal, a class-management system, a government site. Before you automate the screen, ask the vendor whether an export, a scheduled report or an API exists, sometimes on another plan or on request. If not, browser automation drives the same web pages a person would, using a tool such as Playwright or Selenium, and runs on a server on a schedule.
A reliable flow looks like this:
- 1Sign in with a dedicated account whose credentials sit in a secrets store, not in the script, and keep the session state.
- 2Open each page or report and read the data, handling pagination, conditional fields and slow-loading components.
- 3Normalize it into clean, typed records.
- 4Validate: required fields are present, counts match what the page shows and nothing is duplicated.
- 5Write to the destination through its API or import, updating on a unique key.
- 6Log the run and alert a person when it fails.
Two builds work this way. PlanYear's benefits consultants needed plan data across medical, dental, vision, life and more, and were copying it into spreadsheets by hand. A Playwright-based extractor logs in, keeps session state, navigates every plan type, handles the portal's Ant Design components, pagination and conditional fields and outputs clean normalized datasets (PlanYear). DeMont Family Swim School's enrolment data sat in iClassPro with no API the school could use. A service signs in, pulls the families, students and drop-list reports and syncs linked parent, household and child records into HubSpot on a schedule, with no manual exports (DeMont).
What breaks, and what to do about it:
- A changed layout. The robot cannot find the field. Build checks that fail loudly when an expected field is missing, and keep a sample page to re-test against.
- Logins and MFA. If the site requires a second factor or a CAPTCHA, an unattended run may not be possible. Ask the vendor for an API key or a service account. Do not work around a security control.
- Terms of use. Check that the vendor's terms allow automated access to your own data, and keep the request rate gentle.
- Where it runs. On a server on a schedule, not on someone's laptop.
- What a person checks. The failure alerts, and a short summary of each run: items read, items written, items set aside. If the counts do not match, someone looks. Make retries safe and match on a key, so a re-run updates a record instead of duplicating it.
What does it cost to run?
No-code tools bill by usage: Zapier counts tasks and Make bills credits, so the bill follows the number of runs. Plans change, so read the current ones. RPA adds licenses and a machine to run on. API and browser builds cost a one-off build, hosting and some time when a system changes. A custom build here is a fixed price agreed in writing before any code is written.
When is a developer the right call?
When the options above have run out: no connector and no API, a failure that must undo itself, two systems that must stay in step both ways, or data you need to own. If that sounds like your case, an automation consultant who also writes the code can scope it on a 15-minute call. The guide to automating repetitive work covers how to choose what to automate in the first place.
Builds that move data without copy-paste
- 4+plan types extracted automatically, from medical to life
PlanYear · 2026. Playwright extraction from a web portal, across plan types, output as normalized datasets instead of hand-copied spreadsheets.
- 3linked HubSpot record types per family: parent, household, each child
DeMont Family Swim School · 2025. iClassPro, which had no API the school could use, synced into HubSpot on a schedule with no manual exports.
- 10.4kBrightpearl contacts migrated into HubSpot and kept in sync
Aid Through Trade · 2025. A two-way Brightpearl and HubSpot sync: real time from HubSpot, daily from Brightpearl, with loop protection.
- 5records and files created on accept: contact, deal, line items, PDF, Excel
Zuniga Pool Construction · 2026. A proposal no longer retyped: on accept, the HubSpot contact, deal and line items are created and a PDF and Excel workbook attached.
Common questions
How do I automate copy and paste between two programs without coding?
Check in this order: a native integration between the two apps, a scheduled import or export, then a no-code tool such as Zapier, Make or Power Automate. None of these needs code when both apps have the connectors or features you need. Code becomes necessary when no connector has the field, a failed run has to undo itself or one system has no API.
How do I automate data entry from Excel into a website?
Check whether the site has an import or bulk upload feature, because a file import is the most reliable route. If it has an API, a script or a connector can send the rows. If it only has a web form, browser automation can fill it from each row of the sheet, but it breaks when the form changes, so add checks and a log. Read the site's terms of use first.
Can I automate a web portal that has no API?
Often, with browser automation. A tool such as Playwright signs in, reads the pages and outputs clean data on a schedule. The PlanYear extractor does this across plan types, and the DeMont service does it for iClassPro reports. Ask the vendor for an export or API first, check the terms of use, and expect to maintain it when the site changes.
Is RPA better than an API integration?
No. An API integration is steadier because it uses the interface the vendor maintains for software, while RPA depends on what is on the screen. RPA is for software that has no API and no connector. If both options exist, use the API.
How much does it cost to have this automated?
Pricing is fixed and agreed in writing before any code is written. After a 15-minute scoping call you get a written quote with fixed scope, timeline and deliverables within 48 hours. No price list is published, because every project is scoped on its own. No-code tools bill by usage instead.
Related pages
- Automation consultant for small business — An automation consultant who also writes the code: I pick the work worth automating, build it on a fixed-scope written quote and hand over the code.
- Report, document and data automation — Word mail-merge reports built end to end, structured data extracted from web portals, and PDF and Excel files generated automatically. One senior engineer.
- How to automate repetitive work — How to automate repetitive tasks: score the work, pick a tool from formulas to custom code, automate data entry from email or PDF, and avoid common pitfalls.
- Zapier or Make vs a custom integration — the criteria for choosing, with examples from the builds
- All guides
- All case studies