Build apps · Your App Cloud
Replace spreadsheets with an internal app
Choose the sheet other people wait on and turn the lists hiding in its rows into records. Check the app's figures against the sheet, then lock the old file so every edit has one home.
Built around a purpose
From the order sheet to an app the kitchen runs on.
For the person who keeps a shared spreadsheet running after it has turned into a process. Orders or requests get typed into it all day, and someone copies part of it into a list for someone else. You repair it when two edits collide or a lookup breaks.
For illustration: a catering kitchen in Sacramento, California takes office lunch and event orders by phone and email. Every order goes into one shared sheet, which now holds 14 months of rows. Each row has columns Item 1 to Item 8 with a quantity beside each. A Notes cell holds gate codes, allergies and any ninth dish. Line totals look up prices on a Menu tab. Each afternoon the kitchen lead filters tomorrow's rows into a Prep tab, and each morning the driver prints a Deliveries tab.
An order app where each order holds as many lines as it needs, each at the price the customer was quoted. The kitchen opens a prep list for any date instead of a copied tab, and the driver sees only today's stops. The old sheet stays view-only, named with the date it stopped taking orders.
The owner adds and changes orders all day while the kitchen and the driver read them, so the orders are stored records, and separate sign-ins for the owner, the kitchen and the driver need authentication. Both are backend capabilities, so this is an app with data; a public menu page would be a one-page site. Model and service usage is metered separately. Build and preview it on any plan. Putting it live needs Go or Pro. See pricing
Map who touches the sheet, and when
Before you build anything, write down each person and what they do with the file. The owner adds and edits orders all day. The kitchen lead reads tomorrow's orders at 2 p.m. and rebuilds the Prep tab. The driver needs addresses and delivery windows at 7 a.m. and nothing else. Each of those jobs becomes a screen in the app, not a tab someone copies.
Unfold the columns that hide a list
Item 1 to Item 8 is a list of dishes laid sideways and capped at eight. Describe it in Studio as order lines: one record per dish with its quantity, linked to its order. Split the Notes cell too. The gate code belongs with the delivery address, and allergies belong on the order, where the kitchen will see them.
Freeze the price, recalculate the total
Go through the formula columns and ask whether each result should follow later edits. The order total should, because it adds up the lines. The unit price should not. Today it looks up the Menu tab, so a price rise quietly rewrites last spring's orders. Store the price on each line when the order is taken.
Import 14 months and match three figures
Import the Orders tab, then compare three figures with the sheet: August's order count, August's combined value, and each dish's quantity for one busy Thursday. A gap usually points to a ninth dish typed into Notes. Add it to its order as a line by hand.
Run a week in both, then lock the file
For one week, enter each new order in the app and in the sheet. The kitchen lead cooks from the app's prep list and checks it against the Prep tab. Once a week passes with no differences, rename the file with the date, make it view-only for everyone, and take it off shared bookmarks.
Scope the first version
What a first version includes.
Orders
One record per order: customer, contact phone, event date, delivery window, headcount, address with gate code, allergies, a status such as confirmed or canceled, and whether the deposit has arrived. The notes field goes back to holding notes.
Order lines
One record per dish on an order, with the quantity and the unit price on the day the order was taken. An office lunch for 60 can have 3 lines or 14, with no eighth-column ceiling.
Menu
Each dish with its current price and whether it is offered this season. A price change here applies to orders taken from then on, not to the ones already saved.
Prep list for any date
Pick a date and see the total of each dish across that day's orders, with allergy notes beside the orders they belong to. It replaces the Prep tab rebuilt by hand every afternoon.
Today's stops
The day's deliveries in time order, with address, gate code, delivery window and contact phone, and no prices. The app opens in a browser, including on the driver's phone.
Deposits outstanding
Orders due in the next ten days with no deposit recorded, soonest first. It takes over from scrolling the sheet for rows with an empty deposit date.
Cutover record
The date the sheet was locked, the three figures that matched, who checked them, and the final copy of the file attached for reference.
Test it in the preview
Before you share it.
- Open five imported orders at random beside their rows in the sheet. Every dish, quantity and allergy note should be there, including any dish that sat in the Notes cell.
- In the preview, raise the price of one dish on the Menu, then open an order from last spring that includes it. The line should still show the old price, and the order total should not move.
- Create an order with 12 dishes, four more than the sheet had room for. Every line should save, and each dish should appear in that date's prep list with the right quantity.
- Mark one order canceled. Its dishes should drop out of that date's prep list and it should leave today's stops, but the order itself should stay on file with its lines and status.
- Sign in as the driver. Today's stops should show addresses, gate codes and delivery windows. The driver shouldn't be able to edit an order or open the order lines with their prices. Set this through the access you describe for each collection, then check it from the driver's sign-in, not the owner's.
- Before you lock the sheet, export the app's data and open the export. You'll know what it contains if you ever need the orders outside the app.
Together in your app cloud
The pieces behind the possibility.
Choose the models and services that support the experience you want to create.
Database
Keep data and context for apps and agents
Authentication
Give the right people access
File storage
A home for your documents and media
Shape the details
Make it work for your world.
- Move one sheet, not the whole workbook. The yearly summary and the what-if pricing tab are analysis the owner reads alone, so they can stay in the spreadsheet. Move the tab other people wait on.
- Set the lock date before the parallel week starts, and name the person who decides it. Without a date, someone adds one more order to the old file, and the two copies drift apart.
- Allergies are health details about the people eating. Give them their own field and show that field on the prep list beside each order. Keep it off today's stops, because the driver has no use for it.
- An upload is a snapshot, not a sync. After the lock date, fix mistakes in the app, even on old orders. A correction typed into the archived file stays in that file.
A little more context
Good questions.
When should a spreadsheet stay a spreadsheet?
When one person uses it to think: a budget draft, a what-if price model or a one-off analysis. Replace it when other people wait on it, copy parts of it for someone else, or undo each other's edits. If several sheets feed one set of numbers that never agree, the guide to connecting your business information below fits better.
Should I convert my file or rebuild the process?
Usually some of each. The Excel to App page shows what each part of a workbook can become. It suits sheets where each row is one thing and each column holds one fact. Rows that hide a list, such as Item 1 to Item 8, need the unfolding this guide describes before the import.
What happens to my formulas?
Plan to describe what each one produces rather than rely on the cell carrying over. List each formula column and its result. Then decide whether that result should change when its inputs change, like an order total, or stay as it was on the day, like a quoted price. Describe both in Studio and compare a few orders with the sheet, including a canceled one.
Do I need to begin with a file?
No. You can describe the process, start with an empty app and enter open orders by hand. Start from the file when its history matters, such as last year's orders from repeat customers. The links below cover preparing an Excel workbook, a CSV export or tables kept in a Word document.
Explore Pricing for plans, included capabilities, and usage details.
Start from what you have
Bring the file you already use.
Keep exploring.
Your ideas, up and running
Your next idea has a home.
Build an app. Run an agent. Make it yours.
Start building