Privacy Policy.

Last updated 27 July 2026.

This Privacy Policy explains what personal data we collect when you use the DeskDash website at https://www.desktop-dashboard.com and the DeskDash desktop application, why we collect it, and what rights you have over it.

It is written to be read, not to be survived. If anything here is unclear, email us at contact@desktop-dashboard.com.


1. Who we are

Nair Development Hub SRL is the data controller for the personal data described in this policy.

  • Registered address: Str. Tineretului 63, Chiajna, Ilfov County, Romania
  • Company registration number / CUI: 48366031
  • Contact for privacy matters: contact@desktop-dashboard.com

We are established in Romania and we process personal data in accordance with the EU General Data Protection Regulation (GDPR).


2. The short version

DeskDash is a desktop application. Most of what it does happens on your computer and stays there.

The application contains no analytics or tracking software, and no crash reporting. There is no reporting request: nothing is ever sent for the purpose of measuring you. We do not know how you have arranged your desktop, what settings you have chosen, or what you have typed into a widget. None of that reaches us, and none of it ever will.

The application talks to our servers for three things only: checking for updates, validating your licence, and browsing or downloading widgets from the marketplace. Downloading a widget is authenticated, so that request necessarily tells us which widget was downloaded (see Section 4.1). Beyond that, it connects only to the specific services a widget you installed needs, directly from your machine.

We do count those three requests, because they arrive at our servers anyway and we need to know basic things about our own product: how many people are running it, on which version, and which widgets get looked at. That counting is described in full in Section 4.1. It adds nothing to what the application sends, it is kept deliberately separated from your identity where the request was anonymous to begin with, and it never touches anything on the list above.

The rest of this policy sets out the detail.


3. What we collect and why

3.1 On the website and in your account

WhatWhyLegal basis
Email address (your account identifier)To create your account, deliver your licence key, sign you in, and contact you about your purchasePerformance of a contract
Login codes (six digit, stored as a one way hash)To sign you in without a passwordPerformance of a contract
Session token (stored as a one way hash)To keep you signed inPerformance of a contract
Purchase record (payment provider, order reference, and the event data the provider sends us)To confirm your purchase, prevent duplicate processing, and meet accounting obligationsPerformance of a contract; legal obligation
Licence key (stored as a one way hash, plus the last four characters so you can recognise it)To issue and validate your licencePerformance of a contract
Device identifier (a one way hash, see Section 6)To bind one licence to one device and prevent licence sharingOur legitimate interest in enforcing the terms of sale
Publisher handle (if you publish widgets)To identify you publicly as the author of your widgetsPerformance of a contract
Email address entered at checkout where the purchase was not completedSo we can follow up if something went wrong with your purchase. You can ask us to stop at any timeOur legitimate interest in completing a transaction you started
Your email address in our contact list, labelled with where you stand (signed up, started a purchase, bought)So we can email you about DeskDash itself: release announcements, important changes, and occasional product news. Every such email has an unsubscribe link, and unsubscribing stops them without affecting your licence or your account emailOur legitimate interest in telling our own customers about our own product; consent where you signed up on the website
IP addressUsed transiently to apply rate limits and prevent abuse. Raw IP addresses are never storedOur legitimate interest in protecting the Service

3.2 If you submit a widget

WhatWhyLegal basis
Your account email, publisher handle, and submitted filesTo review, publish and attribute your widgetPerformance of a contract
A one way hash of your IP addressTo identify abusive submission patterns without storing IP addressesOur legitimate interest in protecting the Service
Screenshots you uploadTo display your widget in the marketplacePerformance of a contract

Note that your publisher handle is public and permanent, and appears in the identifier of every widget you publish.

3.3 If you contact us

When you use the contact form, we receive the email address and message you provide, so that we can reply. Legal basis: our legitimate interest in answering enquiries.


4. What the desktop application sends to us

This is the complete list, including the notes underneath it. There is nothing else.

