Legal

Privacy Policy

Last updated: 21 April 2026

This policy explains what data SpoolHound collects, why, and what rights you have under the General Data Protection Regulation (GDPR). SpoolHound is operated from the Netherlands and is subject to EU data protection law.

1. Who we are

SpoolHound is a free filament price comparison service. We are operated as an individual/sole trader based in the Netherlands. For data protection queries, contact us at hello@spoolhound.com.

2. What data we collect and why

2.1 Click tracking (affiliate analytics)

When you click a "Buy" link on SpoolHound, we record:

  • Which product was clicked.
  • The date and time of the click.
  • A one-way cryptographic hash of your IP address. We never store your raw IP. The salt we hash with rotates every 24 hours, so we cannot link today's visitor to yesterday's visitor inside our own database.
  • Your browser family and major version, for example "Chrome 120" or "Safari 17". The full user-agent string is truncated at write time.
  • The hostname of the referring page, for example "reddit.com". Query strings and paths are stripped at write time, so any tracking parameters the source site attached are discarded before we save anything.

This data is used to count clicks per product, to measure which pages drive conversions, and to respond to affiliate disputes about click totals.

Why we keep the hash for a full 24 hours: so we can spot and rate-limit bot and scrape attempts. If a single hashed value makes hundreds of requests in a short window, we flag it as automated traffic and filter it from our stats. If necessary, we block it. The 24-hour rotation window is long enough to be useful for this, and short enough that after the rotation nobody browsing our data can tell the old hash belonged to any specific visitor without our internal secret salt, which we do not share.

Legal basis: legitimate interests (Art. 6(1)(f) GDPR). This is the standard basis for first-party affiliate analytics and basic abuse-prevention on a public website.

2.2 Email address (newsletter sign-up)

If you submit your email address via our sign-up form, we store it in order to send you a one-time notification when price drop alerts launch. We use Formspree to process form submissions - see their privacy policy for details. Legal basis: consent (Art. 6(1)(a) GDPR). You can withdraw consent at any time by emailing us.

2.3 Web server logs

Our web server (nginx on Hetzner) may record standard HTTP access logs including IP addresses, request paths, and user-agent strings. These logs are retained for up to 7 days for security and troubleshooting purposes and are then deleted. Legal basis: legitimate interests (Art. 6(1)(f) GDPR).

2.3a Aggregate page-view analytics

Every 15 minutes, a server-side job parses recent entries from the access log above and writes aggregated page-view rows to our internal database. For each visit we keep the URL path, the daily-rotating hash of the IP (same one used in 2.1, same 24-hour rotation), the referrer hostname, the browser family + major version, and the timestamp. Full user-agent strings and referrer query strings are discarded at write time. We never persist the raw form. This data stays on our server and is used only to understand which pages are read most, which external sources send us traffic, and to inform editorial decisions.

No tracking code runs in your browser. Nothing fires, nothing writes to your storage, nothing is sent to third parties. The work happens entirely on our server from the access log we are already keeping for security.

Legal basis: legitimate interests (Art. 6(1)(f) GDPR), the standard basis for first-party analytics.

2.4 Browser storage (localStorage)

SpoolHound does not set any HTTP cookies on its own domain. To remember a small number of UI preferences you set yourself, we use your browser's localStorage. This data stays in your browser, is never transmitted back to our server, and is never shared with third parties:

  • sh-theme: the visual theme you pick (light, dark, etc.).
  • sh-region: the region and currency you pick, for example DE/EUR or US/USD.
  • spoolhound_prefs: your sort order, view mode, and column choices on the deals page.
  • sh-calc: the input values you enter on the cost calculator page (printer preset, filament price, weight, and so on) so the form remembers them when you come back. Only written when you actually type or select something on that page.

None of these items contain identifiers, tracking data, or affiliate data. You can clear them at any time via your browser's site-settings menu (Settings › Privacy › Site data › spoolhound.com).

Legal basis: strictly necessary for a service explicitly requested by the user (exemption under Art. 5(3) ePrivacy Directive / §25 Abs. 2 Nr. 2 TTDSG). These preferences are only written after you click the corresponding control such as the theme toggle, the region selector, or a sort or column change.

3. What we do NOT collect

  • We do not set any cookies on our domain (spoolhound.com).
  • We do not use Google Analytics, Facebook Pixel, Hotjar, Microsoft Clarity, or any third-party analytics scripts.
  • We do not use tracking pixels, fingerprinting, or cross-site identifiers.
  • We do not create user profiles or track you across sessions.
  • We do not sell or share your data with third parties for marketing.

