Privacy

Your data on LinkIt. What we keep, and for how long.

LinkIt is a student project, not a company. This page describes what the running software actually stores — no more and no less — in words meant to be read.

Last updated 12 October 2026

The short version

We store your email address, your username, a scrambled form of your password, your projects and their files, and the logs of your deploys. We use them to run your account and publish your sites — nothing else.

No analytics, no ads, no tracking, and one cookie, which only keeps you signed in.

Your sites are public. Your email and username are not.

You can delete your account yourself, from your profile. It takes everything with it, except our record of any takedown or suspension involving it.

Controller

Who is responsible

LinkIt is run by Diego Segura, as a student project. It is not a company, it is free, and it is not run for profit. Student at University of Neuchâtel

That person is responsible for your data under the Swiss Federal Act on Data Protection (nFADP) and, where it applies to you, the EU General Data Protection Regulation (GDPR).

Inventory

What we store

This is everything, taken from the database and the file storage the app writes to. If it is not in this table, LinkIt does not keep it.

WhatYour email address
WhyTo sign you in, to send your confirmation, password-reset and account-deletion links, and to set your limits: some university addresses (e.g. unine.ch) get more projects. It can't be changed from your profile.
WhereDatabase
Kept forUntil your account is deleted.
WhatYour username
WhyChosen at signup; shown to you on the dashboard and in your profile, and named in an account-deletion email. It can't be changed, because it is part of your sites' addresses.
WhereDatabase
Kept forUntil your account is deleted.
WhatYour password
WhyTo check it when you sign in. Stored only as a bcrypt hash — we cannot read it or send it to you.
WhereDatabase
Kept forUntil you change it from your profile, reset it, or your account is deleted.
WhatAccount details
WhyWhen you signed up, whether your email is confirmed, whether the account is suspended, your limits, and a counter that signs out your other devices when you use “sign out of all devices” or change or reset your password.
WhereDatabase
Kept forUntil your account is deleted.
WhatProjects
WhyName, address (subdomain), type, status, paused or not, taken down or not, listed on Explore or not, and the dates it was created and last changed.
WhereDatabase
Kept forUntil you delete the project.
WhatYour site’s files
WhyTo publish your site. Only the latest version that went live is kept.
WhereFile storage
Kept forUntil you delete the project. Older versions are deleted once a newer one goes live.
WhatUploaded zip, before it is built
WhyParked while your deploy waits for its turn.
WhereFile storage
Kept forDeleted when the deploy finishes, whether it worked or not. Anything left behind by a crash is cleaned up within about an hour.
WhatDeploy history
WhyFor each deploy: when, whether it worked, its size, and its build log — the output of npm install and the Vite build, which can include your file and package names and anything your build prints.
WhereDatabase
Kept forEvery deploy, for as long as the project exists. The dashboard shows the last 10; older ones are kept too.
WhatDeploy job records
WhyFor each deploy request: when it was queued, started and finished, how big the upload was, and the outcome — plus the log of a first deploy that failed.
WhereDatabase
Kept forUntil your account is deleted. These are not removed when you delete a project.
WhatConfirmation, reset and account-deletion links
WhyTo check a link you click. Only a one-way hash of each link is stored, with when it was made, when it expires (24 hours for an email confirmation, 30 minutes for a password reset or an account deletion), when it was used, and whether a newer link replaced it.
WhereDatabase
Kept forThe links stop working when they expire, but the records stay until your account is deleted.
WhatRecords of admin actions
WhyWhen we take a site down, suspend an account, lift either, or open a deploy log while looking into a report: what was done, when and by whom, and — so the record still makes sense later — the account’s username and email, or the site’s name, address and owner, as they were at the time.
WhereDatabase
Kept forKept after the account or project is deleted, as our record of what we did. Never changed once written.
WhatRate-limit counters
WhyTo stop password guessing (at sign-in, and wrong current passwords when you change yours) and floods of signups, deploys and emails. Each counted action stores a timestamp with one of: your IP address (for an IPv6 connection, only its first half, which identifies your network rather than your device), your account ID, or a one-way hash of what was typed into the sign-in box.
WhereDatabase
Kept forAbout two hours, then deleted automatically. A failed-sign-in count is cleared as soon as you sign in, and a wrong-current-password count as soon as you change your password.
WhatSession cookie
WhyKeeps you signed in. Details on the cookies page.
WhereYour browser
Kept for7 days, or until you sign out.
WhatDatabase backups
WhyA copy of the whole database, made every night, so LinkIt can be recovered if the database is lost or damaged. It holds everything above marked “Database”, as it was that night. Your site’s files are not in it.
WhereBackup storage
Kept for30 days each, then deleted automatically (within a day after that). Something you delete stays in the copies made before then until they expire.
WhatServer and network logs
WhyLinkIt keeps no access log: neither the application nor the reverse proxy records the requests it serves. When a request fails before it reaches the application — for example while the service is restarting — the server's system journal records that request, including the address it came from and the address it asked for. Those entries are deleted after 14 days. Cloudflare, which sits in front of the site, and OVHcloud, which hosts the server, each log traffic for their own operational and security purposes, under their own privacy policies.
WhereHosting provider
Kept forLinkIt keeps no access log: neither the application nor the reverse proxy records the requests it serves. When a request fails before it reaches the application — for example while the service is restarting — the server's system journal records that request, including the address it came from and the address it asked for. Those entries are deleted after 14 days. Cloudflare, which sits in front of the site, and OVHcloud, which hosts the server, each log traffic for their own operational and security purposes, under their own privacy policies.

