Privacy Policy
This policy explains what data the Containly website (containly.ch) processes when you visit it, and your choices. The app you self-host is separate: it keeps your data on your own server and is not covered here.
Controller
Pascal Amsler (Amslertec), Switzerland. Postal address in the legal notice. Contact: support@containly.ch.
Light and dark appearance
The first-party preference cookie cw_theme stores light, dark or system for one year (SameSite=Lax, Secure on HTTPS), shared by the configured website and its public subdomains, including shop, help, FAQ and forum. It contains no personal data and is not used for tracking. We migrate an existing browser preference once and retain cw-web-mode in local storage for compatibility. Without an explicit choice, the system appearance applies. Already open pages synchronise when you return to them. This does not share sign-in cookies: authentication remains host-only. The isolated payment recovery page does not run this preference code or set this cookie; browsers may still send a parent-domain preference cookie to that host.
Our own visitor statistics
We keep a lightweight, aggregated visitor count (page, day, hour of the week, page language, referrer, browser, OS, device, and the country, which is derived from your IP address as described below; the IP address itself is not stored). We also count a few clicks as totals per day and page: playing the video, the “Get started” buttons, copying an install command, a buy button, the “Try the demo” buttons, the “Try Pro free for 7 days” links and links to GitHub, Docker Hub or YouTube. For these clicks your browser sends only the name of the click and the page, without a cookie. We do not store IP addresses in these statistics, and this count sets no cookie. To count unique visitors per day, the server forms a one-way hash of your IP address and browser identifier (user agent) with a random key that changes every day; the key and the day’s hashes are deleted at the end of the day, so you cannot be recognised on another day. Requests from bots, crawlers, link previews and monitoring services are filtered out and only counted as a total. Campaign parameters in a link (utm_source, utm_medium, utm_campaign) are counted as totals per day.
Security log
To protect this website, requests to the admin area from outside our own network and requests to well-known attack paths (for example /wp-login.php or /.env) are logged with IP address, requested path, time, country and, where known, the network operator (for example Apple Private Relay or a cloud provider). Ordinary visits are not logged this way. We keep only the most recent 500 entries and use them solely to detect and block attacks (legitimate interest).
Country of origin
The country in the statistics and the security log is derived from the IP address on our own server, with public lists: the address allocation files of the five regional internet registries, the published address ranges of Microsoft Azure, Amazon Web Services and Google Cloud, and the geofeeds of Apple iCloud Private Relay and Cloudflare. These lists are downloaded once a day; your IP address is not sent to any third party for this. When no list covers an address, the country stays unknown.
YouTube videos
Some pages show a video hosted on YouTube. Until you click play, the page only shows a preview image stored on this website: nothing is loaded from YouTube and no cookie is set. When you click play, the video is loaded from youtube-nocookie.com (privacy-enhanced mode) of Google Ireland Ltd., Gordon House, Barrow Street, Dublin 4, Ireland. Your browser then sends your IP address and the address of this page to Google, and YouTube may store data in your browser once playback starts. Data may be transferred to Google LLC in the USA. We use this only to show you the video you asked for. Google’s privacy policy: policies.google.com/privacy.
Containly demo
The demo linked from this website is a separate service where you try a simulated Containly in your browser. Your demo session and everything in it are deleted after use; the demo server keeps only counts (for example how many sessions started), nothing with a personal reference.
Purchases through Paddle
Containly Pro licences are sold through our online reseller Paddle (Paddle.com Market Limited, Judd House, 18-29 Mora Street, London EC1V 8BT, United Kingdom). Paddle is the Merchant of Record for all our orders: it processes your payment, calculates and collects sales tax or VAT, issues the invoice and handles refunds, as its own controller under Paddle’s privacy policy. Card and bank details go to Paddle only; we never see them.
The checkout pages of our shop (shop.containly.ch) load Paddle’s checkout script and payment form from paddle.com. Your browser then sends your IP address and the page address to Paddle; this happens only on those pages, not on the rest of this website.
Currency choice. If you pick a currency (Swiss franc, euro or US dollar) on containly.ch or in the shop, your browser stores it in the first-party cookie cw_cur (value CHF, EUR or USD, one year, SameSite=Lax, shared by containly.ch and shop.containly.ch). It holds no personal data, is set only when you choose, and is not used for tracking. For price previews our server sends Paddle the currency and your billing country (the one you pick, or the country derived from your IP address and kept in memory only) to get the prices of the plans; no name, e-mail address or IP address goes to Paddle for this, and Paddle.js is not loaded for it.
Payment recovery page. If a payment fails, Paddle can send you a link to recovery.containly.ch/payment-recovery. This page runs on its own address (recovery.containly.ch), separate from the shop and from your customer account, and only there Paddle’s scripts are loaded: Paddle.js (from cdn.paddle.com) and Paddle’s Retain widget (from profitwell.com, a Paddle company), which opens the form for updating your payment method. While the page loads, your browser sends your IP address and the page address to Paddle and ProfitWell, and the Retain widget loads further resources from Cloudflare (cdnjs.cloudflare.com, a script library), Google Fonts (fonts.googleapis.com and fonts.gstatic.com, the typefaces) and Sentry (error reports of the widget), so these providers receive your IP address as well. Paddle may set its own cookies, as described in Paddle’s privacy policy. We set no cookies on that page and keep no account or session data there, it is not indexed, and these scripts are not active on the rest of the website, apart from the licence page described next.
Cancelling in your account. If you are signed in and open the licence page of a monthly or annual subscription that is still running, your browser loads Paddle.js (from cdn.paddle.com) and Paddle’s Retain script (from public.profitwell.com, a Paddle company) on that page, so that the button “Cancel subscription” can open Paddle’s cancellation dialog. They are not loaded on any other page, for Lifetime licences or for subscriptions that are already cancelled. The dialog itself is Paddle’s (shown from retain-widgets.paddle.com): Paddle asks why you want to cancel, may offer you to pause the plan for three months or a discount, and cancels, pauses or changes the subscription at Paddle according to your answers. Your browser sends your IP address, the page address and the number of your subscription to Paddle and ProfitWell, and Paddle processes your answers as described in Paddle’s privacy policy; Paddle may make them available to us in its reports. We learn the result through the subscription events described below. We set no additional cookies for this, and Paddle may set its own.
When you are signed in and open the checkout, our server creates or looks up your customer record at Paddle with your account e-mail address and language, so the payment form is prefilled. Paddle receives this e-mail address for the purchase anyway.
After a purchase Paddle tells us, as our processor for the order, your e-mail address, name, country, the plan and the order and subscription numbers. We use them to issue your licence key, send it to you by e-mail, match renewals, cancellations and refunds to it and answer your questions (performance of the contract). Older purchases made through Lemon Squeezy are still recognised for existing customers.
Customer account on the shop
On shop.containly.ch you can create an account (optional). We store your e-mail address, a hash of your password (scrypt; we never see the password itself), the language, when the account was created, confirmed and last used, and for each sign-in a session with time, IP address, browser and operating system. A session cookie (strictly necessary, no tracking) keeps you signed in for up to 30 days, or 7 days without use. If sign-in and account run on their own addresses (for example a login and an accounts subdomain), each address keeps its own session cookie that is valid only there and ends when you sign out anywhere; a cookie that remembers the page you came from (at most 30 minutes) brings you back after sign-in, and the page header asks the sign-in address only whether you are signed in (yes or no).
Your account shows the licences bought with the same, confirmed e-mail address, and licences you add with key and order number. To show where a licence is in use, we display the host name, Containly version, last check and the country derived from the last IP address of each installation; the IP address itself is not shown. When you free an installation, open the Paddle customer portal or ask for the key mail, we log the action with the time and your IP address for the licence history.
Support requests (subject, message, chosen licence, our answers) are stored with the account and sent by e-mail to our support address; you get a copy. We use all of this only to run the account, provide the licences and answer you (performance of the contract).
You can delete the account at any time under Settings. This removes the e-mail address, password, sessions and your support requests. Licences and orders are not deleted: we must keep orders and invoices for 10 years (Swiss Code of Obligations), and your licences keep working. Unconfirmed accounts are deleted after 7 days.
Two-factor sign-in and passkeys
In your Containly account you can turn on two-factor sign-in with an authenticator app (TOTP) and add passkeys. For TOTP we store the shared secret encrypted, hashes of your one-time backup codes and the last used time step (so a code works only once). For a passkey we store its public key, its id, a name you choose, the sign-in counter and when it was added and last used; the private key never leaves your device or password manager. If you tick Remember this device for 30 days, a signed cookie on that device skips the second step; changing the password or signing out everywhere revokes it. We send you an e-mail when two-factor sign-in or a passkey is added or removed, and (unless you turn it off) when a new device signs in.
Forum
The forum on shop.containly.ch is public to read. To post you need a confirmed Containly account and a display name; others see that name, never your e-mail address. We store your posts, the time, edits, reports and a salted hash of your IP address (only to stop spam and abuse; the address itself is not stored). If you want, we e-mail you when someone replies to your threads (you can turn it off in the account settings). When you delete your account, your posts stay without your name (“deleted account”) unless you delete them first; the moderators can hide or delete posts.
AI support chat
The support chat on shop.containly.ch is optional and asks for your consent before the first message. It answers with the AI model Claude of Anthropic (Anthropic PBC, 548 Market Street, San Francisco, CA 94104, USA), which processes the data for us as a processor. What is sent for AI answers: your message, the earlier general messages of the same conversation and matching passages of our help guides, FAQ and release notes; not your account e-mail address, name or IP address. Guided personal licence, subscription and purchase-summary answers use only the licence service and locally stored order/webhook state of your verified purchasing account; guided support status uses requests owned by your account. Those answers are deterministic, are not sent to Anthropic and are excluded from later AI history. No licence keys, payment details or customer identifiers are provided as AI context. Personal topics are hidden without relevant owned data. Free-text information you choose to enter may still be processed by Anthropic. Data is transferred to the USA under the processor terms of Anthropic, which do not use API data for training. We keep the conversation (messages, time, the token count and, for rate limits, your account or a salted hash of your IP address) for 30 days and then delete it; if you hand it to the support, the transcript becomes part of that support request. Please do not enter licence keys, passwords or other secrets.
You can also open the chat on the pages of containly.ch: the chat window there shows the chat of shop.containly.ch in an embedded frame, with the same consent, the same rules and your same Containly account; containly.ch itself receives none of the messages. So that a conversation stays visible when you close the window or open another page, your browser keeps its messages in the session storage of shop.containly.ch until you start a new chat or close the tab. This is technically necessary for the chat and sets no cookie.
Licence check
When you activate a licence in Containly and about once a day after that, your installation sends the licence key, a random installation ID, its host name, the Containly version and the number of connected Docker hosts to containly.ch, which passes them, with your IP address, to our own licence server. We use this only to check the licence, to show you and us which installation uses it and to detect misuse of a key. Nothing else from your installation is sent. The data is kept for as long as the licence exists and for up to 12 months after it ends.
Contact form
If you use the contact form, we process the name, email and message you provide, solely to answer you. We do not use it for advertising.
Your rights
You may request access, correction or deletion of your data, and object to processing. To exercise these rights, email us at the address above.
Managing your choice
To withdraw analytics consent, delete this site’s cookies in your browser and reload. The banner appears again and you can decline. Declining keeps all analytics cookies off.