Pricing: how we measure software size and cost
Mesterséges Intelligencia Központ Kft. is a software development company based in Budapest, Hungary. We do not price from estimated hours: we measure the functional size of the software in COSMIC function points (ISO/IEC 19761), and the offer and schedule are based on it.
In short: first we describe together what the software has to do, then we measure how big it is, and the price and schedule follow from the measured size. That is why we do not quote a price after a first phone call, and why we do not publish a price list.
Why measure size instead of estimating hours?
An estimate in hours tells you how much work the estimator expects, and that depends on the estimator's experience, caution and team. Two companies can give very different hours for the same task, and from the outside you cannot see why.
Functional size, by contrast, is a property of the software itself: it measures what the software has to do, not who builds it or how. That makes it checkable and repeatable, and it lets you compare two offers.
What is a COSMIC function point?
COSMIC is an international standard method (ISO/IEC 19761) for measuring the functional size of software. It counts the data movements in the functional processes of the software. There are four kinds of data movement:
| Data movement | What it means | Example |
|---|---|---|
| Entry | data arrives from a user or another system | a customer submits the order form |
| Exit | data goes out to a user or another system | the system sends a confirmation |
| Read | the software reads stored data | it loads the customer's previous orders |
| Write | the software stores data | it saves the new order |
Each data movement is worth 1 COSMIC function point (CFP), and the size of the software is their sum. A simplified "record an order" process, for example, consists of one Entry, one Read, one Write and one Exit, which makes 4 CFP. The measurement does not depend on the programming language, the technology or the team doing the work. Our article What is a COSMIC function point, and how is it different from estimating hours? explains the method with a worked example and its limits.
How does size become an offer and a schedule?
- Specification: together we list the functions, actors and data item by item (see How we work).
- Measurement: our own AI-assisted workflow measures each group of functions with several independent counts, and a reconciliation round makes sure every process counts exactly once.
- Review: we check the measurement and clear up any uncertain points.
- Offer: the price follows from the measured size, plus whatever the functional size does not express (see below).
- Schedule: we see the size per group of functions too, so we plan the stages, their order and the deadlines from it.
If a new requirement comes up along the way, we measure it the same way, so you can always see how much the scope changes and what that means for the price and the schedule.
What else affects the cost?
Functional size measures what the software does, but not everything that takes work. The measurement flags the following factors separately, so they do not stay hidden in the offer either:
- Integrations: how many external systems the software connects to, and how well their interfaces are documented.
- Non-functional requirements: performance, availability, data security, accessibility.
- Custom interface and graphics: tailored design and bespoke visual elements.
- Several platforms: when the same thing is needed on the web, on iOS and on Android.
- Data migration: moving the data of an old system into the new one.
- Complex computation and real-time behaviour: algorithms, live data streams.
Operation after handover is a separate item: running the system, maintenance and further development, and for AI features the usage-based fees of the language models. The questions below cover it as well.
Why does this make two offers comparable?
If two offers start from the same specification and the same measured size, they cover the same scope: you can see what each company asks for the same thing, and what it charges for separately. Hours cannot be compared the same way, because hours are not a property of the software. COSMIC is a public, standard method, so others can check our measurement too. It is worth asking the other bidders what scope their price covers.
Frequently asked questions
Why don't you give a price over the phone?
We do not quote over the phone because the price of software depends on what it has to do, and that cannot be measured responsibly in a short call. The first consultation is free: afterwards we describe the requirements together, measure the size and make an offer from it. You can ask for an appointment on the Contact page.
What makes a development more expensive?
A development costs more mainly when it has more functions, that is, more data movements. The factors above can also add to the cost: many or poorly documented integrations, strict performance and security requirements, custom graphics, several platforms or a large data migration.
How much does operation cost?
The cost of operation depends on what it includes: hosting and running the system, updates, bug fixes, further development, and for AI features the usage-based fees of the language models. We tailor the scope of operation to the specific system, and we measure further development the same way as the first. The FAQ page answers more questions.