RequestWhenWhat it contains
Update checkOn launch and periodically (by default every 24 hours)Nothing identifying. It is a plain request for a version file. We do not know who asked
Update downloadOnly when a newer version exists, on the direct download channelNothing identifying
Licence validationOn activation, when you open the marketplace, and once a day otherwiseYour licence key and your device identifier (Section 6)
Account lookupImmediately after a successful validationYour licence key. We return your email address and publisher handle so the application can display them
Marketplace browsingWhile the marketplace window is openNothing identifying. Browsing is anonymous. It carries a store session token: a random value the application invents when you open the marketplace window, holds only in memory, and forgets when you close it. It is not derived from you, your licence or your machine, and it lets us see that one browsing session looked at four widgets without telling us whose session it was
Widget downloadWhen you install or update a widgetYour licence key

Every one of those requests also carries the application's version number and release channel, in the standard way any program identifies itself when it makes a web request. It tells us that some install is on version 0.1.8 rather than 0.1.5, which is how we know whether an update reached people and when an old version is safe to stop supporting.

Two things worth being precise about, because they changed on 27 July 2026:

  • Licence validation used to run at most once every 14 days. It now runs once a day. A revoked licence therefore stops working within a day rather than within a fortnight. If our server is unreachable the application does not lock: it keeps working and keeps retrying for 15 days, and even then only marketplace access is affected. Your widgets never stop working because of a failed licence check.
  • The store session token described above is new.

We do not receive, at any point: your layout, your settings, the contents of any widget, your IP address in any stored form, or any information about what you do on your computer.

4.1 What we count, and how it is kept apart

We keep product statistics from the requests in the table above. This is the whole of it.

From the requests that carry your licence key (validation, account lookup, widget download) we record that a licence checked in, that the marketplace was opened, and which widget was downloaded, against a one way hash of your account identifier, together with the application version and the country the request came from. That hash is the only thing identifying you that reaches our analytics provider: not your email address, not your licence key, not the hash of your licence key, and never your device identifier, which stays reserved for licence enforcement exactly as Section 6 says.

From the requests that do not carry your licence key (browsing and viewing widgets in the marketplace) we record which widget was viewed and what was searched for, against the in-memory store session token, and nothing else.

These two sets of records are deliberately kept unjoinable. A store session token and an account hash never appear on the same record, so there is no path from "this session looked at these widgets" to "this person looked at these widgets". This is a design decision, not a promise about our intentions: the information needed to make that link is not collected in the first place. The cost is ours, not yours: it means we can see that a widget's page was viewed 400 times and downloaded 30 times, but we cannot see what any individual person browsed. That is the trade we chose.

We do not build a profile of what you have installed, we do not keep a per user browsing history, and we do not use any of it for advertising, for profiling, or for automated decisions about you. Nothing here is sold or shared beyond the provider listed in Section 9.

Country comes from a coarse country code our hosting provider derives at the network edge. We never store your IP address in any form, which Section 14 commits to.

Because these statistics are derived entirely from requests the application must already make for the Service to work, and because they are pseudonymous and aggregate, we rely on our legitimate interest in understanding and maintaining our own product. You can object to it under Section 12, and you can have it erased: deleting your account submits these records for deletion along with everything else, and in any case none of them is kept longer than 12 months.


5. What stays on your computer

The following is stored locally, on your own machine, and is never transmitted to us:

  • Your configuration: layout, displays, themes, preferences, and the settings of each widget. Widget settings can contain things you typed in, such as a name for a greeting, a city for a weather widget, coordinates, habit names, or a folder path.
  • Widget data: whatever a widget saves, such as your to-do items, habit history, or cached results.
  • Saved layouts, downloaded marketplace screenshots, and installed widgets and themes.
  • Application logs, capped in size and rotated. They record what the application did, and deliberately exclude your licence key, your email address, your device identifier, and the values of any secret you have stored.
  • Secrets you supply, such as an API key for a service you use. These are held by Windows Credential Manager, not in our files, and are inserted into requests by the application itself. Widget code never sees them.

The application also reads some information from your computer in order to work, and none of it leaves your machine: your wallpaper (to derive theme colours), your monitor arrangement, desktop item names and paths, media playback information, system statistics including WiFi network names, and system audio reduced to loudness levels only.

On audio specifically: when a widget with the relevant permission is on screen and audio is playing, the application reads the system's audio output and reduces it to a set of loudness values for visualisation. No microphone is ever accessed, no raw audio is retained, and speech cannot be reconstructed from what is produced.

The application never reads window titles, enumerates running processes, captures your screen, accesses your microphone, or reads your clipboard.


6. The device identifier

