There are a ton of reasons you might receive less impressions for a certain term over time. Nowadays a single SERP is not bound to a single exact match (or close variant) keyword. Since RankBrain and BERT, Google have become much smarter about how they serve results for a given query.
Keep in mind this is your average position. So if you're seeing less impressions it probably means your actual rank is decreasing.
If your actual position is roughly the same, I'd say that the decrease in impressions is likely due to an increase in new terms or a decrease in interest on the topic. Users' search history is definitely a factor here as well.
Ultimately, it's hard to say since I haven't been monitoring it for months how the overall data has been moving. Even the most subtle things matter.
The best way to tell what's important on a given SERP is to test and see what see what makes it go up! For this reason, I'm going to help you get started on improving the page.
Make Sure Keyword Cannibalization is Ruled Out
Often times if a site has 2 or more pages that get impressions for the same terms, Google (in lieu of being unable to decide which to rank) will suppress both.
Essentially what they're saying is like:
We notice that more than one of your pages are competing for the same term, but we can't rank them both. Work it out between them, and until then we'll hold them both back to be fair.
In cases of keyword cannibalization, I typically see the competing pages sitting between position 20-40.
I'd Consider Position ~15-30 to be Within "Striking Distance"
Striking Distance keywords are those that are very actionable to get onto page 1 - they are your "Low Hanging Fruit" as the pundits say.
To a seasoned SEO, it is usually pretty clear what has to be done to in order to rank. However, the higher in position, the more ambiguous it becomes.
Look at Everything Pages Between position 30 and 1 Do and Do it Better
The only result(s) in the top 5 I can see getting bumped out are the one occupying position 4 - it has the least amount of links, and the least Page Authority (which I opt to look at over DA because Google Ranks pages not websites). The Stack-overflow answer probably get's the most clicks and highest time on page (there's a lot of answers).
What about page 2?
Here's Your Strategy
- Include a section with relevant background info/docs:
- Address why the user is looking for info on this, what were they likely just doing? What is their next query going to be?
- List the top situations window resize implementations get caught up with bugs. There's a good chance your reader has been pulling their hair out for awhile and is extremely ticked off.
- The reader is either a noob (syntax errors) or an experienced developer (updated docs/specs, equivalents in other JS flavors). So perhaps organize your content by skill level - provide a way to take both groups to the answer they need quickly.
- Figure out the top things that people are looking to do with window resize and create as "copy and paste-able" (RIP Larry Tesler) boilerplate as possible examples that people can drop into their project.
- Anything else that is relevant that pages between 30 and 1 do not address.
- I don't see a whole lot of videos, and sometimes for "guide"/"how to" stuff adding one is seen as a big value add.
- Build 1-3 solid quality links to your new page.
Don't implement them all at once - request indexing after each new addition and and monitor to see the marginal effect. Build the links last.