Privacy Policy

1. Introduction

HoardIQ ("we", "our", "us") is committed to protecting your privacy. This Privacy Policy explains how we collect, use, disclose, and safeguard your information when you use our home inventory application (the "App").

The App is operated by HoardIQ, registered in Denmark (CVR: 35944117). HoardIQ is the data controller for the personal data described in this policy.

This policy applies to:

By using the App, you agree to the collection and use of information in accordance with this policy.


2. Information We Collect

2.1 Personal Information You Provide

Account Information:

Home Inventory Data (User Content):

Collaboration / Home Sharing:

Feedback (Settings → Send Feedback):

Premium / Subscription Metadata:

2.2 Information Collected Automatically

Device Information (Mobile App):

Browser Information (Web App):

Usage Analytics (Self-Hosted Matomo) — opt-in:

Crash Reports (Self-Hosted GlitchTip):

Log Data (Seq Structured Logs):

Browser Storage (Web App):

The web app uses three browser storage mechanisms:

StorageKey / ItemPurposeRetention
localStoragehoardiq_cookie_consentCookie banner decision (preferences + analytics); also mirrored to a shared cookieUntil user clears browser data
localStoragehoardiq_web_langLanguage preference (EN/DA/RU/ES); after Preferences consent or explicit language choiceUntil user clears browser data
localStoragehoardiq_web_themeTheme preference (light/dark/system)Until user clears browser data
localStoragehoardiq_analytics_consentAnalytics opt-in/out toggleUntil user clears browser data
localStoragehoardiq_interstitial_shownOnboarding interstitial shownUntil user clears browser data
localStoragehoardiq_first_search_completedFirst search completed (for onboarding)Until user clears browser data
localStoragehoardiq_nps_dismissedNPS prompt dismiss flagUntil user clears browser data
sessionStorageUser profileUser ID, email, display nameUntil tab is closed
sessionStoragePreferencesCurrent home, theme, language, analytics consentUntil tab is closed
sessionStorageSession stateBeta banner dismissed, onboarding stateUntil tab is closed

localStorage data persists across browser sessions until the user clears it. SessionStorage data is cleared automatically when the browser tab is closed.

2.3 Information from Third Parties

Our AI engine (Image Analysis and Text Enrichment):

Barcode product lookup:

Fonts (Web / Marketing / Blog):


3. How We Use Your Information

We use your information to:

  1. Provide and Maintain the App — create and manage your account, store your home inventory data, manage Premium entitlements (trial, voucher, or store purchase via Play Billing / StoreKit), enable camera-based photo capture (web app)
  2. Improve the App — analyze usage patterns (via Matomo for mobile app; server-side event tracking for web app), fix bugs and crashes (via GlitchTip), review user-submitted feedback, optimize performance
  3. AI-Powered Features — analyze item photos and item text/metadata to suggest names, categories, values, and refinements
  4. Communicate with You — send push notifications for item expiration reminders; respond to feedback you submit (via our support inbox); send collaboration invite emails when you invite someone to a shared home (Premium)
  5. Ensure Security — detect and prevent fraud, monitor for unauthorized access, enforce rate limits

4. Legal Basis for Processing (GDPR)

We process your personal data based on:


5. Data Sharing and Disclosure

5.1 We Do NOT Sell Your Data

We do not sell, rent, or trade your personal information to third parties.

5.2 Service Providers (Data Processors)

ProviderPurposeData SharedLocation
AI engine providersAI image analysis and text enrichmentItem photos and item text/metadata (temporary)USA
MatomoSelf-hosted analytics (opt-in)Usage events; visitor id may equal account id when logged in; masked IPDenmark (self-hosted)
SeqStructured loggingAPI logsDenmark (self-hosted)
GlitchTipCrash reportingError stack traces and device/app context (no screenshots)Denmark (self-hosted)

5.3 Legal Requirements

We may disclose your information if required by law or in response to valid requests by public authorities.


6. Data Retention

We retain your data for as long as your account is active or as needed to provide you services.

Account deletion: When you delete your account via Settings → Delete Account, we permanently delete your account and associated inventory data immediately (no grace or restore period), including feedback submissions and Premium / subscription metadata linked to your account. Where possible, we email you a one-time link to download an export of your data before deletion completes. Analytics events previously collected under your visitor id may remain in Matomo until the retention period above expires. Copies of feedback previously emailed to our support inbox may remain in email systems until those systems’ normal retention applies.


7. Your Data Protection Rights (GDPR / CCPA)

You have the following rights regarding your personal data:


8. Cookies and Browser Storage

We use httpOnly cookies on the web app and device-level secure storage on the mobile app to maintain your session and preferences. We do not use cookies for advertising or cross-site tracking.

