Liner Privacy Policy

Last updated

1. General provisions

1.1. This Privacy Policy (the "Policy") describes what data the Liner service (the "Service") collects, why it does so, who it shares the data with and how the User can manage it.

1.2. The Service includes the Liner desktop app (Windows, macOS, Linux), the Liner mobile app (Android, iOS), the server side and the websites on the tryliner.tech domain and its subdomains.

1.3. The data controller is the administration of the Liner service (the "Operator", "we"). Contact details are given in section 14.

1.4. By registering with or using the Service, the User confirms that they have read and agree to this Policy. If the User does not agree with the Policy, they must stop using the Service and may request deletion of their account (section 10).

1.5. This Policy is an integral part of the Liner Terms of Service.

2. Definitions

  • User — an individual who uses the Service, with or without an account.

  • Account — the User's account in the Service, created at registration.

  • Personal data — any information relating directly or indirectly to an identifiable User.

  • Processing — any operation performed on data: collection, recording, storage, use, transfer, deletion.

  • Client — the Liner desktop or mobile app installed on the User's device.

3. What data we process

3.1. The Service collects only what it needs to operate. We do not ask for passport details, payment details, precise geolocation or address book contacts.

3.2. Data categories:

CategoryWhat exactlySourcePurpose
Account dataEmail address, password (stored only as a hash and cannot be recovered), username, display name, avatar, profile descriptionEntered by the User at registration and in profile settingsCreating and signing in to the account, displaying the profile
Privacy settingsProfile visibility, showing activity, history and liked tracks, participation in leaderboardsChosen by the UserDetermine what other users can see
Listening historyWhich tracks the User played, when and for how long, completion rate, skips, repeats, the playlist or album they were played fromSent by the Client during playbackHistory, statistics, recommendations, leaderboards
LibraryPlaylists, liked tracks, saved albums and collections, follows of other usersCreated by the UserCore functionality of the Service
Playlist importLink to a playlist on a third-party service (Spotify, Apple Music, Deezer, SoundCloud), playlist title and description, import resultProvided by the UserMoving playlists into Liner
Technical dataIP address (the latest one at sign-in in plain form, in sessions as a hash), device type and Client version (user agent), platform, time of last activityAutomatically when the Client contacts the serverSecurity, abuse prevention, rate limiting, per-country statistics
SessionsSession identifiers and sign-in tokens (as a hash), creation and expiry timeAutomatically at sign-inKeeping the User signed in
Online statusWhether the User was active in the last ~90 seconds, platform, Client versionAutomatically from the ClientShowing online status to other users and the online counter
Support requestsText of the request, sender's addressWritten by the UserReplying to the request
PaymentsFact and date of payment, amount, plan and subscription term, payment identifier at the payment providerSent by the payment providerIssuing and accounting for the Liner Plus subscription, refunds and payment disputes. The Service does not receive or store card or wallet details

3.3. Data stored only on the User's device (Client settings, cache, sign-in tokens) is not sent to the Operator, except as described in the table above.

4. Purposes and legal bases of processing

4.1. We process data in order to:

  • provide the Service: maintain the account, library, history, recommendations and leaderboards;

  • show the User and, with their permission, other users their profile and activity;

  • ensure security: prevent account takeover, automated data collection and overloading of the Service;

  • improve the Service based on anonymised statistics (number of users, distribution by country, popular tracks);

  • respond to the User's requests;

  • comply with applicable law.

4.2. Legal bases: the User's consent given at registration; performance of the Terms of Service; the Operator's legitimate interest in protecting the Service from abuse; legal requirements.

4.3. We do not make decisions that produce legal effects for the User based solely on automated processing.

5. Profile visibility and privacy settings

5.1. By default, the User's profile is public: other users can see the username, display name, avatar, description, current activity, listening history and participation in leaderboards. Liked tracks are hidden by default.

5.2. At any time, the User can use the account settings to:

  • make the profile private;

  • hide current activity;

  • hide listening history;

  • show or hide liked tracks;

  • opt out of leaderboards.

5.3. The email address, IP address and technical data are never shown to other users.

5.4. Link-sharing pages (link.tryliner.fun) show only information about the track, album, artist or playlist, not the User's data.

6. Sharing data with third parties

6.1. We do not sell User data and do not share it with advertising networks.

6.2. The following categories of providers process data to make the Service work:

RecipientWhat dataPurpose
Cloud hosting provider (Oracle Cloud)The entire Service databaseHosting the server side and the database
Cloudflare, Inc. (USA)IP address and network metadata of requests to the Service's serversTraffic protection and proxying
Third-party lyrics providersTrack title, artist, album, durationFetching synced lyrics. The User's account data is not shared with them
Payment providersAmount, payment purpose, order identifier. The User enters payment details on the provider's sideAccepting Liner Plus subscription payments

