Total cost of ownership (TCO) adds up everything a tool costs over its working life, not just its price. It has four parts: licenses, infrastructure, people and exit costs. The first two appear on invoices; the last two usually decide the answer. The query below compares three ways to run one ingestion job for three years. The inputs are illustrative, not quotes from any vendor: replace them with your own estimates.
-- Three-year cost of one ingestion job, three ways. Illustrative inputs: use your own.
CREATE TABLE option (name VARCHAR, setup_hours INT, license_month DECIMAL(9,2),
infra_month DECIMAL(9,2), ops_hours_month INT);
INSERT INTO option VALUES
('Managed SaaS connector', 8, 500.00, 0.00, 2),
('Self-hosted open source', 60, 0.00, 150.00, 10),
('Custom Python job', 160, 0.00, 40.00, 16);
SET VARIABLE rate = 75; -- loaded cost of one engineer hour, in dollars
SELECT name,
36 * (license_month + infra_month) AS tools_3y,
getvariable('rate') * (setup_hours + 36 * ops_hours_month) AS people_3y,
tools_3y + people_3y AS total_3y,
round(100 * people_3y / total_3y) AS people_pct
FROM option ORDER BY total_3y;┌─────────────────────────┬───────────────┬───────────┬───────────────┬────────────┐ │ name │ tools_3y │ people_3y │ total_3y │ people_pct │ │ varchar │ decimal(18,2) │ int32 │ decimal(18,2) │ double │ ├─────────────────────────┼───────────────┼───────────┼───────────────┼────────────┤ │ Managed SaaS connector │ 18000.00 │ 6000 │ 24000.00 │ 25.0 │ │ Self-hosted open source │ 5400.00 │ 31500 │ 36900.00 │ 85.0 │ │ Custom Python job │ 1440.00 │ 55200 │ 56640.00 │ 97.0 │ └─────────────────────────┴───────────────┴───────────┴───────────────┴────────────┘
With these inputs the option with the largest invoice is the cheapest, because people's time is 85-97% of the cost of the other two. Change one assumption and the ranking can flip: if the connector were billed per row and BookNest's volume tripled, its license line would triple too, and self-hosting would win. Write the assumptions down and revisit the decision when they change.

Self-hosted open source hides its cost in upgrades and on-call; managed services in egress fees and price changes; custom code in maintenance forever. Cloud Data Warehouses and Security and Lakehouse Costs put real prices on warehouses and lakehouses.