Cookie consent banner: On first visit to the marketing site (hoardiq.com), blog (blog.hoardiq.com), and web app (web.hoardiq.com), we show a cookie banner so you can Accept all, Reject non-essential, or Customize. Categories:

CategoryExamplesConsent
Essentialhoardiq_access, hoardiq_refresh (auth); hoardiq_cookie_consent (banner decision, shared across subdomains)Always on (required for sign-in / remembering your cookie choice)
Preferenceshoardiq_lang cookie and related language localStorageOff until you Accept / Customize Preferences, or explicitly pick a language
AnalyticsMatomo via server-side /api/eventsOff until you Accept / Customize Analytics (also controllable in Settings)

You can reopen Cookie settings from the site footer or web Settings → Privacy.

Web App — Authentication Cookies:

The web app uses two httpOnly cookies set by the API server to store JWT authentication tokens:

CookiePurposeAttributes
hoardiq_accessJWT access token (short-lived, ~1 hour)HttpOnly, Secure, SameSite=None, Path=/, IsEssential=true
hoardiq_refreshRefresh token (30 days, or 90 days with “Remember Me”)HttpOnly, Secure, SameSite=None, Path=/, IsEssential=true

These cookies are:

The SameSite=None attribute is required because the web app (hoardiq.com) and API server (api.hoardiq.com) are on different subdomains.

Marketing / Blog / Web — Shared Cookies:

CookiePurposeAttributes
hoardiq_langRemember language preference (EN/DA/ES/RU)Path=/, Domain=.hoardiq.com, Max-Age=1 year, SameSite=Lax
hoardiq_cookie_consentRemember cookie banner decision across hoardiq.com, web.hoardiq.com, and blog.hoardiq.comPath=/, Domain=.hoardiq.com, Max-Age=1 year, SameSite=Lax

The language preference cookie is set only after Preferences consent (or when you explicitly choose a language in the language switcher). The consent cookie is set when you Accept, Reject, or Save choices on the banner (and mirrored into localStorage on each origin).

Web App — Browser Session Storage: The web app stores the following in your browser’s session storage (cleared when the tab is closed):

Session storage data stays in your browser and is only sent to our server as part of authenticated API requests. You can clear it at any time by closing the browser tab.

Web App — Browser Local Storage: The web app stores non-sensitive preferences in localStorage, which persists across browser sessions until the user clears it:

You can clear localStorage at any time via your browser’s developer tools or by clearing site data.

Mobile App — SecureStorage (auth tokens only): The mobile app stores authentication tokens in platform-secure storage (iOS Keychain, Android Keystore). Token data is encrypted at rest and inaccessible to other apps.

Mobile App — local offline cache (not Keystore): Separately, the Android/iOS app may store an unencrypted local offline inventory cache (SQLite), photo thumbnails (PhotoCache), and pending offline capture files (queued-captures) under the app’s private storage so the app can work offline and upload when back online. This is not Keystore/Keychain-protected. On Android, those paths are excluded from Android Auto Backup / cloud backup and device-transfer backup via fullBackupContent / dataExtractionRules. Clearing app data or using Settings → Sync clear-cache removes local offline data; server-side inventory remains unless you delete your account.

Matomo Analytics (Self-Hosted): Analytics is opt-in (disabled until you enable it via the cookie banner, Settings, or the web consent toggle). Uses a visitor id to distinguish unique visitors; when logged in this may equal your account user id. Client IP addresses are masked before being sent for geolocation. All analytics data is stored on our own infrastructure — no data is sent to Matomo’s cloud or any third-party analytics service. No data is shared with third-party advertising networks.


9. Data Security

We implement appropriate technical and organizational measures to protect your data:

However, no method of transmission over the internet or electronic storage is 100% secure. We cannot guarantee absolute security.


10. International Data Transfers

Your data may be transferred to and processed in countries other than your country of residence:

By using the App, you consent to this transfer.


11. Children's Privacy

The App is not intended for children under the age of 16. We do not knowingly collect personal information from children under 16. If we become aware that a child under 16 has provided us with personal data, we will delete it.


12. Changes to This Privacy Policy

We may update our Privacy Policy from time to time. We will notify you of any changes by posting the new Privacy Policy on this page, sending an in-app notification, and updating the "Last Updated" date.


13. Contact Us

If you have any questions about this Privacy Policy, please contact us:


14. Supervisory Authority

If you are in the European Economic Area (EEA), you have the right to lodge a complaint with your local data protection authority.

List of EU Data Protection Authorities


15. California Privacy Rights (CCPA)

If you are a California resident, you have the following rights:

To exercise these rights, contact us at [email protected] or use the in-app data export/delete features.