The only place LinkIt itself stores IP addresses is the rate-limit counters above, and they are gone within about two hours. There is no record of when you last signed in, what pages you looked at, or who visits your sites.

Emails we send

Exactly three kinds: the link to confirm your email address, a password-reset link when you ask for one, and a link to confirm deleting your account when you ask for that from your profile. No newsletters, no marketing, no notifications.

Visibility

What is public

  • Every site you deploy is public. Anyone who has or guesses its address can open it, whether or not it is listed on Explore. Unlisted does not mean private — don’t publish anything you wouldn’t want a stranger to read.
  • Explore is opt-in, per project. If you switch it on, the Explore page shows the project’s name, its address, its type (HTML or React / Vite) and the date it was created. Nothing about you — not your username, not your email.
  • Name checks. The signup and new-project forms tell anyone whether a username or a project address is already taken. That is the only thing they reveal.
  • Your email address and username are never shown publicly.

Limits on ourselves

What we don’t do

  • No analytics, advertising or tracking of any kind — no Google Analytics, no pixels, no third-party scripts on LinkIt’s pages.
  • The fonts are served from LinkIt itself, so your browser does not contact Google or any font service.
  • We don’t sell, rent or share your data with anyone other than the providers listed below, who handle it only to run LinkIt.
  • We don’t profile you or make automated decisions about you. The one automatic decision — your limits, set from your email domain at signup — is written out on the terms page.
  • We don’t look at your site’s files or logs, except when something goes wrong or someone reports a problem with your site.

Sub-processors

Who else handles it

LinkIt runs on other companies’ services. Each one receives only what it needs to do its job.

ProviderNeon (Neon, Inc., USA)
What it doesHosts the database.
What it receivesEverything in the table above except your site’s files and your cookie.
WhereAWS eu-central-1 (Frankfurt, Germany)
ProviderBackblaze B2 (Backblaze, Inc., USA)
What it doesStores your site’s files and uploaded zips, and, in a separate bucket, the nightly database backups.
What it receivesThe files you upload and the files your build produces, and a copy of everything in the database.
WhereEU Central (Amsterdam, Netherlands)
ProviderGitHub Actions (GitHub, Inc., USA)
What it doesRuns the nightly database backup.
What it receivesA copy of everything in the database, while the backup runs. Nothing is kept there afterwards.
WhereEU Central (Amsterdam, Netherlands)
ProviderResend (Resend, Inc., USA)
What it doesSends LinkIt’s emails.
What it receivesYour email address and the message: a confirmation, password-reset or account-deletion link. The deletion email also names your username.
WhereIreland (eu-west-1)
ProviderHosting provider
What it doesRuns the LinkIt server and the build machine.
What it receivesEverything passes through it: every request, and all of the above in transit.
WhereOVHcloud VPS, France
ProviderNetwork provider
What it doesDNS, HTTPS and traffic in front of the server.
What it receivesEvery request to LinkIt and to hosted sites, including IP addresses.
WhereCloudflare

Contacted, but told nothing about you

  • Have I Been Pwned (Pwned Passwords). When you choose a password, our server checks whether it has appeared in a known data breach. Only the first five characters of a one-way hash of the password are sent — never the password, your email or your IP address, since the request comes from our server.
  • The npm registry (npm, run by GitHub, USA). When a React / Vite project is built, our build machine downloads the packages listed in its package.json. The registry sees package names requested by our server, nothing about you.

Transfers

Data outside Switzerland

The database, file storage and backups are in the EU, which Switzerland recognises as giving adequate protection. But Neon, Backblaze, Resend and GitHub are US companies, and US law can require a US company to hand over data it holds even when that data is stored in Europe. Emails may also be processed in the US, and so may the nightly backup while GitHub runs it.

