# Filter Google Search Console pages by position Search Console lets you filter by query, page, country and device, but not by average position. BasecampSEO adds that filter, so you can isolate the pages sitting just below the top of the results. ## Why it is not in Search Console Position is an average over the rows Google returns, not a dimension you can filter on in its API. BasecampSEO works around this. When you set a position filter it fetches the pages for your date range, keeps the ones whose average position falls inside your band, ranks them by clicks, and reapplies them as a page filter. Every part of the dashboard then reflects only those pages, including the KPI cards, the trend chart and the queries sending them traffic. ## Using it 1. Open any property and click Filters. 2. Choose Position. 3. Set a range, for example 3 to 15. 4. Combine it with other filters if you want, such as device or country. ## Ranges worth trying | Range | What you get | | --- | --- | | 1 to 3 | Your top spots, where you already take most of the clicks | | 4 to 10 | The rest of page one, usually the fastest wins | | 11 to 20 | Page two, normally the best pages to improve next | | 20 to 50 | Pages with impressions but almost no clicks yet | The 11 to 20 band is the one most people start with. Those pages already rank, already have impressions, and often need a title rewrite or an internal link rather than new content. ## Doing the same over the API The REST API has no position filter, because the workaround above happens in the dashboard rather than on the server. To reproduce it, fetch the pages, keep the rows inside your band, then query again with a page filter built from them. ``` curl -G "https://api.basecampseo.com/v1/properties/example.com/pages" \ -H "Authorization: Bearer bcs_live_YOUR_KEY" \ --data-urlencode 'date_range=last_28d' \ --data-urlencode 'limit=1000' ``` Each row carries a `position` field, so filtering to 11 to 20 is a one line filter in whatever language you are using.