Plain-language questions
Ask for average search position per month, customer or product in the SQL Explorer with AI. The AI writes the SQL, you see the query and run it yourself; the AI only receives metadata.
KPI · Marketing
Average search position is the average place at which your website appears in the organic search results, weighted by impressions. Position 1 is the top result, so the lower the number, the better. Google Search Console reports this position per query and per page.
Sum of (position × impressions) ÷ total impressions
Acme Groothandel appears for three queries: one with 6,000 impressions at position 2, one with 1,000 impressions at position 15 and one with 3,000 impressions at position 10. Average position is (6,000 × 2 + 1,000 × 15 + 3,000 × 10) ÷ 10,000 = 57,000 ÷ 10,000 = 5.7. An unweighted average would give (2 + 15 + 10) ÷ 3 = 9.
Fictitious figures for Acme Groothandel, a sample wholesaler.
A lower average position means you rank higher in the search results, and higher positions get far more clicks. The average can mislead: if you start appearing for new queries at a low position, the number rises even though your visibility is growing. So also track the position for a fixed set of important queries.
SQL & DAX
Two examples on a fictitious data warehouse for Acme Groothandel: a PostgreSQL query and a measure for a Power BI model. Adjust table and column names to your own model.
SELECT date_trunc('month', query_date) AS month,
SUM(impressions) AS impressions,
SUM(clicks) AS clicks,
ROUND(SUM(position * impressions) / NULLIF(SUM(impressions), 0), 1) AS avg_position
FROM search_queries
GROUP BY 1
ORDER BY 1;Average Search Position =
DIVIDE(
SUMX(SearchQueries, SearchQueries[Position] * SearchQueries[Impressions]),
SUM(SearchQueries[Impressions])
)In ENABLE
Ask for average search position per month, customer or product in the SQL Explorer with AI. The AI writes the SQL, you see the query and run it yourself; the AI only receives metadata.
Define the KPI as a measure in your Power BI model and show it in the portal, with "Last refreshed" next to it. Access profiles and optional row-level security decide who sees which figures.
Add the KPI as a tile to a custom dashboard, compared with last year. The Dashboard Builder is a pilot and can be switched on per client.
With the built-in Targets app you set a target for the KPI per month, so you see actuals and target side by side.
FAQ
Average position is the average of your site's highest position per impression, weighted by impressions. To combine positions for several queries yourself, multiply each position by its impressions and divide the sum by total impressions. In the Acme Groothandel example, that gives 5.7.
This usually happens because you have become visible for new queries but still rank low for them. Those extra impressions pull the average up. So also look at impressions, clicks and position per query.
Average position is about where you rank in the organic search results, while impression share is usually about how often your ads are shown. You measure the first in Google Search Console and the second in Google Ads. They therefore relate to different channels.
In an online demo we show how ENABLE makes your data securely available and how you build on it: describing an app in the AI Builder, plain-language questions, dashboards and APIs. And how we set it up and manage it for you.