6.3. Music is played from the Service's own library of tracks, so playback does not involve third-party services. For some other features the Client on the User's device contacts third-party services directly, and those requests are governed by those services' own policies:

  • Discord — if the User has enabled Discord status, the Client passes the title and artist of the current track to the locally running Discord app. Off by default.

  • Spotify, Apple Music, Deezer, SoundCloud — when a playlist is imported by link, the Service requests the public contents of the playlist from the corresponding service.

6.4. We may disclose data at the lawful request of a public authority or court, and to protect the rights of the Operator and other users where permitted by law.

6.5. In the event of a reorganisation, sale or transfer of the Service, data may be transferred to the successor under the terms of this Policy.

7. International transfers

7.1. The Service's servers and some of the providers listed in section 6 may be located outside the User's country of residence.

7.2. By using the Service, the User agrees to the transfer of their data to those countries. The Operator chooses providers that ensure adequate data protection.

8. Retention periods

DataPeriod
Account data, library, historyFor as long as the account exists; deleted together with it
Sign-in sessions30 days from creation or until sign-out
Online statusExpires automatically ~90 seconds after the last signal
Latest IP addressOverwritten at every sign-in; deleted with the account
Import jobsFor as long as the account exists
Support requests3 years from the last reply
Payment records3 years from the payment date
Database backupsUp to 30 days after the data is deleted from the main database

8.1. Anonymised statistics that cannot be used to identify the User may be kept indefinitely.

9. Data protection

9.1. Passwords are stored only as an Argon2id hash. Sign-in tokens and IP addresses in sessions are stored as hashes.

9.2. The connection between the Client and the server is protected by TLS. Access to the database and admin interfaces is restricted by secrets that are not kept in the source code.

9.3. The Service limits the number of registrations, sign-in attempts and requests from a single IP address to protect against password guessing and automated data collection.

9.4. No method of transmitting or storing data is absolutely secure. If we learn of a breach affecting the User, we will notify them at the account's email address and, where required, notify the competent authority.

9.5. The User is responsible for keeping their password safe and for all actions taken under their account, and must notify us of any suspected unauthorised access.

10. User rights

10.1. The User has the right to:

  • access information about what data of theirs we process and obtain a copy of it;

  • rectify inaccurate data — the username, display name, avatar and description can be changed in profile settings; the email address and password can be changed on request to support;

  • restrict the visibility of data through privacy settings (section 5);

  • delete the account and all associated data;

  • withdraw consent to processing, which is equivalent to deleting the account;

  • lodge a complaint about the Operator's actions with the competent data protection authority.

10.2. Requests should be sent to hkamoric@gmail.com from the address linked to the account. We reply within 10 business days. To verify identity, we may ask the User to sign in to the account or to reply from the linked email address.

10.3. Account deletion is irreversible: the library, history and profile are removed from the main database immediately and from backups within the period set out in section 8.

11. Cookies and local storage

11.1. Liner Clients store sign-in tokens, settings and cache on the User's device. This data stays on the device and is deleted together with the app or on sign-out.

11.2. The tryliner.tech websites do not use advertising or tracking cookies. Technical cookies may be used only for protection against attacks (Cloudflare).

11.3. When the User signs in on the tryliner.tech website, the sign-in token is kept in the browser's local storage (localStorage) and removed on sign-out.

12. Children

12.1. The Service is intended for people over the age of 13. We do not knowingly collect data from anyone younger. If we become aware of such an account, we will delete it. A parent or guardian can report it to hkamoric@gmail.com.

13. Changes to this Policy

13.1. We may change this Policy. The new version is published at the same address together with its effective date.

13.2. We give notice of material changes (new data categories, new recipients, new purposes) in the Client or by email at least 7 days before they take effect.

13.3. Continued use of the Service after the changes take effect means acceptance of the new version.

14. Operator contacts

Liner service
Email for personal data matters: hkamoric@gmail.com
Website: https://tryliner.tech

/faq

Common questions

Start listening to music the right way

Free forever. Available for Windows and Linux.

Start listening to music the right way

Free forever. Available for Windows and Linux.

Modern desktop music player with syllable-synced lyrics and reactive dynamic visuals.

2026 Liner. All rights reserved. · hkamoric@gmail.com · OPLAT

Modern desktop music player with syllable-synced lyrics and reactive dynamic visuals.

2026 Liner. All rights reserved. · hkamoric@gmail.com · OPLAT

Modern desktop music player with syllable-synced lyrics and reactive dynamic visuals.

2026 Liner. All rights reserved. · hkamoric@gmail.com · OPLAT

How to run Liner on macOS

macOS blocks apps from outside the App Store on first launch. Once the download finishes, do this once:

  1. Install the appOpen the downloaded .dmg and drag Liner into Applications.
  2. Open Terminal and run
    xattr -cr /Applications/Liner.app
  3. Launch LinerIt opens normally from now on.
  4. If asked, allow Keychain accessmacOS may ask for your login password so Liner can use “@liner/client Safe Storage”. That’s where your sign-in is kept encrypted. Enter your Mac password and click Always Allow. It can ask again after an update.