The closing polls on the election were generally accurate but not completely so. CROP and Léger both underestimated the ADQ vote, and this is no doubt led to the sense of surprise on election night. Their error on the ADQ in both polls was greater than the poll's margin of error. Strategic Counsel did not have any individual results outside their margin of error but were not the most accurate overall.
When I aggregated the performance of the polls by adding up the absolute error between the poll result and the final percentage of the vote for each party, I obtained the following result:
Léger - 9.1%
Strategic Counsel - 12.3%
CROP - 12.8%
So the Léger poll achieved the greatest overall accuracy.
As for my own model when I applied the actual vote percentages from the election, I found I predicted the outcome accurately in 106 of the 125 constituencies, an 85% accuracy rate. I have done better than this, but I make a calculation based on previous voting patterns. When new patterns are established, as was clearly the case here, the method is less accurate.
The net seat distribution predicted was close to the actual:
PLQ - 45
ADQ - 41
PQ - 39
The minority government in Quebec produces a never before seen dynamic in a province that remains deeply divided about its place in Canada (there are sharp differences between the Liberals and the ADQ). There will be interesting days ahead.