For me, recommendations got remarkably better once I used 5-10 tags ('shelves') per book for about 50 books I read - after that, the per-shelf recommendations got very good.
The problem is if it's some obscure topic with a specific shelf, you can get some pretty bad books, as it seems to pull them based on other people's tags of books. Or, I can be reading academic works on Buddhism and then get recommended Alan Watts, who wasn't an academic and wasn't a Buddhist, but others tagged as 'Buddhism'. So there are still plenty of issues with it.
When you finish a book you can review it, or assign shelves. The default shelves are to-read and read but you can add many custom ones too. The shelves work like tags.
Once you have a decent amount of books with tags, goodreads will start recommending books based on these tags.