Skip to main content
Exepad
A laptop on a modern office desk displaying a detailed spreadsheet under soft natural light

Turn Any Excel File Into a Working App — No Code Required

Exepad Team · · 7 min read

Most small businesses are held together by a spreadsheet that grew too big. It starts as a simple list of customers. A few months later there is a tab for invoices, a tab for stock, a tab for contractors, and a colour-coded status column that only one person understands. Five hundred rows in, the file is slow to open. Two people edit it at the same time and one of them quietly loses their changes. The latest version gets emailed around with a filename that ends in _final_v3_USE_THIS_ONE.

The spreadsheet was never the problem. It did its job for longer than anyone expected. What the business has outgrown is the ceiling of what a spreadsheet can do — authentication, search, permissions, multiple users editing safely at the same time, notifications when something changes, a proper audit trail. These are not exotic features. They are the baseline of a real application. And getting them usually means a project with developers, quotes, and timelines measured in months.

We built Exepad because that gap — between a spreadsheet that works and an application that works — should be minutes, not months. Here is the walkthrough.

What Exepad does differently

When most tools talk about turning a spreadsheet into an app, what they usually mean is: keep the spreadsheet exactly as it is, put a web form on top, and call the form an app. The rows still live in the spreadsheet. The logic still lives in the cells. Anything complicated gets pushed back to the user.

Exepad takes a different path. The Excel file you upload is treated as a starting point, not a permanent backend. The rows get imported into the application's own database. Columns become proper typed fields — text, number, date, reference to another table. Relationships between sheets become relationships between records. Once that is done, the original file is no longer needed. You are left with a real application, not a spreadsheet wearing a costume.

That difference matters later. A real application can grow. You can add a new field without breaking a formula. You can give different users different permissions. You can plug in notifications, reports, and integrations without wondering whether the spreadsheet will buckle.

Screen view of a modern business application upload interface

The walkthrough, with real timestamps

For this piece we are working with an xlsx file called customers.xlsx. It has 460 rows across four tabs: Customers, Invoices, Contracts, and Contacts. It is the kind of file every small business has. The tabs reference each other by a customer ID column. It is imperfect — there are three duplicate rows, one customer has a trailing space, and the status column uses a mix of capitalisation.

0:00 — Upload the file. You drag the xlsx onto the upload area. Exepad reads every tab, detects the column types, and spots the duplicates and the capitalisation mismatch. No action is required yet — the cleanup happens later and in plain language.

1:30 — Describe the application. There is a single text field. You type: "A customer management app for a small services business. Sales reps should see their own customers only. Admins should see everything. Invoices should be linked to customers. I need to search by company name or contact email." That is all.

3:00 — Review the generated application. Exepad proposes a structure. A Customers table with typed fields. An Invoices table linked to Customers. A Contacts table linked to Customers. A search bar that covers company name and contact email. Two roles — Sales Rep and Admin — with the visibility rule you described. The duplicates are flagged for your review, not silently merged.

5:00 — Refine. You want one extra thing: a simple status field for Customers with four values — Prospect, Active, Paused, Churned — and a filter in the list view. You type that, and the change appears. No settings dialog, no admin panel to learn, no SQL.

7:00 — Publish. The application goes live at its own URL. You log in, invite two colleagues by email, and the first real row of data is already there — imported from the spreadsheet. The original file has served its purpose.

The anatomy of the generated app

What you publish at 7:00 is not a spreadsheet with a skin on top. It has the components of a real application. Those components matter because they are exactly the things a spreadsheet cannot give you.

Its own database. Data lives in proper tables with typed fields and referential integrity. A customer has one record. An invoice has one record and points at one customer. Editing one place does not silently break another.

Authentication. Users log in with their email. You control who can see what. Two sales reps do not see each other's pipeline. Admins see the whole picture. Permissions change as the team grows.

Search that works everywhere. The search bar looks across every field you tell it to. You do not need to remember which tab the contact email lives in. Typing the first few letters is enough.

Relationships between records. An invoice knows which customer it belongs to. Opening a customer shows every related invoice and every related contract. Nothing needs a VLOOKUP.

Room to grow. Want to add a new field — say, a contract renewal date? You add it in plain language. Want to add a reminder when that date is close? You add that too. The application stretches with you.

A clean customer relationship management dashboard with list view and detail pane

What people actually build

The walkthrough above used a customer file. But the pattern is the same across every kind of data you might already have in a spreadsheet.

A small logistics firm uploaded a driver roster and a delivery log. What came back was a shared driver app — each driver signed in, saw their own route, and marked each delivery complete. The office side saw everything in real time. The previous approach had been a group chat and a shared sheet.

A boutique retailer uploaded a product list with nine hundred SKUs across three tabs. What came back was a vendor directory with a search bar, a stock-level field that any staff member could update, and a public-facing page showing what was in stock. The mental model had been "we need a stock management tool". What they got was that, plus a small catalogue website, in one go.

A training consultancy uploaded a participant list and a course schedule. What came back was a booking application — participants signed up for sessions, admins saw capacity, certificates generated automatically. The spreadsheet had been good enough for twelve participants. It was not good enough for two hundred.

Getting started

If your business is still running on a spreadsheet that is just a little too big, try the walkthrough yourself. Take the file you already have — whatever state it is in, duplicates and all — and see what comes back.

For more on what the underlying process looks like, our earlier piece on building an application from a blank page in under ten minutes covers the complementary case: starting fresh, without an existing file to lean on. And if your spreadsheet is specifically about customers and pipelines, our walkthrough on turning a customer spreadsheet into a real CRM goes deeper into the CRM-shaped case. The dashboards piece is the companion if your spreadsheet is mostly numbers you want to report on.

The tool page, with more examples and a short video, lives at /convert-excel-to-app. The showcase gallery on that page covers the range of applications other people have already published from their own files — worth a look before deciding what to upload.

More from Features