General
Your Spreadsheet Isn't the Problem. The Work Behind It Is.
HubSpot is making external data usable inside the CRM, and that's the right direction. But a spreadsheet isn't always a data source — sometimes it's an unofficial application holding a workflow your systems don't represent. Data connectivity is not workflow transformation.
HubSpot is making a smart move.
It is increasingly letting data that lives outside the CRM — Google Sheets, Excel, other sources — become directly usable inside it: for segmentation, for reporting, and increasingly for triggering workflows and AI actions. Its workflow tooling can already fire on a change in a Google Sheet and run actions across HubSpot and third-party applications.
That is the right direction for enterprise software. But it raises a question the data layer can't answer on its own.
What if the spreadsheet isn't really a data source?
What if it's an unofficial application?
A sales team's spreadsheet might hold target accounts, deal priorities, pricing exceptions, implementation constraints, customer commitments, next steps, and internal approvals. At first glance the problem looks like data: we need to get this spreadsheet into the CRM.
Then ask the team why they maintain it. They use it to track work, reconcile information, decide what needs attention, assign ownership, manage exceptions, record decisions, coordinate with other teams, remember what happened.
The spreadsheet isn't holding information. It's holding a workflow the CRM doesn't fully represent.
Data connectivity is not workflow transformation
Two questions, two different problems:
- The data problem: how do we get this information into HubSpot?
- The workflow problem: why does someone need this information, what decision are they trying to make, what happens next, and which systems need to change as a result?
HubSpot is getting very good at the first one. LevelOneAI starts one level above it.
A concrete example
A company has a spreadsheet called Supplier Exceptions: PO number, supplier, promised date, required date, inventory, customer impact, buyer, status, escalation, notes.
They could connect that spreadsheet to the ERP. They could connect it to the CRM. They could expose it to an AI agent. The technology might work perfectly.
And the buyer still spends the morning looping ERP → Excel → Outlook → Teams → supplier portal → ERP → Excel: checking what changed, figuring out what matters, deciding who needs to act, and updating multiple systems by hand.
The spreadsheet was never the problem. The coordination work was.
So instead of moving the spreadsheet into another system, ask what the buyer is actually trying to accomplish. Maybe it is: resolve supplier exception #10492.
Now the experience can assemble the PO information from the ERP, the supplier's response from email, inventory from the inventory system, customer requirements from the CRM, contract terms from documents, and supplier history from prior transactions — one work item, one decision. Accept partial shipment. Request expedite. Find an alternate supplier. Escalate. The workflow then coordinates the actions across the systems underneath.
That is a fundamentally different proposition from making the spreadsheet easier to access.
But doesn't this create a new data problem?
This is the most legitimate objection to the whole model, and it deserves a precise answer. If you put an Operations Workbench between people and the systems of record, where does the data live now — and what happens when the two disagree?
The answer: the Workbench does not become a second system of record.
SAP owns the authoritative PO. Salesforce owns the authoritative opportunity. The ERP owns the authoritative inventory balance. The contract system owns the contract terms. The Workbench does not create competing truths for those fields. It assembles the context needed to do the work — some of it transient, some cached, some AI-generated — and it owns its own operational state: this exception is assigned to Jane. Approval is pending. Supplier follow-up is due tomorrow.
What it should never do is silently become the owner of "PO quantity = 1,000" when SAP is the authority for that field.
Our rule is simple: every authoritative field has one owner. LevelOneAI can display the customer name, the PO, the inventory balance, the contract terms, and the workflow status together. Displaying a value is not owning it. That is the line between an Operations Workbench and a shadow database.
Writes go back to the system that owns the truth
A workflow should never say "I updated the PO" when it only updated its own database.
The buyer chooses Expedite. The Workbench determines the governed write — update the supplier commitment in the ERP — sends it through the ERP's own API, and records the result. The ERP accepts or rejects the change. The ERP remains the authority.
That sounds like an implementation detail. It isn't. It is the architectural principle that keeps an Operations Workbench from becoming another source of truth.
And what happens when the API fails?
This is where many workflow promises break down. The user clicks Approve and update ERP. The interface shows Done. But the ERP API timed out.
Now what? If the workflow silently assumes success, you have created state divergence: the workflow says approved, the ERP says still pending. That is unacceptable.
So every important write gets a receipt — what action was requested, which system owns the result, the target record, the transaction identifier, the expected state change, whether the authoritative system confirmed it, and when it happened. And actions are idempotent: safe to retry without performing the same business action twice. On a timeout, the Workbench can answer: was the original request accepted, was it completed, can it safely be retried, does the source system already reflect the desired state?
That is what makes an Operations Workbench reliable rather than merely convenient.
Drift should become visible work
Even well-designed systems drift. Someone edits a record directly in Salesforce. An overnight ERP job changes a status. A supplier portal updates. An integration stops running. The Workbench may be holding an old representation.
So it has to check for divergence where it matters. The workflow believes the PO is awaiting supplier confirmation; SAP now says the supplier confirmed. Detect the discrepancy. Don't hide it. Don't overwrite SAP. Don't continue silently. Reconcile with the authoritative source, or surface the conflict as work someone owns.
Stale state in an operational workflow isn't a cosmetic problem — it's a financial and customer one.
Failure should be visible too
A failed automation is still a workflow state. Not "something went wrong" buried in a log only IT can read, but:
PO 45001234 — ERP update failed. Supplier expedite request was approved, but the ERP update could not be completed. Reason: API timeout. Current ERP state: unchanged. Next step: retry. Owner: Procurement Operations.
The person doing the work always knows the actual state of the operation. That is the difference between operational software and a pretty interface sitting on top of APIs.
And the IT maintenance debt?
The second-biggest objection, and a fair one: sounds great — now I have another custom system to maintain.
The goal isn't a bespoke application full of one-off integrations that only one consultant understands. It should be built from explicit contracts and reusable primitives: defined system ownership, governed API connections, reusable workflow patterns, standardized action interfaces, integration monitoring, audit trails, versioned workflows, automated health checks, visible failures, documented dependencies.
IT should inherit an understandable operating model — not another mysterious black box. And changing the workflow shouldn't mean rewriting the systems of record underneath it.
The distinction that matters
Bringing data together is not the same as bringing work together.
A spreadsheet can be a data source. It can also be a queue, a decision system, a handoff mechanism, an exception tracker, a memory system — an unofficial application.
If you only move the data, you may preserve the underlying work. If you understand the work, you may be able to eliminate the spreadsheet entirely.
System of record: what is true? System of work: what needs to happen?
The ERP stays the authoritative answer to what is the current PO? The CRM stays the authoritative answer to what is the current opportunity? The Workbench answers what needs attention right now, why does it matter, who needs to decide, and what should happen next? Complementary responsibilities, not competing ones.
Where AI becomes useful
AI doesn't need to become another database. It can operate inside the workflow — reading supplier emails, extracting dates and quantities, interpreting customer requirements, summarizing contracts, identifying discrepancies, assembling context, classifying exceptions, recommending next actions, drafting communications.
The workflow still governs state, ownership, business rules, permissions, approvals, and actions. The systems of record remain authoritative for their data.
AI interprets. Rules govern. Workflow orchestrates. People decide.
The bigger opportunity
The future of enterprise software isn't necessarily about replacing Salesforce, HubSpot or SAP — and it isn't about forcing every spreadsheet into them either. It's about making the work that crosses them actually executable.
Nobody should have to remember that the opportunity is in Salesforce, the PO is in SAP, the supplier's response is in Outlook, and the exception tracker is in Excel. They should be able to ask what do I need to resolve today? — and have the system assemble the context, surface the decision, coordinate the action, and leave the underlying systems consistent with what actually happened.
The systems of record keep the truth. The Workbench makes the truth useful.
Not another database. Not another CRM. Not another integration tool. A system of work for the workflows that fall between your systems.
Your systems stay. Your people stop being the integration layer.