What average position actually means, and why yours got worse
Your average position keeps getting worse and your traffic keeps going up, and both cannot be right.
It is an impression-weighted mean across every query
Not your rank for anything in particular. It is the average of every position you were shown at, weighted by how often. It is a blend, and blends move when the mix changes.
It gets worse as you succeed
Ranking for a new marginal query at position 40 pulls the average down while adding traffic. A site expanding its coverage will almost always show a worsening average position, and that is what expansion looks like.
Use it per query or not at all
Filtered to one query it is a real measurement. Aggregated across a site it is a summary of your query mix, which is not the thing you were trying to measure.
It is an average of averages, weighted by impressions
Each impression carries the position it was shown at. Google averages them. This means a page that ranks 2nd for a rare query and 30th for a common one reports something near 30, and reads as though the page is failing when its best query is doing fine. Segment before you interpret.
Why it can get worse when things get better
Start ranking for a hundred new queries at position 40 and your average position falls off a cliff while your clicks rise. This site averaged 9.07 across 1,228,913 impressions during a period of sustained growth. A worsening average position alongside rising clicks is expansion, and it is the single most misread number in the entire report.
Measured, not asserted
This site's average position is 9.07 across 160 pages, worse than it was at a tenth of the traffic, while clicks rose every single month.
Free tool for this: Search Console Analyzer. No account, nothing uploaded.
Where this goes deeper
Every number on this page comes from one complete dataset: one product taken from zero to 100K+ users on search alone, with nothing spent on advertising. The full argument is Chapter 20 of the book. Five chapters are free to read.