SpoolHound participates in affiliate programs including but not limited to Amazon Associates, AWIN, Impact.com, and retailer-direct programs. When you click a "Buy" link and make a purchase, we may earn a commission at no extra cost to you.

Clicking a Buy link follows this flow:

  1. Your browser requests spoolhound.com/go/<id>, which we use to count the click (see 2.1).
  2. Our server responds with an HTTP redirect to the retailer's affiliate URL.
  3. Your browser follows the redirect to the retailer's domain (e.g. sunlu.com, 3djake.com, an Amazon product page).

Any cookies or storage set during step 3 are set by the destination retailer or their affiliate network on their domain, not by SpoolHound. We have no control over and no visibility into cookies set by third-party retailers. Those retailers' privacy policies govern that data.

5. Third-party services

  • Hetzner Online GmbH: our server infrastructure is hosted in Europe. Hetzner Privacy Policy
  • Formspree: used for email sign-up form submission. Formspree Privacy Policy
  • Fonts: all fonts used on SpoolHound (DM Sans and Space Mono) are self-hosted on our own servers. No font data is requested from Google Fonts or any other third-party CDN. Your browser never contacts Google when visiting SpoolHound.

5.1 Product images (first-party proxy)

When a product listing is displayed, your browser needs to load the product photograph. A normal comparison site embeds the retailer's image URL directly. Your browser then opens a connection to the retailer's server to fetch it, transmitting your IP address, user-agent, and any cookies the retailer has previously set. SpoolHound does not work that way.

Instead, every product image on SpoolHound is served through a first-party proxy on our own server at /img/<host>/<path>. When you view the site:

  1. Your browser only ever connects to spoolhound.com. It never contacts cdn.shopify.com, 3d.nice-cdn.com, esun3dstore.com, or any other retailer CDN. Your IP address and user-agent are never revealed to the retailer during page browsing.
  2. Our server fetches the image from the retailer's image host on your behalf. It does not forward your IP, user-agent, referrer, or any other identifying header.
  3. Before our server sends the image back to you, we strip every Set-Cookie, Cookie, and related tracking header out of the retailer's response. Even if the retailer tried to set a tracking cookie on their domain, it never reaches your browser.
  4. We cache the image on our server so subsequent visitors do not re-trigger upstream fetches.

Result: you can open your browser's developer tools while using SpoolHound, look under Network, and every single request will go to spoolhound.com. Under Application › Cookies, every list will be empty. Nothing on the retailer side knows you loaded a specific product page on SpoolHound.

Legal basis: this processing falls under the strictly necessary exemption (Art. 5(3) ePrivacy Directive / §25 Abs. 2 Nr. 2 TTDSG). You are on SpoolHound to compare filament deals and the product images are part of that service. The proxy itself is not strictly required by that exemption. We run it by choice, to minimise how much of your traffic touches third-party infrastructure.

6. Data retention

  • Click records (hashed IP + product + timestamp): retained indefinitely for analytics purposes.
  • Email addresses (sign-up list): retained until you request deletion or the feature launches and you unsubscribe.
  • Server access logs: deleted after 7 days.

7. Your rights under GDPR

If you are located in the EU/EEA, you have the following rights:

  • Right of access - you can request a copy of personal data we hold about you.
  • Right to erasure - you can request deletion of your data.
  • Right to rectification - you can ask us to correct inaccurate data.
  • Right to object - you can object to processing based on legitimate interests.
  • Right to withdraw consent - where processing is based on consent, you may withdraw it at any time.
  • Right to lodge a complaint - you can complain to the Dutch data protection authority (Autoriteit Persoonsgegevens) at autoriteitpersoonsgegevens.nl.

To exercise any of these rights, email us at hello@spoolhound.com. We will respond within 30 days.

8. Data security

All traffic to SpoolHound is encrypted via HTTPS (TLS). IP addresses are hashed using SHA-256 with a secret salt before storage. The salt is stored only on our server and is never exposed in any API response, log, or backup that leaves the server. Without it, no one browsing our data can map a hash back to an IP. We do not store payment information of any kind.

9. Changes to this policy

We may update this policy from time to time. The "last updated" date at the top of this page will reflect any changes. Continued use of SpoolHound after a change constitutes acceptance of the updated policy.

10. Contact

For any privacy-related questions or requests: hello@spoolhound.com