How does the reader / read guideline badges work?

I’m not the biggest reader out there, but I do read a lot (and I love the whole “need to read” concept behind discourse! :slight_smile: ). I did read guidelines and got no badge (on other discourse sites).

How exactly do they work? Why might I not be getting 'em?

It’s awarded whenever you reach the bottom of the page.

I’ve read somewhere (couldn’t find it now) that’s not it and there are other measures taken to prevent precisely that. Also, I did reach bottom many times, so it’s not working.

I’m pretty sure it’s based solely on the user reaching the bottom of the /faq page :wink:

1 Like

So maybe there’s a bug on HTG?

I’m pretty sure my instance is updated and it also doesn’t work there.

There’s high chance the code doesn’t work with custom header… Both of these sites have one.


Oh, custom header do offer many bugs on scrolling indeed. Should I open up a report?

Also, I believe the “reader badge” isn’t just about reaching the bottom of the page. That doesn’t work even here on meta, which is good. But still makes me wonder how does it work.

This is technically your bug @sam – I don’t like unachievable badges. Perhaps we can make it so if the last paragraph is visible in the browser, you achieve it?


I really shortened our guidelines, so it all fits on one screen with the browser maximized. I couldn’t get the badge until I changed the browser to windowed and made the window small enough vertically that I had to scroll to get to the bottom of the guidelines.


Can’t be much shorter than mine. :stuck_out_tongue:

I’ve actually just tried removing my custom header and it didn’t work out. It might still have something to do with it, but it’s certainly not the only issue there.

I think it’s due to the fact that no scrolling is required to reach the end, so you never scroll, so it never checks to see if you’re at the end.

There’s a similar problem on the topic list - if the whole thing fits on the screen when you first load, it won’t load more until you scroll.

1 Like

That’s it. I removed it again and resized the window. It worked.

Now I doubt I’d be able to do a PR before you guys fix this. :frowning:

I improved our handling of the read guidelines badge and we’ll now properly detect whenever the last paragraph is in the viewport :bug:


Reading this alongside Why is Guidelines called FAQ? Can we link to GUIDELINES and FAQ from hamburger menu? (2015-11-13)

For badge grant purposes, was/is it equally effective to read the content at the /guidelines URL?

I ask because Read Guidelines badge on Discourse Meta shows that I read the guidelines only twenty minutes ago, but I recall seeing the guidelines – or something very similar, with the public park metaphor – months earlier.

It is, of course, possible that my earlier reading of /faq or /guidelines was at a different Discourse site, or that the earlier reading was partial (not enough for the badge). But I’m curious about URL equivalence.

1 Like

According to the code it should work if you read either /faq or /guidelines


Can we turn off the granting of this badge for FAQ?

We use a different FAQ link to an actual FAQ and have /guidelines go to the Guidelines. I found that users are still getting granted this badge by merely visiting /about/faq even though that just redirects to a different real FAQ. We want to have this badge only granted for visiting /guidelines.

You can enable or disable whatever badge you want in admin/badges it has [ ] Enable badge of every system badge.


Well, I want the badge, but I want it to be granted only for visiting /guidelines and not for visiting /faq (this is when we have set an external FAQ so that “Guidelines” shows up again in the nav system).

Anyway, I found an adequate workaround: I used a CSS customization to hide the faq links so that it’s unlikely for anyone to go to any FAQ at all:

.faq-link, .nav-item-faq {
    display: none !important;

If we want an FAQ separately from Guidelines, we can add links in other ways, distinct from the specific classes. And this way, we get to keep the badge active for reading the Guidelines.