01 Who these terms are between
These terms are between Joe Thorp, trading as ToolWright, of Suite 708, 80A Ruskin Ave, Welling, DA16 3QQ ("I", "me", "my") and the business engaging me ("you", "your").
I work with businesses only. These terms are not consumer terms, and nothing here is intended to apply to anyone contracting outside the course of a business. If you're not contracting as a business, don't proceed — tell me and we'll stop there.
I am not registered for VAT, so there is no VAT to add to my prices. If that changes I will tell you before quoting.
02 How we form an agreement
- You send me the spreadsheet, form or process and tell me what it needs to do.
- I send you a written proposal setting out what I'll build, the price, anything specifically excluded, and the support options in section 10. A copy of these terms is attached to the proposal as a PDF.
- You accept it in writing — email is fine — tell me which support option you want, and pay the deposit.
- At that point we have a contract, made up of my proposal and these terms. Where the two disagree, the proposal wins.
Proposals are valid for 30 days from the date I send them. After that the price and timescale may have changed and I'll need to reissue it.
The version of these terms in force when you accept the proposal is the version that governs the work, whatever appears on this website later. That's the version attached to your proposal, and it's the one to keep.
Nothing said in conversation forms part of the agreement unless it's written into the proposal. That protects both of us.
03 What I'll build
A single web application, based on a single spreadsheet or process you've identified, doing what my proposal says it will do. Unless the proposal states otherwise, that includes:
- The application built and made live on a web address
- Your existing data from the source file migrated across
- A layout that works on phone, tablet and desktop
- The ability to export your data back out as a spreadsheet file
- One round of changes after delivery, as described in section 8
- Ninety days of defect fixes, as described in section 9
- Thirty days of support and hosting from go-live, as described in section 10
04 What isn't included
Unless my proposal expressly says otherwise, the price does not cover:
- Integration with accounting, ERP, CRM or any other third-party system
- User accounts, roles or permission systems beyond anything described in the proposal
- Migrating data from anywhere other than the single source file agreed
- Hosting and support beyond the included thirty days (see section 10)
- Training beyond a written guide and a walkthrough
- Additional applications, additional spreadsheets, or a second phase of work
- Third-party costs — domains, licences, paid services — which you pay for directly
- Conformance with WCAG or any other accessibility standard, unless the proposal says otherwise
- Support for browsers other than the current versions of Chrome, Edge, Firefox and Safari
Anything on this list can be quoted separately. I'd rather tell you at the start than discover it halfway through.
05 What I need from you
- The source file, and honest answers about how it's actually used — including the workarounds
- One named person who can make decisions and answer questions
- Replies within three working days when I'm waiting on something
- Confirmation that you have the right to give me the data you're sending, and that doing so doesn't breach anyone's rights
- Feedback at the halfway review, and testing at delivery
If I'm held up waiting on you, the delivery date moves by the length of the delay. If I'm waiting more than thirty days, I may treat the project as paused and invoice for the work completed to that point.
06 Timings
Two weeks means ten working days, counted from the later of: the day I receive your deposit, or the day I receive everything listed in section 5.
I'll give you something to look at roughly halfway through, so problems surface early rather than at handover.
Dates are estimates given in good faith and are not of the essence. I'll tell you as soon as I know if something will run over, and why.
07 Price and payment
| Stage | Amount | Due |
|---|---|---|
| Deposit | 50% | On acceptance, before work starts |
| Balance | 50% | On delivery, before or at go-live |
All prices are in pounds sterling (GBP).
- The price is fixed for the scope in the proposal. It doesn't change because the work turned out harder than I expected.
- Invoices are payable within 14 days by bank transfer.
- The deposit is non-refundable once work has started, since it covers time already committed.
- If the balance isn't paid, I may suspend or take down the application until it is. I'll give you seven days' written notice first.
- Late payment carries statutory interest and compensation under the Late Payment of Commercial Debts (Interest) Act 1998.
If it isn't what was described
The fixed price is based on the source file or process as you described it at proposal stage. If what I actually receive is materially different — four linked workbooks rather than one, macros or scripts I wasn't told about, a second process bolted onto the first, or substantially more data or complexity than described — then within seven days of receiving it I may either:
- issue a revised quotation, which you are free to accept or decline; or
- withdraw from the agreement and refund your deposit in full.
If you decline a revised quotation, I refund the deposit in full and neither of us owes the other anything further. This is not a route to repricing work that simply turned out fiddly — it applies where the thing itself is materially different from what was described.
Choosing your support option
You choose one of the following when you accept the proposal, and it takes effect at the end of the included period in section 10: annual support at £750 a year, monthly support at £75 a month, or no support. I will tell you in writing at least 14 days before the first support payment falls due, so nothing is ever taken by surprise. You can change your mind and decline support at any point before that first payment.
08 Changes and acceptance
Your round of changes
After delivery you get one consolidated round of changes — send them as a single list within thirty days. Changes means adjustments to what was built: labels, layout, fields, calculations, workflow order. It doesn't mean new features or a different application.
Anything beyond that
If you want something outside the agreed scope, tell me and I'll quote it as a fixed price before doing any of it. No work happens, and no cost is incurred, without your written go-ahead.
Acceptance
The application is treated as accepted when you first use it for real work, or thirty days after delivery if you haven't raised anything in writing — whichever comes first. Acceptance doesn't affect your rights under section 9 or section 14.
09 Fixes after delivery
For ninety days after delivery I'll fix, free of charge, anything that doesn't do what the proposal says it does. It runs alongside, and is not shortened by, the included support period in section 10.
That covers defects. It doesn't cover changes of mind, new requirements, problems caused by someone editing the application themselves, or faults in a third-party service the application relies on.
Simple rule: if it's broken, I fix it. If it works but you'd like it to work differently, that's a change.
10 Ongoing support
The first thirty days are included
Support and hosting for the first thirty days after go-live are included in the build price. There is nothing to pay and nothing to set up. This runs alongside — and does not shorten — the ninety-day defect warranty in section 9.
What support covers
- Small changes, up to two hours a month. Adjustments to what's already there — a new field, a renamed label, a change to how something calculates, a tweak to the order of a workflow. Unused time is not carried forward, and anything beyond two hours in a month is quoted separately or rolled into the following month by agreement.
- Answering you. Email me and I'll reply. I aim to respond the same working day, and normally within two working days.
- Security updates. Patching the underlying components as and when I reasonably consider it necessary.
- Backups. Taken automatically, and restored by me if something goes wrong. Backups are provided on a best-efforts basis and are not a substitute for your own. You remain responsible for keeping your own copies, and section 15 applies.
- Hosting. Keeping the application live on the web address it was delivered on.
I am one person. Response times and availability are affected by annual leave and periods away from work. I'll give you notice of planned absence where I can, but no response time in these terms is a guaranteed service level, and none is offered as one.
What it doesn't cover
New features, additional applications, integrations with other systems, or anything materially beyond what was built. Those are quoted separately at a fixed price before any work starts, as set out in section 8.
The same rule as section 9 applies: if it's broken, I fix it. If it works but you want it to work differently, that's a change — small ones are covered by support, larger ones get quoted.
After the first thirty days
You choose your option when you accept the proposal (section 7), and I'll remind you in writing at least 14 days before the first payment is due.
| Option | Price | What you get |
|---|---|---|
| Annual | £750 / year | Everything above, including up to two hours of small changes a month. |
| Monthly | £75 / month | Identical cover, paid monthly rather than yearly. |
| None | £0 | See "If you don't take support" below. |
- Both options cover exactly the same thing. The only difference is how often you pay.
- The two-hour monthly allowance is not cumulative and does not carry forward between months, on either option.
- There is no licence fee and no per-user charge, however many people use it.
- The arrangement is rolling with no minimum term. Either of us can end it on thirty days' written notice.
- If you cancel a monthly arrangement, it ends at the close of the notice period. If you cancel an annual one, it runs to the end of the year you've paid for; annual fees already paid are not refunded pro rata.
- You may take support up later after declining it. If you do, I may need to charge for bringing the application up to date first, quoted in advance.
- I don't guarantee a particular level of uptime. The underlying hosting provider's availability is what it is, and I have no control over it.
If you don't take support
That's a perfectly reasonable choice and it costs you nothing. To be plain about what happens:
- Hosting continues for a further thirty days after the included period ends — sixty days from go-live in total — to give you time to make other arrangements.
- Before that date I will provide, free of charge, your data as an export file and the application files, so you can host it elsewhere.
- On that date the application is removed from my hosting infrastructure and stops being available at the web address I provided. If you haven't taken your export by then, ask and I'll still provide it.
- Removal does not affect your licence under section 11. The software remains yours to host and use wherever you like.
Handover pack
If you would rather maintain the application yourself or hand it to someone else, you can buy an optional handover pack for £250. It contains:
- The application files
- A full export of your data
- A written guide covering deployment, backup and restore
- One hour on a call with whoever will be maintaining it
The pack is optional. The application files and your data export are provided free of charge on request whether or not you buy it — the £250 covers preparing the written guide and the hour of my time, which are additional work. Beyond that hour, further assistance can be quoted separately.
11 Who owns what
Yours
All data you give me, and all data entered into the application, remains yours throughout. So does your branding, and any content you supply.
Yours on final payment
Once the balance is paid, you get a perpetual, irrevocable, worldwide licence to use, modify and host the application built for you, for your own business purposes. You can take it to another developer at any time and I won't obstruct that.
Mine
The application may include third-party open-source components. These remain the property of their respective owners and are licensed to you under their own licence terms, not under this agreement. I'll tell you which ones are used on request.
I keep ownership of the underlying tools, components, code libraries, patterns and know-how I bring to the job and reuse across clients. Your licence covers the application delivered to you; it doesn't transfer ownership of the general building blocks it's made from, and it doesn't stop me building similar applications for other businesses.
Until the balance is paid, I retain all rights in the work and any use of it is unlicensed.
Showing the work
I'd like to describe the work in general terms as an example of what I do — no client name, no data, no screenshots — unless you tell me not to. Say the word and I won't.
12 Data protection
Where I handle personal data contained in your files or your application, you are the controller and I am the processor. My privacy notice explains how I handle data generally. In addition, I agree that I will:
- Process personal data only on your documented instructions, unless the law requires otherwise — in which case I'll tell you first unless prohibited from doing so
- Process it only for the purpose of building, testing, delivering and supporting your application, and for the duration of that work
- Keep it confidential and ensure anyone with access is bound by confidentiality
- Apply appropriate technical and organisational security measures
- Not engage a new sub-processor without telling you first and giving you the chance to object
- Use only the sub-processors listed below, or others notified to you in advance
- Assist you, so far as reasonable, with data subject requests, security obligations, breach notifications and impact assessments
- Notify you without undue delay, and in any event within 48 hours, of becoming aware of a personal data breach affecting your data
- Delete or return the data at the end of the work, at your choice, and delete existing copies unless required to keep them by law
- Make available the information you reasonably need to demonstrate compliance, and allow for audit on reasonable written notice — once in any twelve-month period and at your cost, unless the audit follows a personal data breach affecting your data, in which case neither limit applies
Sub-processors and transfers outside the UK
The sub-processors I currently use are:
| Sub-processor | Purpose | Location |
|---|---|---|
| Netlify, Inc. | Application hosting | USA |
| Google Ireland Ltd / Google LLC | Email, calendar, file storage | Ireland / USA |
| Porkbun LLC | Domain registration and DNS | USA |
Some of these are based in, or store data in, the United States. Where personal data is transferred outside the UK it is protected by a safeguard recognised under UK law — typically the UK Extension to the EU-US Data Privacy Framework, or the International Data Transfer Agreement or Addendum to the EU Standard Contractual Clauses. You can ask me which applies to a given provider and I'll tell you. An up-to-date list is kept in my privacy notice.
You confirm that you have a lawful basis for the data you give me, and that giving it to me is compatible with the purposes for which you collected it.
Where the work allows it, I'll ask for a copy of your file with personal data replaced by dummy values. The structure is what I need. It reduces risk for both of us.
13 Confidentiality
Each of us will keep the other's confidential information confidential, use it only for the purposes of this agreement, and not disclose it — except to advisers who need it and are themselves bound to confidentiality, or where the law requires disclosure.
This doesn't apply to information that's already public, was already known, or is independently developed without reference to the other's information. It continues for three years after the work ends.
14 What I promise
- I'll perform the work with reasonable skill and care, to a standard you'd expect from a competent developer.
- The application will do what my written proposal says it will do.
- I have the right to grant the licence in section 11, and to my knowledge the work doesn't infringe anyone else's intellectual property rights.
Two things I want to be precise about:
- Browsers. The application is built and tested against the current versions of Chrome, Edge, Firefox and Safari. I can't warrant behaviour on older browsers or on ones I haven't been asked to support.
- Your historic data. Migration is carried out on a best-efforts basis from the file as you supply it. I don't warrant the accuracy, completeness or consistency of data that was already in that file — if it was wrong in the spreadsheet, it will be wrong in the application.
I don't promise the application will be free of every defect, will never be interrupted, or will suit a purpose I wasn't told about. Except as set out in these terms, all other warranties and conditions implied by law are excluded to the fullest extent permitted.
15 Limits on liability
If I get something badly wrong, my liability is capped at roughly what the job was worth. I'm one person building a fixed-price application, and I can't carry a business's trading losses on a £1,950 job.
Nothing in these terms limits liability for death or personal injury caused by negligence, for fraud or fraudulent misrepresentation, or for anything else that cannot lawfully be limited.
Subject to that:
- My total liability arising out of this agreement is limited to the greater of £1,950 or the total fees you have paid me in the twelve months immediately before the event giving rise to the claim.
- I'm not liable for loss of profit, loss of business, loss of anticipated savings, loss of contracts, reputational damage, or any indirect or consequential loss.
- I'm not liable for loss or corruption of data. You are responsible for keeping your own backups, including of the original spreadsheet, and for backing up the application's data once live. Any backups I take under section 10 are on a best-efforts basis and are not a substitute for your own. I'll show you how; the responsibility stays with you.
- I'm not liable for failures in third-party services — hosting, domains, email, or anything else outside my control.
These limits reflect the price of the work. A higher cap can be agreed in writing for a higher fee.
16 Ending the agreement
- You can cancel at any time in writing. The deposit isn't refunded, and you pay for work completed up to that point.
- I can end the agreement if you don't pay, don't provide what's needed for more than thirty days, or ask me to do something unlawful. I'll give written notice and a chance to put it right first, unless the problem can't be put right.
- Either of us can end it immediately if the other becomes insolvent.
- On ending, you pay for work done. If you've paid in full for delivered work, the licence in section 11 survives.
- Sections 11, 12, 13, 15 and 18 survive the end of the agreement.
17 General
- Whole agreement. The proposal and these terms are the whole agreement between us and replace anything discussed beforehand.
- Variation. Changes to these terms need to be in writing and agreed by both of us.
- Assignment. Neither of us can transfer this agreement to someone else without the other's written consent, which won't be unreasonably withheld.
- Subcontracting. I don't subcontract the build. If that ever changed, I'd tell you first and remain responsible for the work.
- Third parties. Nobody other than you and me has rights under this agreement.
- Severability. If any part is found unenforceable, the rest still stands.
- No waiver. If I don't enforce something straight away, I haven't given up the right to enforce it later.
- Events outside our control. Neither of us is liable for delays caused by events genuinely beyond our reasonable control, provided we tell the other promptly.
- Notices. Written notice by email to the addresses we've been using is valid notice.
18 Law and jurisdiction
These terms are governed by the law of England and Wales, and the courts of England and Wales have exclusive jurisdiction over any dispute.
Before going to court, we'll both make a genuine attempt to sort the problem out directly, and consider mediation if that doesn't work.