What covers these transfers: All personal data is stored in the European Union. The companies providing these services are based in the United States, and their data processing agreements include the European Commission's standard contractual clauses, which cover any access from outside the EU.

Legal basis

Why we’re allowed to

  • To give you the service you signed up for — your account, your projects, your sites, the emails that make sign-in work. Without this data LinkIt cannot work for you. (GDPR art. 6(1)(b).)
  • To keep LinkIt safe — rate limits, password breach checks, and looking into abuse reports. This is in everyone’s interest, including yours, and it uses as little as possible for as short a time as possible. (GDPR art. 6(1)(f).)
  • When the law requires it — for example a valid order from a Swiss authority. (GDPR art. 6(1)(c).)

Under Swiss law no separate legal basis is needed as long as the rules of the nFADP are followed; the reasons above are the purposes we stick to either way.

Retention

Deleting things

Deleting a project

The project and its deploy history are deleted from the database straight away, and the site stops working at once. Its files are deleted from storage at the same moment; if that fails, an automatic cleanup removes them within about two hours. The deploy job records for that project are not deleted — they stay until your account is.

Deleting your account

Open Profile and choose Delete account. We email a confirmation link to the address on your account, valid for 30 minutes; nothing is deleted until you open it and confirm. Confirming removes, in one step: your account, every project, all deploy history and job records, and all confirmation, reset and deletion links. Every site goes offline at once and every signed-in device is signed out. Your site files are deleted from storage at the same moment; if that fails, the automatic cleanup removes them within about two hours, and your rate-limit counters expire within the same time. Your username and email become free for someone else to register. Records of admin actions involving your account or your sites are not removed (see the table above), and an account can’t be deleted while it is suspended.

If you can no longer sign in or reach that inbox, email [email protected] and we will do it by hand.

Copies we cannot delete from here: messages already sent by Resend are kept in its logs under its own rules, and server logs under the hosting provider’s. The nightly database backups are kept for 30 days and can’t be edited, so anything deleted — a project, or your whole account — stays in the backups made before the deletion until they expire, and is gone from all of them within 31 days.

Your rights

What you can ask for

You can ask us, for free:

  • To see what we hold about you.
  • To correct it. Your email and username can’t be changed from your profile, so that is done by asking. Your password can be changed from your profile, or reset from the sign-in page if you have forgotten it.
  • To delete it — you can do this yourself; see above.
  • To get a copy of your data in a machine-readable format (JSON), including your site’s files.
  • To object to how we use it, or to ask us to stop while a question is sorted out.

Email [email protected] from the address on your account, so we know the request is yours. We answer within 30 days.

If you think we got it wrong, you can complain to the Swiss Federal Data Protection and Information Commissioner (edoeb.admin.ch) or, if you live in the EU, to the data protection authority in your country. We would rather you told us first, but you don’t have to.

Security

Security and breaches

  • Connections are encrypted (HTTPS).
  • Passwords are stored only as bcrypt hashes, and new passwords are checked against known breaches.
  • Confirmation, reset and account-deletion links are stored only as one-way hashes, are single-use, and stop working once a newer one is sent.
  • You can sign out of every device at once when you log out; changing or resetting your password does this automatically.
  • Changing your password from your profile asks for your current one, so someone at a computer you left signed in can’t lock you out.
  • Deleting your account needs both a signed-in session and a link sent to your email, so someone who only has one of them can’t delete it.
  • React / Vite projects are built in isolated, throwaway containers, not on the server itself.

In fairness: this is a student project run by one person, not a company with a security team. There is no round-the-clock monitoring, and the nightly backups cover the database, not your site’s files. Keep your own copy of everything you upload.

If there is a breach

If your data is exposed in a way that is likely to put you at real risk, we report it to the Swiss Federal Data Protection and Information Commissioner as soon as possible, as the nFADP requires — and, where the GDPR applies, to the competent EU authority within 72 hours. We email the people affected whenever it would help them protect themselves: what happened, what data was involved, what we are doing about it, and what you should do (usually: change your password, and anywhere else you used it).

Visiting a site

If you visit a site hosted on LinkIt

Sites on LinkIt are made and published by students, not by us. If a site asks for your data — a contact form, a sign-up box — the student who made it is responsible for what happens to it. If a site asks for a password or bank details, it may be a scam: report it.

LinkIt itself keeps no record of who visits a hosted site and sets no cookies on it. Our own sign-in cookie is never sent to hosted sites. What the network in front of the server logs is described in the table above.

Changes

Changes to this page

When what LinkIt stores changes, this page changes with it, and the date at the top moves. If a change affects how your existing data is used, we email you about it.