Terms of Service
- You pay a fixed price upfront for a written scope. Anything beyond it is a new quote.
- We back up first, work on a separate branch, and a human engineer approves every change.
- Eligible App Rescue jobs are fixed or refunded.
- You own your code and everything we deliver once the job is paid.
- Our liability is capped at what you paid for the job.
1. About these terms
These terms are an agreement between you and Variant Work Consulting Agency S.L. (“Variant Work”, “we”, “us”), Via Laietana, 39, Planta 2, 08003 Barcelona, Spain. They apply to variantwork.com, the free App Health Scan, and the paid services we offer (App Rescue, App Independence, Production Ready, paid assessments and fix credits).
By running a scan or buying a service you accept these terms. If you act for a company, you confirm you may bind it. Our Privacy Policy and, for paid jobs, the data processing agreement (DPA) accepted at checkout form part of this agreement.
2. The free App Health Scan
- The scan reads your repository or public URL. It doesn’t change anything.
- Only scan apps you own or are authorised to test. Scanning someone else’s app without permission is not allowed, and we may refuse or stop any scan.
- A scan report is an automated assessment, not a full security audit. It may miss problems, and it is provided free and without warranty.
- Prices in a report are valid for 30 days, provided the app hasn’t changed significantly.
3. Paid services
3.1 Scope
Every paid job comes with a scope document listing what is included, what is not, and the delivery window. The scope document is the job: we deliver what it lists, and only that.
3.2 Supported stack
Fixed prices apply to apps on the stack we support (React/Vite front end with Supabase, built with Lovable, Bolt or Base44 and hosted on Vercel, Netlify or the builder’s hosting). Other apps get a paid assessment first. Its fee is credited in full against the job if you go ahead within 30 days.
3.3 Price and payment
- Prices are fixed and paid upfront by card through Stripe. Prices shown exclude VAT, which is added at checkout where applicable.
- We issue an invoice automatically when you pay.
- If the work needs to go beyond the scope (for example, the cause sits in files or tables the scope doesn’t cover), we pause and send a change-order quote. Nothing extra is done or charged without your approval.
3.4 Fix credits
Prepaid fix credits can be used for jobs of the type and size they were bought for. Their validity period is shown at purchase. Unused credits are refundable within 14 days of purchase if none have been used.
4. How we work on your app
- Access. We use a read-only GitHub App by default. For a paid job we ask for write access to a separate Variant branch only. We never hold rights to deploy to your production environment.
- Backup first. Before any work starts, we snapshot your code and database and test the restore.
- Human review. AI agents do part of the work. A qualified engineer reviews and approves every change before it is offered for merge.
- Your approval. You decide what to merge. Any DNS change or data migration (App Independence) needs your explicit approval in the portal.
- Close. When the job closes, our write access is revoked and the credentials you gave us are destroyed.
5. Your responsibilities
- You own the app or have permission to let us work on it, and to share its code and data with us.
- You give us accurate information and the access the scope needs, in good time.
- You keep your own accounts (builder, hosting, database, domain, payments) in good standing. Delays caused by missing access extend the delivery window.
- Your app’s users are your users. You are responsible for your app’s legal compliance, including having a legal basis to let us process their data under the DPA.
6. Delivery and acceptance
A job is delivered when the acceptance checks in the scope document pass: the original failing check now passes, the build is green, and a re-scan shows the targeted findings resolved with no new critical ones. You receive a before/after report and can accept it in the portal.
If you don’t accept or raise a specific problem within 5 days of delivery, the job counts as accepted. If we miss the delivery window, we tell you before it ends and give you a new date. If the new date doesn’t suit you, you can cancel and get a refund for work not yet delivered.
7. “Fixed or refunded”
An App Rescue job is eligible for the guarantee when the app is on our supported stack, is in our smallest size tier according to the scan, and the failure was reproduced in our sandbox before we quoted. The scope document says whether a job is eligible.
If an eligible job fails its acceptance checks after our second attempt, we refund the job fee in full, automatically. Jobs that are not eligible are delivered on a best-effort basis within the agreed scope.
8. Your right to cancel (consumers)
If you are a consumer in the EU, you normally have 14 days to cancel a service contract. Because our work starts straight away, at checkout we ask you to request that it begins within that period. If you then cancel, you pay only for the work done up to that point. Once the service has been fully delivered, the right to cancel no longer applies. This doesn’t affect any other rights you have as a consumer.
9. Ownership
- You keep all rights to your app, its code and its data.
- Once a job is paid, you own the code, tests, reports and runbooks we deliver for it.
- We keep ownership of our own tools, templates, agents and know-how. Where any of them end up in a deliverable, you get a perpetual, royalty-free licence to use them as part of your app.
- We may use anonymised, aggregated information (such as how often a type of problem occurs) to improve our service. We never publish your code or identify you without permission.
- Production Ready certificates are public pages that name your app. You can ask us to unpublish yours at any time.
10. Confidentiality
We keep your code, data and business information confidential and use it only to provide the service. Engineers who review your job are bound by the same obligation.
11. Liability
We carry out every job with reasonable skill and care. Beyond what these terms expressly promise, the services are provided without other warranties, to the extent the law allows.
Our total liability for a job is limited to the fees you paid for that job. We are not liable for indirect or consequential loss, such as lost profits, revenue or data, or for problems caused by your builder platform, hosting, other third-party services, or changes made by anyone other than us.
Nothing in these terms limits liability for fraud, wilful misconduct, gross negligence, death or personal injury, or any liability that cannot be limited under applicable law, including your statutory rights as a consumer.
12. Acceptable use
You may not use our services for unlawful purposes, to scan or attack systems you don’t control, or to try to get around our access limits. We may suspend a scan or job that breaks this rule, refunding any work not yet delivered.
13. Changes to these terms
We may update these terms. Jobs already paid for stay under the terms in force when you paid. If a change is significant, we will email customers before it takes effect.
14. Law and disputes
These terms are governed by Spanish law. Disputes go to the courts of Barcelona, unless you are a consumer, in which case you may also use the courts where you live. Before going to court, please write to us at admin@variantwork.com; most problems can be solved quickly that way.