Policy

What we know about you.

Very little, on purpose. This page describes what the site actually does today, checked against its code.

Last updated

Accounts
None
Cookies
Set by Google Analytics
Quiz answers
Kept in your browser tab
Analytics
Vercel (cookieless) and Google Analytics 4

Your data on this device

Everything the site remembers about you stays in this browser, in session storage (cleared when you close the tab) or local storage (kept until you clear it). There is no account and nothing is copied to a server. This is the complete list:

Quiz progress

mms_quiz_stateSession storage
Your answers while you take the quiz, so a reload does not lose them. Cleared when you close the tab.

Latest match

mms_last_resultSession storage
Your most recent match results, so other pages can show your scores. Cleared when you close the tab.

Remembered matches (opt-in)

mms_saved_profileLocal storage
Only if you tick "Remember my matches on this device": your sleep profile choices and the score version. Scores are recalculated each visit. Kept until you clear it.

Compare list

mms_compareLocal storage
The ids of up to three mattresses you added to compare. Kept until you clear it.

Compare list names

mms_compare_labelsLocal storage
The display names of the mattresses in your compare list, so the compare tray can name them without loading the catalog. Kept until you clear it.

Recent searches

mms_recent_searchesLocal storage
The last five things you searched for on this site. Kept until you clear it.

Catalog layout

mms_catalog_viewLocal storage
Whether you like the mattress catalog as a gallery or a list. Kept until you clear it.

To score mattresses, your answers (sleep position, body weight, firmness preference, temperature and any optional answers you gave) are sent to this site's match service. It calculates the scores and sends them back. The service does not save your answers, write them to a database or log them.

Analytics and performance

This site uses Vercel Web Analytics to count page views and Vercel Speed Insights to measure how fast pages load (Core Web Vitals). Neither sets cookies. Both report in aggregate: which pages are visited, the referring site, and the country, browser, operating system and device type of visits. According to Vercel, visitors are not tracked across sites and the identifier used to count a visit is a hash that is discarded within 24 hours. See Vercel's analytics privacy notes (opens in a new tab).

On top of page views, the site sends a short list of anonymous product events through the same service, so we can see whether the quiz, comparisons and guides are actually useful. The code only allows the events below, keeps only short plain values, and drops any field whose name suggests personal data (such as email, weight or search text).

Custom analytics events
EventSent when
quiz_startedYou began the sleep quiz.
quiz_completedYou finished it. Carries the answer categories you picked (for example "side" or "hot"), never your body weight.
match_revealedYour top match was shown: the mattress id, its score and tier.
match_viewedYou viewed your results list.
mattress_viewedYou opened a mattress page: its id, brand and type.
compare_addedYou added a mattress to compare: its id and how many are selected.
compare_removedYou removed one.
comparison_startedYou opened the comparison from the compare tray.
comparison_completedA comparison was shown: how many mattresses.
affiliate_clickYou followed a labeled affiliate link: the mattress, the retailer and where on the page it was.
outbound_clickYou followed a link to a brand's own site: the destination domain and which mattress.
guide_viewedYou read a sleep guide: its slug and category.
search_usedYou used search: how long the query was and how many results came back, never the words.
filter_usedYou changed a filter: which filter and its value.
layer_exploredYou selected a layer in the mattress cutaway: which layer, and whether by slider or button.
slider_interactionYou moved a carousel: which one, how (button, drag, swipe or key) and which slide.
category_viewedYou opened a category page such as "Best for side sleepers": its slug and how many mattresses it lists.
nav_usedYou used the main menu: which menu and which item.

This site also runs Google Analytics 4 (gtag.js) on the production site only — never on a preview deployment or in local development. Unlike Vercel Analytics, it sets first-party cookies (to tell repeat visits apart) and the page sends a request to Google's servers to record the visit, your approximate location, device and browser, and which pages you viewed. Google processes this data under its own policies; see Google's privacy policy (opens in a new tab) and how Google Analytics data is used and shared (opens in a new tab).

Your IP address

Every website receives the IP address of whoever requests it. The match service reads it for one purpose: to stop a single address sending more than 30 scoring requests a minute. The counter keyed by your address expires after 60 seconds. Depending on how the site is deployed, that counter lives either in the server's short-lived memory or in a rate-limit counter in our Supabase database that is overwritten when the window expires and cleaned up automatically.

Our code does not log IP addresses. The hosting provider, Vercel, processes every request and keeps its own operational logs under its own policies.

What we do not do

  • No accounts, sign-ups or email collection.
  • No advertising, ad networks or tracking pixels.
  • No accounts, sign-ups or email collection tied to analytics.
  • No selling or sharing of data with brands. Brands get nothing from this site.
  • Fonts are served from this site. Loading a page does make one request to Google, for Google Analytics (see the Analytics section above) — it previously did not, before that was added. The search box still runs in your browser against a downloaded index, so what you type there is not sent anywhere. (Searches and filters on the Mattresses page are saved in the page address so they can be shared, like any link.)

Photos from RTINGS

Product photos credited “Photo: RTINGS” load straight from RTINGS' image server (i.rtings.com), not from this site, so RTINGS can see your IP address and browser details when one loads. We ask your browser not to send them the address of the page you are on. This site loads nothing else from a third party.

Links to brand sites

“Visit brand” links go straight to the manufacturer's own product page (or the retailer listing the mattress page names). We don't add tracking codes to them. Once you are on their site, their privacy policy applies. See our disclosures for why there are no affiliate links.

Your choices

  • Close the tab to clear quiz answers and results.
  • Use “Forget everything on this device” above to remove every item the site keeps in this browser at once.
  • Remembering your matches between visits is opt-in and off by default. The button above clears it too.
  • A content blocker that blocks Vercel's analytics scripts or googletagmanager.com stops analytics without breaking the site.

Changes to this page

If what the site collects changes, this page will name the service and what it collects before it goes live, and the date at the top will change.