To enforce one licence per device, the application computes an identifier from a value Windows already stores to identify the installation, combines it with a fixed value, and applies a one way hash. Only the resulting hash is sent to us, and only during licence validation.

  • The underlying Windows value never leaves your computer and is never written to disk by us.
  • The hash cannot be reversed to recover it.
  • We store it only against your licence key, to recognise the device your licence is bound to.
  • It is persistent: it normally stays the same across reinstalls of the application and changes only if Windows itself is reinstalled. We therefore treat it as a device identifier for the purposes of this policy.

We use it for licence enforcement and for nothing else. We do not use it to profile you, to link activity across services, or for advertising.


7. Widgets and connections you choose

DeskDash widgets are small programs that run inside the application. Some of them are ours, some are written by other users, and some you may write yourself.

Every widget declares what it needs, including the exact internet addresses it is allowed to contact. When you install a widget from the marketplace, the application shows you that list in plain language before installation and lets you withhold any capability you do not want to grant. The permissions you approve are enforced every time the widget loads. Widgets included with the application are installed alongside it; their permissions are shown in the marketplace listing and in the widget's own manifest.

Where a widget connects to an outside service, that connection is made directly from your computer to that service. It does not pass through us, and we do not see it or log it. What is sent is determined by the widget and by what you configured it to do. For example, a weather widget sends the location you configured to a weather service; a widget for an account you hold sends credentials you supplied to that account's provider.

Because of that:

  • The provider you connect to receives data directly from you, and their own privacy policy governs what they do with it.
  • Data you enter into a widget stays on your machine unless the widget sends it to one of its declared addresses.
  • We review widgets before publication and we constrain what they can reach, but we do not control and cannot guarantee what a third party service does with data it receives.

Widgets we publish ourselves that connect outwards do so only for their stated purpose, and only when you add them. If you want the specifics for a particular widget, its permissions and its exact list of addresses are on its marketplace page before you install it.


8. Cookies and analytics

Cookies. The website sets exactly one cookie, dd_session, which keeps you signed in after you log in. It is strictly necessary for that purpose, is not readable by scripts, and is cleared when you log out. We do not use advertising cookies, tracking cookies, or third party cookies, and the website does not use local storage for tracking.

Website analytics. We use Vercel Analytics and Vercel Speed Insights to understand how the website performs: page load times, error rates, and aggregate traffic levels. These are cookieless, and we see only aggregate figures. We use them to keep the website working, not to build profiles of visitors, and we do not combine them with your account. Legal basis: our legitimate interest in operating and maintaining the website.

Product statistics. We use PostHog, hosted in the European Union, to hold the counts described in Section 4.1. Two things about how it is used here are unusual enough to state plainly:

  • It runs only on our servers. There is no PostHog code in the desktop application and none on the website. Nothing in the application or in your browser talks to PostHog, ever. Our own server records the counts from requests that had already arrived.
  • It never receives an IP address. Every record is sent with the IP field deliberately emptied, and the project is additionally configured to discard client IP data.

We use no other analytics or tracking services, no advertising or marketing analytics anywhere, and no session recording, heatmaps, or similar on either the website or the application.


9. Who we share data with

We do not sell personal data, and we do not share it for advertising. We use the following providers to run the Service. Each processes data only on our instructions.

ProviderWhat they doWhere
VercelWebsite and API hosting, content delivery, analyticsUnited States, with EU processing regions
NeonDatabase hosting (accounts, licences, marketplace)European Union
StripePayment processing. Where Stripe acts as merchant of record it is the seller for the transaction and processes your payment data under its own privacy policyUnited States and European Union
LoopsSending transactional email (login codes, licence keys, contact form relays) and holding our contact list for product emailUnited States
PostHogProduct statistics (Section 4.1). Receives a one way account hash or an anonymous session token, never an email address, licence key, device identifier, or IP addressEuropean Union
Cloudflare R2Storage of marketplace screenshotsEuropean Union
GitHubPrivate storage of widget submissions and application releasesUnited States

We may also disclose personal data where we are legally required to do so, or where it is strictly necessary to protect the Service, investigate abuse, or establish or defend legal claims.

Services you connect to yourself, through a widget, are not our processors. You choose them, the connection is made from your machine, and their own terms and privacy policies apply.


10. International transfers

