Terms of Service & Privacy Policy
Contents
- Acceptance of Terms
- About the Service
- Eligibility
- Data We Collect
- How We Use Your Data
- Data Sharing & Third Parties
- Data Retention & Deletion
- Your Rights (GDPR — EU/UK Users)
- Your Rights (CCPA — California Users)
- Cookies & Analytics
- Intellectual Property
- Disclaimers & Limitations
- Acceptable Use
- Changes to These Terms
- Governing Law
- Contact
1. Acceptance of Terms
By accessing or using dankcharts.fm (the "Service"), you agree to be bound by these Terms of Service and Privacy Policy ("Terms"). If you do not agree, please do not use the Service.
These Terms constitute the entire agreement between you and Erwin Solorzano ("I", "me", "the operator"), an individual operating from Guatemala, regarding your use of the Service.
2. About the Service
dankcharts.fm is a personal music chart visualization tool. Core features are free. Some features may be designated as premium (paid) at any time, and the availability or pricing of any feature is subject to change without notice. It lets you explore your listening history by connecting to:
- Last.fm — your scrobble history is fetched directly from Last.fm's public API using your username.
- Google Sheets — you provide a publicly shared spreadsheet URL; the Service reads it on your behalf.
- File upload — you upload a local CSV, ZIP, or XLSX file directly in your browser.
Optional Google Sign-In allows the Service to remember your setup preferences (e.g., sheet URL, theme, language) across sessions using Firebase.
3. Eligibility
You must be at least 13 years old to use the Service. If you are under 16 (or the applicable age of digital consent in your country), you must have parental or guardian consent. By using the Service, you confirm you meet these requirements.
4. Data We Collect
4.1 Account data (optional — only if you sign in)
When you sign in with Google via Firebase Authentication, we receive from Google:
- Your Google account display name
- Your Google account email address
- Your Google account profile photo URL
- A unique Google account identifier (UID)
This information is used solely to identify your settings record in our database. We do not use it for marketing or share it with third parties outside of the Firebase service.
4.2 Preferences data (optional — only if you sign in)
If you sign in, the following preferences are stored in Firebase Firestore linked to your UID:
- Data source type (Last.fm, Google Sheets, or file)
- Last.fm username (if provided)
- Google Sheets URL or ID (if provided)
- Tab/sheet name (if provided)
- UI preferences: theme, language, week start day
4.3 Analytics data
The Service uses GoatCounter, a privacy-respecting analytics tool. GoatCounter records page views without setting cookies, without collecting personal data, and without tracking you across sites. Aggregate traffic counts are visible publicly at erwindank.goatcounter.com.
4.4 Data we do NOT collect
- Your listening history or music data — this never leaves your browser or its source
- Spotify, Apple Music, or any streaming service credentials
- Payment information — core features are free; if premium features are introduced, payment details would only be collected at that time
- Device identifiers, IP addresses (beyond what Firebase logs by default), or precise location
5. How We Use Your Data
The data described in Section 4 is used exclusively to:
- Authenticate you and identify your stored preferences
- Restore your setup (sheet URL, theme, etc.) when you return to the Service
- Understand aggregate usage patterns via GoatCounter (no personal data involved)
We do not use your data for advertising, profiling, or any automated decision-making that produces legal effects.
6. Data Sharing & Third Parties
We share minimal data with the following processors solely to provide the Service:
- Google Firebase (Alphabet Inc.) — authentication and Firestore database hosting. Firebase Privacy
- GoatCounter — privacy-first page-view analytics. GoatCounter Privacy
- Last.fm (CBS Interactive) — only when you provide a Last.fm username; your browser fetches data directly from Last.fm's public API. Last.fm Privacy
- Cloudflare Pages — static site hosting. Cloudflare Privacy
We do not sell, rent, or trade your personal information to any third parties.
7. Data Retention & Deletion
Your account and preferences data in Firebase is retained as long as you maintain a signed-in account with the Service. You can delete your data at any time by:
- Emailing us at support@dankcharts.fm with the subject line "Delete my account".
- We will permanently delete your Firestore record and Firebase Auth entry within 30 days.
If you never signed in, no personal data is stored and no action is needed.
8. Your Rights (GDPR — EU/UK Users)
If you are located in the European Union or United Kingdom, you have the following rights under the General Data Protection Regulation (GDPR) and UK GDPR:
- Right of access — request a copy of the personal data we hold about you.
- Right to rectification — ask us to correct inaccurate data.
- Right to erasure — ask us to delete your personal data ("right to be forgotten").
- Right to restriction — ask us to limit processing of your data.
- Right to data portability — receive your data in a structured, machine-readable format.
- Right to object — object to processing based on legitimate interests.
- Right to withdraw consent — where processing is based on consent, you may withdraw at any time.
The lawful basis for processing your data (when you sign in) is contract performance — we process your account data to provide the settings-sync feature you requested. Analytics via GoatCounter do not process personal data and require no lawful basis.
To exercise any of these rights, contact us at yourdata@dankcharts.fm. We will respond within 30 days. If you are unsatisfied with our response, you have the right to lodge a complaint with your local supervisory authority.
9. Your Rights (CCPA — California Users)
If you are a California resident, the California Consumer Privacy Act (CCPA) grants you the following rights:
- Right to know — request disclosure of the categories and specific pieces of personal information collected about you.
- Right to delete — request deletion of personal information we have collected from you.
- Right to opt out of sale — we do not sell personal information, so no opt-out mechanism is required.
- Right to non-discrimination — we will not discriminate against you for exercising your CCPA rights.
To exercise these rights, email yourdata@dankcharts.fm. We will respond within 45 days as required by law.
10. Cookies & Analytics
The Service uses no advertising or tracking cookies. The only browser storage used is:
- localStorage — stores your UI preferences (theme, language, source selection) locally in your browser. This data never leaves your device unless you sign in.
- Firebase session cookie — a short-lived authentication token set by Firebase Auth when you sign in. This is strictly necessary for the sign-in feature and is not used for tracking.
GoatCounter analytics do not use cookies or collect personal data.
11. Intellectual Property
The dankcharts.fm name, logo, and original code are owned by Erwin Solorzano. All rights reserved.
Your music listening data remains entirely yours. We claim no rights over data you import into the Service. Chart images and exports you generate are yours to use freely.
Last.fm, Spotify, Apple Music, Google, and other third-party names and logos are trademarks of their respective owners. Their use on this site is for identification purposes only and does not imply endorsement.
12. Disclaimers & Limitations
The Service is provided "as is" without warranties of any kind, express or implied. To the fullest extent permitted by law:
- We do not warrant that the Service will be uninterrupted, error-free, or secure.
- We are not responsible for the accuracy or availability of data provided by Last.fm or Google Sheets.
- We are not responsible for changes to third-party APIs (Last.fm, Google) that may affect the Service.
- We shall not be liable for any indirect, incidental, special, or consequential damages arising from your use of the Service.
Nothing in these Terms limits liability that cannot be excluded under applicable law (including consumer protection laws in your jurisdiction).
13. Acceptable Use
You agree not to:
- Attempt to reverse-engineer, scrape, or abuse the Service in ways that harm its availability for other users.
- Use the Service to infringe the rights of Last.fm, Google, or any other third party.
- Misrepresent your identity or provide false information during sign-in.
- Use the Service for any unlawful purpose.
14. Changes to These Terms
We may update these Terms from time to time. When we do, we will update the "Last updated" date at the top of this page. Continued use of the Service after changes take effect constitutes acceptance of the revised Terms.
For material changes affecting privacy rights, we will make reasonable efforts to notify signed-in users (e.g., via a notice on the landing screen).
15. Governing Law
These Terms are governed by and construed in accordance with the laws of Guatemala. Any disputes arising from these Terms or your use of the Service shall be subject to the exclusive jurisdiction of the competent courts in Guatemala.
If you are a consumer located in the European Union or United Kingdom, you retain the right to bring proceedings before the courts of your country of residence under applicable consumer protection laws.
16. Contact
For questions, data requests, or complaints about these Terms:
We aim to respond to all inquiries within 30 days.