Show HN: Best Time to Buy (BTTB) – See the best time to buy stuff and save money (bttb.io)

6 points by lobsterthief ↗ HN
Hey HN! I wanted to show you BTTB, a site I've been building off-and-on for the past year or so. I did all the end-to-end coding and design and enlisted the help of a few professional researchers and writers to gather and aggregate data. My background is in frontend engineering, design, and product development.

BTTB is a web app that illustrates the best time to buy common products (e.g. washing machines, snowblowers, TVs, fitness equipment, etc.) and notifies you the next time it's a good time to buy. I also built some cool indicators like sale rarity.

Why I built it: We bought a new house while replacing some dying appliances I learned that _all_ sales cycles are cyclical, primarily driven by seasons (weather) or basic human behaviors. Of course, this concept works best for planned purchases since a dead refrigerator can't wait.

We soft-launched it in December, having first shared it on Reddit (r/internetisbeautiful) and got some constructive feedback. I'm excited to start sharing it more widely now.

---

Recent improvements based on early feedback:

- Better data transparency: Knowing _why_ a date is a good time to buy is as important as knowing the date itself. So I added the ability to store a reason with each date, which appears when you hover over a date in the heatmap. We've begun populating all of these, which will take some time, so right now they're only available for certain product<>date relationships.

- Browsing by product: The first version only featured a month explorer on the homepage, which I replaced with a commonly-requested product explorer. The month explorer is a neat way to browse and plan your purchases though, so I moved it to its own page: https://bttb.io/what-to-buy-every-month

- Highlight today: People thought it would be nice to have a page that shows you the best stuff to buy today, so I built that page here: https://bttb.io/today

---

A bit about our data/research process:

- Our researchers look for primary sources of data first (e.g. US government-provided purchase data). When this isn unavailable, we might use data aggregated by an industry publication or other trusted source—for example, a cruise line booking agency trade group or Statista for market trend analysis.

- When referencing articles that include a paragraph or two about when an item goes on sale, we'll always verify the information with the sources listed in the article instead of using the article itself. If the article doesn't include sources and we can't corroborate the information elsewhere, we won't use the article, and we'll find sources elsewhere.

- We also perform searches using common search terms to identify when the largest companies in a given vertical normally run sales. We can build an accurate picture of when prices are lowest by aggregating data for multiple sale periods over multiple years.

---

Upcoming features:

- Adding 50-100 additional products.

- Completely automated ETL for identifying the best times to buy more granular products (for example, a single ASIN).

- Locales: Different country selection for tracking trends that differ by location.

- Additional notification mechanisms (email, SMS, browser push, etc.)

- Adding a changelog so people know what's new (currently only doing this in the monthly newsletter).

---

Current limitations of the app:

- Not a ton of products yet; we've covered the major product categories and are in the process of adding a ton of new products.

- The data for some products and its sourcing are limited; we're in the process of going through those earlier products and reworking their data sets, but they're mostly accurate. Additionally, some of the original articles were not well-written and are being reworked.

- Notifications are currently limited to calendar (...

13 comments

[ 4.7 ms ] story [ 29.9 ms ] thread
Very cool idea, but I found a bug: https://i.imgur.com/jvksAoL.png

I think you could shoot a message to Preisvergleich AG[1]. They run pretty known sites in Germany, Austria, Poland, and UK for comparing prices and have a price history for all products. [2]

[1] https://unternehmen.geizhals.at/impressum/

[2] https://geizhals.de and https://skinflint.co.uk/

Ah, good catch! Which browser are you using and what's your locale? Must be a bug specific to one or both since I couldn't recreate it.

And thanks for the suggestion, I'll definitely check them out :)

> Ah, good catch! Which browser are you using and what's your locale? Must be a bug specific to one or both since I couldn't recreate it.

I tried it in Firefox, Chrome and Edge now, and get the undefined with all of them. FF has an English locale and I'm getting undefined with it too, so I'm not sure if it really is related to that.

They have the following accept headers

  Edge: accept-language: de,de-DE;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
  Chrome: accept-language: de-DE,de;q=0.9,en-US;q=0.8,en;q=0.7
  Firefox: Accept-Language: en,en-GB;q=0.5
Very strange indeed! Likely an issue with date-fns or even date-fns-tz, both of which are used depending on whether I need to show a client-facing timezone (e.g. countdown timer for you) or a global/UTC timezone (e.g. that New Years Eve is always December 31).

Time zones are hard. Thanks for the headers, that will help with testing

I’ll look into this, thank you

Shoot me a message if I can help you debug this somehow. I really like this project's idea!
Hey super56,

I emailed you a few days back from zach@bttb.io; hoping you can help me with a bit of debug info. Would you mind checking for it? Sent to the email address in your bio.

Thanks!

I'm seeing the same bug. Chrome on Windows 11 US-EN locale.

Also iPhone 16 mobile Safari.

Thanks for the heads-up! Working on this now.
Hey Leftium, do you mind checking bttb.io again and letting me know if you still see the issue? Thanks!
It looks good on an iphone~ no undefined anymore
Very nice site!

I'm going to purchase a new laptop, and it lines up with my intuition to wait until Memorial Day. (Although Lenovo laptops are always "on sale." I think they just had some decent President's day discounts, too.)