Fourteen checks for auditing a web budget in Spain: VAT, copyright transfer, performance thresholds, and 36-month real costs.
Audit a web budget by checking fourteen specific points: itemized line items, explicit VAT, number of screens and languages, written copyright transfer, repository access, domain ownership, fixed revision rounds, acceptance criteria, performance thresholds, and 36-month total cost. If half of these are missing, you are not looking at a price; you are looking at an intention.
This article goes against our own sector. We are a design and development studio, and we sign budgets just like the ones you are about to audit here. We are writing this because the real conversation is not the one you find on Google. In the forums where people really ask—Mediavida, Domestika—nobody writes "SME web design price." They write something else: "I don't know if this is worth what they are asking." And in the thread next to it, the novice developer confesses the same from the other side: "I don't know how to value those hours; I don't want to overcharge or undersell myself" (Mediavida, dev forum).
Both parties are flying blind. An opaque budget does not always hide a scammer; it almost always hides someone who doesn't know how long it will take either. The result for you is the same. You are paying for someone else's risk.
Auditing a budget is reading what it does not say, not comparing totals.
What you are actually auditing
A web budget is three documents compressed into one: a scope, a price, and a copyright transfer. When one of the three is missing, the one who keeps it is the person who wrote it.
On €5,000, VAT is an extra €1,050. If you are a freelancer or a company with taxable activity, you deduct it, and the real cost is the base amount. If you are an association, an exempt clinic, or an individual, that 21% is money that goes out and never comes back. That is why the first line we look for in any external budget is not the total: it is whether the total says "plus VAT."
1. A single price, no line items
"Corporate website: €2,900." A number alone cannot be audited; it can only be accepted or rejected. Ask for the breakdown by line items: strategy and content, system design, layout, development, integrations, testing, deployment. You don't need hours: you need to know what proportion of the money goes to each task. If 70% goes to "development" and content is not listed, you already know who will be writing the texts at eleven o'clock at night.
2. VAT does not appear anywhere
A professional budget states "tax base," "21% VAT," and "total." If it only provides a round figure, ask before signing and request the answer in writing. The difference between €3,000 and €3,000 + VAT is €630, and you will not win that conversation on WhatsApp halfway through the project.
3. No count of screens or languages
"Up to 5 sections" is not the same as "5 design templates." A 40-page website can have 6 templates; a 6-page website can have 6 different designs. What is charged is the template, not the URL. And a second language is not "a little bit more": it doubles content, review, testing, and maintenance. Count templates and languages, not pages.
4. "100% custom design" without saying where it starts
A purchased and adjusted template is a legitimate decision. Selling it as a custom design is not. Ask literally: Does this start from a purchased theme, a visual builder, or a proprietary system? All three answers are valid at different prices. Only one of them justifies a four-figure sum.
5. The word "transfer" does not appear
This is the most expensive sign of all. In Spain, the transfer of exploitation rights is limited to what the contract explicitly states, and when it says nothing, the law fills the gaps against you: if the time is not indicated, the transfer is limited to five years; if the territory is not indicated, to the country where it was granted; if the modalities are not indicated, to that which is strictly necessary for the purpose of the contract (Royal Legislative Decree 1/1996, consolidated text of the Intellectual Property Law, art. 43 · accessed 08-27-2026). A budget that does not mention transfer is renting you your own website without telling you.
Demand that the document names three things separately: the code, the design source files, and the texts and images.
6. The repository has no name
Ask where the code lives and who has access from day one. If the answer is "we have it and we'll give it to you at the end," the project has a single point of failure that is not you. A repository in your name with the provider invited as a collaborator costs zero euros and eliminates half the divorces in the sector.
7. Domain and hosting are under the provider's name
It happens more often than it seems, and almost never out of bad faith: out of convenience. The day you want to leave, that convenience is a key that someone else holds. The domain is registered under your tax name, with your email as the administrative contact. Always. Without exception.
8. "Unlimited revisions"
It sounds generous, but it is the opposite. Nobody gives away infinite work: either the price already includes a buffer for the revisions you won't use, or the moment will come when the revision requests stop being answered. We prefer a number. Two rounds per phase, with what is included in a round described in a single sentence, protect you more than an adjective.
9. No acceptance criteria
How do you know when a phase is finished? If the budget does not say so, it will be decided through argument. Agreeing on what winning means before moving a pixel is not bureaucracy: it is what allows you to pay without arguing and charge without chasing payments.
Standard industry practice: The budget describes deliverables ("cover design," "development"). Finished means "whatever the provider considers finished."
Our criteria: The budget describes verifiable states ("the cover passes the AA contrast test," "the form delivers to the CRM and returns a legible error"). Finished is verified by either party.
10. Promises ranking on Google
Google says it clearly in its own documentation: "No one can guarantee a #1 ranking on Google" and warns against those who promise positions or claim a special relationship with Google (Google Search Central, "Do you need an SEO?" · accessed 08-27-2026). A line in a budget that says "guaranteed first-page positioning" invalidates the entire document. Not because SEO is useless: because anyone who signs that will sign anything.
11. Kit Digital as a hook
Status of the Kit Digital program verified on 08-27-2026. The application deadlines for the program closed by segments and the public information available on that date does not accredit any open general call; the official Acelera Pyme headquarters did not respond to the automated query that day. Before accepting a budget that mentions the voucher, demand the file number of your grant.
If the budget discounts the voucher from a total without you having a grant with a file number, what you are signing is the full price with an imaginary discount.
12. Says "accessible website" without naming a standard or law
Accessible is not an adjective; it is a level of conformity. The budget should say "WCAG 2.1 level AA" or the European standard EN 301 549. And it should state if your case falls under Law 11/2023, which transposes the European Accessibility Act and whose requirements apply from June 28, 2025, with a transitional regime for service contracts already in force until June 28, 2030, and the exclusion of micro-enterprises providing services—less than 10 people and a turnover or balance sheet not exceeding 2 million euros—(Law 11/2023, of May 8, BOE-A-2023-11022 · accessed 08-27-2026).
Two nuances that almost no Spanish website mentions: the exclusion of micro-enterprises reaches services, not products; and being excluded from the law does not prevent a person with low vision from being unable to buy from you.
13. "Fast and optimized website" without a single threshold
Fast is an opinion. Core Web Vitals are numbers: LCP below 2.5s, INP below 200ms, and CLS below 0.1, measured at the 75th percentile of loads and separating mobile from desktop (web.dev, "Web Vitals" · accessed 08-27-2026). Ask that these three numbers appear in the acceptance criteria for the launch phase. A budget that promises speed and does not accept a threshold is promising a feeling.
14. No legal texts, no handover, no 36-month cost
Three absences that travel together. The first: Law 34/2002 requires making the provider's identification data available to the user, and its art. 22.2 requires informed consent before storing non-essential cookies (BOE-A-2002-13758 · accessed 08-27-2026). If the budget does not say who is drafting the legal notice, privacy policy, and cookies policy, no one is.
The second: the handover. Documentation, access, how to deploy, how to edit content. Without that, the website works but it is not entirely yours.
The third: recurring costs. Domain, hosting, licenses, email, backups, updates. An honest budget adds up year one and the next two, even if the resulting number hurts.
The template: audit any budget in 20 minutes
- The total distinguishes tax base, 21% VAT, and total
- There are line items with amounts, not just a single number
- It states how many design templates and how many languages are included
- It declares the basis of the design: proprietary system, purchased theme, or builder
- It names the copyright transfer for code, source files, and content, with scope and duration
- The repository is in your name and the provider enters as a collaborator
- The domain is registered with your NIF and your administrative email
- Revision rounds are counted and described
- Each phase has an acceptance criterion verifiable by you
- It does not promise search engine rankings
- If it mentions a public grant, it cites the call and file number
- It says WCAG 2.1 AA or EN 301 549, not "accessible"
- It sets LCP, INP, and CLS thresholds at the 75th percentile
- It includes legal texts, documented handover, and 36-month recurring cost
| What you read | Green reading | Red reading |
|---|---|---|
| Price | Base + VAT broken down by phases | A round number at the end of the page |
| Scope | Templates, languages, and integrations counted | "Complete corporate website" |
| Rights | Written transfer, exclusive and without time limit | Silence, or "license to use" |
| Deadlines | Dates per phase and what blocks them | "4-6 weeks" without dependencies |
| Quality | Measurable thresholds | Adjectives |
| Exit | Handover and accesses named | Nothing |
The three red readings that end up being most expensive are not the price. They are rights, exit, and recurring costs.
What a budget that can be audited looks like
We work with fixed prices per phase, agreed upon before starting, with no surprise hours. Brand and web in 6-12 weeks, digital products in 8-week phases, 30 days of support included after launch, and delivery of code, source files, and documentation. We accept a limited number of projects per year, and if we are not a fit, we tell you in the first call.
| # | Phase | What we do | Deliverables |
|---|---|---|---|
| 01 | Listen | We start by asking, not proposing. | Interviews · Audit · Agreed brief |
| 02 | Define | We agree on what winning means before moving a pixel. | Objectives · Scope · Success criteria |
| 06 | Launch and support | The launch is a checklist, not a leap of faith. | Handover · Documentation · 30 days of support |
| Item | Figure | Note |
|---|---|---|
| Strategy, content and definition | — | — |
| Design and system | — | — |
| Development and integrations | — | — |
| Testing, accessibility and performance | — | — |
| Launch and handover | — | — |
— = data being measured; we will publish it once we have our own sample.
A budget becomes auditable by the method it teaches in writing, not by the trust requested by the person who signs it.
A budget is not a price promise: it is the first sample of how the person who is going to work with you thinks. Read it like you would read the first commit of someone else's repository.
Do you want us to take a look at the one you have on your desk? Tell us what you have in front of you; we respond in less than 24 working hours.
Frequently asked questions
Is a more expensive budget always better?
No: a high price only buys time, and time can go into definition or improvisation. Compare which line items grow when moving up a bracket; if what grows is "development" and no testing or content appears, you are paying more for the same.
Can I ask for the budget to be broken down if I have already been given a closed price?
Yes, and the answer informs you as much as the breakdown. A studio that works in phases has it done; if they flatly refuse, it is not that they are protecting their method: it is that they do not have it written down.
What do I do if the budget does not mention the ownership of the code?
Ask for it in writing before paying the first invoice, naming code, source files, and content. The law limits the transfer to what is expressly agreed, so silence never plays in your favor.
I have been offered a website "free with Kit Digital." Is that a red flag?
It is a sign to check. Demand the file number of your grant and the specific call; without that, the discount does not exist and the real price is the total.
How much should my website cost then?
It depends on templates, languages, integrations, and who writes the content, and anyone who gives you a figure without asking that is guessing. Our budget brackets start below €10,000 and go above €50,000, and in the first 30-minute call, we tell you which one you fall into.
Keep reading
- How much does a website cost in Spain in 2026: breakdown by line items, with VAT and 3-year cost
- Do web prices include VAT? How to read a budget as a freelancer or SME
- Why one agency asks for €1,200 and another for €12,000 for the same website
- Who owns my website's code? Intellectual property and work-for-hire in Spain
- 18 questions to ask an agency before signing (and which answer is a bad sign)
Transparency note. Some of our own data in this guide is still being measured on real projects, with a single method. We will publish it with its sample size and date range once the sample is large enough; until then, every figure you see carries its source and date of consultation.
Sources
- https://sede.agenciatributaria.gob.es/static_files/Sede/Tema/IVA/IVA_reperc/Tipos_IVA_2026_26_02_2026.pdf — official AEAT table of 2026 VAT rates: confirms the 21% general rate and its legal basis (Law 37/1992, art. 90.One). Accessed 08-27-2026.
- https://www.iberley.es/legislacion/articulo-43-ley-propiedad-intelectual — text of art. 43 TRLPI: transfer is limited to what is expressly agreed; in the absence of a deadline, five years; in the absence of territory, the country of transfer; in the absence of modalities, that necessary for the purpose of the contract. Accessed 08-27-2026.
- https://www.boe.es/buscar/act.php?id=BOE-A-1996-8930 — consolidated text of Royal Legislative Decree 1/1996 (TRLPI) in the BOE, regulatory reference for signal 5.
- https://www.boe.es/buscar/act.php?id=BOE-A-2023-11022 — Law 11/2023: application of accessibility requirements from 06-28-2025, transitional regime for service contracts until 06-28-2030, and exclusion of micro-enterprises providing services (less than 10 people and ≤ €2M). Accessed 08-27-2026.
- https://web.dev/articles/vitals — Core Web Vitals "good" thresholds: LCP 2.5s, INP 200ms, CLS 0.1, measured at the 75th percentile and separating mobile from desktop. Accessed 08-27-2026.
- https://developers.google.com/search/docs/fundamentals/do-i-need-seo — literal quote from Google: "No one can guarantee a #1 ranking on Google," and warning about those who promise positions. Accessed 08-27-2026.
- https://www.boe.es/buscar/act.php?id=BOE-A-2002-13758 — Law 34/2002 (LSSI): art. 10 (general information of the provider) and art. 22.2 (informed consent for cookies). Accessed 08-27-2026.
- https://www.mediavida.com/foro/dev/presupuesto-proyecto-web-478936 — real emotional formulation from the provider's side ("I don't know how to value those hours, I don't want to overcharge or undersell myself"), used in the intro. Accessed 08-27-2026.
- https://www.acelerapyme.gob.es/kit-digital — official Kit Digital headquarters: returned a 403 error to the query of 08-27-2026; that is why the program status remains in the :::notice block with a placeholder for our own data instead of being stated.
Want to see this thinking applied to a real project?