Some of our providers are established outside the European Economic Area, principally in the United States. Where personal data is transferred outside the EEA, we rely on the safeguards available under GDPR Chapter V, which include the European Commission's Standard Contractual Clauses and, where applicable, an adequacy decision covering the recipient.

You may ask us for information about the safeguards applying to a specific transfer by emailing contact@desktop-dashboard.com.


11. How long we keep things

DataRetention
Account record (email, handle, status)Until you delete your account
Login codesExpire after 10 minutes and are deleted shortly afterwards
SessionsExpire after 30 days and are deleted shortly afterwards
Licence keys and device identifierFor as long as your account exists
Purchase recordsFor as long as required by Romanian tax and accounting law, currently up to 10 years, after which they are deleted
Checkout emails where no purchase followed12 months, then deleted
Your entry in our contact listUntil you delete your account, which removes it. Unsubscribing stops the emails immediately; the record that you unsubscribed is kept so that you are not added back
Widget submissions and the associated IP hashWhile the submission is under review, and for 12 months afterwards
Published widgets and their public listing detailsIndefinitely, as public marketplace content. See Section 12
Contact form messages24 months
Product statistics (Section 4.1)12 months, then deleted automatically by our analytics provider. Deleting your account submits the records tied to your account hash for deletion at once, along with their history; the provider then purges them in batches, normally within a few days
Server and platform logsAs retained by our hosting provider, typically a short rolling window

12. Your rights

Under GDPR you have the right to:

  • access the personal data we hold about you, and receive a copy;
  • rectify inaccurate data;
  • erase your data ("right to be forgotten");
  • restrict or object to processing based on our legitimate interests;
  • data portability, that is, receive your data in a machine readable format;
  • withdraw consent where processing is based on consent; and
  • complain to a supervisory authority.

You can export your data and delete your account directly from your account settings. You can also make any request by emailing contact@desktop-dashboard.com. We will respond within one month.

Two things to know before you delete your account:

  1. Deleting your account permanently ends your licence. Your licence key is revoked and cannot be reissued, and you lose access to the marketplace and to future downloads. This is explained in our Terms and Conditions, Section 5.1.
  2. Widgets you have published stay published. Under the marketplace's public content model, a published widget and its listing, including your publisher handle as its author, remain available after your account is deleted, so that copies people have installed keep working. Your account record and the non public parts of your submissions are deleted. If you believe a published widget should also be removed, contact us and we will consider it.

We may also need to retain a minimal record of your purchase where the law requires it, as set out in Section 11.

Supervisory authority. If you are in Romania, you may complain to the National Supervisory Authority for Personal Data Processing (ANSPDCP, https://www.dataprotection.ro). If you are elsewhere in the EU, you may complain to your local authority.


13. Children

DeskDash is not intended for children. You must be at least 16 years old to purchase a licence or create an account. We do not knowingly collect personal data from anyone under 16. If you believe a child has provided us with personal data, contact us and we will delete it.


14. Security

We take the following measures, among others:

  • Login codes, session tokens and licence keys are stored as one way hashes, never in a form we could read or reuse.
  • Comparisons of secret values are performed in a way designed to resist timing attacks.
  • Raw IP addresses are never stored; where a record is needed for abuse prevention, only a salted hash is kept.
  • The device identifier is hashed on your machine before it is sent.
  • Secrets you supply to widgets are held by Windows Credential Manager and are never written to our configuration files, our logs, or exposed to widget code.
  • Application updates are cryptographically signed and verified before they can be installed.
  • Marketplace screenshots are stored in a private bucket and served through a proxy that checks on every request whether the file is still meant to be public.
  • Access tokens used by our infrastructure are scoped as narrowly as the platform allows.

No system is completely secure. If you believe you have found a security problem, please email contact@desktop-dashboard.com and give us a reasonable opportunity to fix it before disclosing it publicly.

If a personal data breach occurs that is likely to result in a risk to your rights and freedoms, we will notify the competent supervisory authority within 72 hours of becoming aware of it, and will notify you directly where the law requires it.


15. Changes to this policy

We may update this policy. When we make material changes, we will update the "Last updated" date above and, where the change significantly affects you, notify you by email.


16. Contact

For any privacy question, request, or complaint, contact us at contact@desktop-dashboard.com.