SEO
I gather information about the offer, the services, the area of operation and the priority cities in order to plan SEO for “service + city” keywords and tie them to the site structure. I define the scope of work: city pages, content, technical aspects, links and local signals, plus the required access to the CMS/server and to traffic and indexing data; without access I prepare recommendations only.
I start by designing the structure of the city pages and choosing the local page model to suit the offer, the number of cities and the risk of duplication. I then draw up a coverage plan for the site and implement the changes in stages, taking into account the limitations of the CMS and the pace of content approval.
I establish the URL hierarchy, the category layout and the relationships between service pages and city pages, in order to serve local intent without unnecessary duplicates.
I prepare a “Keyword and page map (keyword-to-URL)” with city priorities and “Briefs and content guidelines for city pages”, taking into account demand, competitiveness, service capacity and implementation constraints.
I adapt titles, headings, local content, internal linking and contact details to city queries, and carry out the work iteratively in line with the priorities and the risk of duplication.
Getting started and defining the scope of cities means gathering information about the offer, the area of operation and the priority cities in order to plan the SEO work for local queries. At this stage I establish which areas will be developed in a measurable way: city pages, content, technical elements, links and the local signals that support organic and local results. In parallel, we specify which types of query are to be addressed (e.g. “service + city”) and how they are to translate into the site structure. As a result, it is clear from the start which cities and services are in scope and which activities will take priority.
A sensible start to the cooperation requires the working environment and access to be in place.
What is agreed at this stage is also the reference point for further analyses: the visibility audit, the assessment of the site and the later design of the city page architecture. The scope and the quote depend, among other things, on the number of cities and services, the state of the site, the number of pages needed, the implementation capabilities and the pace of content approval.
Gathering the input data means putting together the information needed to plan pages and content for cities and to assess the implementation constraints. In practice, I obtain the list of services or products, the locations and the contact details, which are to be consistent on the site and across the web. I also collect information about travel and the areas covered, so that the later local content matches the real service area. We also establish which activities have already been carried out and what may block changes (e.g. no possibility of making changes in the CMS).
This stage puts the priorities and risks in order before the audit and the design of the target local page model. Verifying the constraints at the outset matters, because the risk of duplication grows when city pages are created in bulk, especially when resources for unique content are lacking. I also take into account potential delays in the approval of materials, because they affect the pace of implementation. The collected data is the basis for the next steps: the analysis of “city + service” keywords, the assessment of the competition in the local results, and the preparation of further recommendations and guidelines.
The audit of the current visibility and the site consists of assessing the starting point: how the website responds to local intent and whether there are technical and content barriers that hold back results for city queries. I check whether the site already has pages for cities and/or services and how far their layout supports traffic from “service + city” keywords. In parallel, I verify whether there are problems that may limit indexing or the quality of the local pages. The result of this stage is a clear picture of what needs to be put in order before the target city page architecture is designed.
As part of the audit I analyse the competition in the local results, to see which types of page win for city queries and which elements recur in their structure, content and link profile. I supplement this with a technical audit focused on indexing, in which I identify, among other things, duplication, canonicalisation, redirects, errors, speed, structured data and sitemaps. In addition, I assess the content of the city pages in terms of unique value and the risk of “copies with the city name swapped”. The conclusions from the audit are the basis for deciding on the target local page model and for planning the order of work.
Query analysis for city + service consists of collecting and grouping the keywords for services in the context of specific cities, so as to match pages to real search intent. I separate the queries by intent, such as offer, pricing, directions or contact, because each of them may require a different way of answering on the page. I also take into account variants of city and district names, so that the content plan does not rely solely on a single spelling. The results of this analysis show which “city + service” combinations are to be served with dedicated content and how broad the scope of local pages should be.
Based on the collected keywords, I prepare material that feeds into the further planning of the site structure and the decisions on whether city sections on the service page, separate “service in a city” pages or a hybrid approach will work better. This analysis ties in with the prioritisation of cities, because the order of implementation should take into account demand potential, competitiveness, real service capacity and the fit of the offer. The keywords and intents are then mapped to specific pages in the “Keyword and page map (keyword-to-URL)” document, together with implementation priorities. As a result, on-page and technical implementation can be carried out on the basis of an agreed page logic rather than individual, unconnected optimisations.
Designing the city page architecture means designing the way in which the site is to cover the combinations of cities and services within a consistent structure. In practice, I establish the target URL hierarchy, the category layout and the relationships between service pages and city pages, so that local intent is served without generating unnecessary duplicates. At this stage I decide on the target local page model: city sections on the service page, separate “service in a city” pages or a hybrid approach. The choice depends on the offer, the number of cities and the risk of content duplication when scaling.
As part of the design I also set the prioritisation of cities, so that the order of implementation takes into account demand potential, competitiveness, real service capacity and the fit of the offer. The result is an organised coverage plan for the site, which links the page structure with keywords and intents in the form of the “Keyword and page map (keyword-to-URL)” document, together with implementation priorities. In parallel, I prepare “Briefs and content guidelines for city pages”, which describe the structure of the sections, local topics, trust elements and the requirements for uniqueness and for consistent contact details. The architecture design also takes into account implementation constraints (e.g. the capabilities of the CMS) and the risk of delays in content approval, because they affect the order and pace of the work.
On-page implementation for city pages consists of adapting page elements and content to city queries in a way that matches user intent. I update titles, headings and local content, adding the city context without artificial keyword stuffing. In the content I include, among other things, a description of the service area, directions, lead times and FAQ-type sections, where they are justified for a given page and intent. The aim of these changes is to match the pages better to “service + city” queries and to make the offer clearer in a local context.
As part of the on-page work I also tidy up the internal linking for cities, building logical connections between services and locations (e.g. related page modules, breadcrumbs, “cities served” sections) in order to strengthen the topical connections. I standardise the contact details and local signals on the page, ensuring that the address and phone information is consistent and that the messages about the area covered are clear. Where necessary, I add elements that support credibility (e.g. photos, completed projects, reviews) and tidy up the structured data, where this is justified in the context of a local page. The scope of implementation may be limited by the risk of duplication when city pages are created in bulk, by the limitations of the CMS and by the availability of resources for preparing unique content.
Feedback from clients and industry people I have worked with on SEO projects.

I had the chance to work with Kuba at Kulturalnie o SEO, an event I organise. Kuba did a great job as a speaker and received high marks from the audience. He showed professionalism and broad knowledge. In other projects at Vestigio, Kuba shows enormous commitment, a willingness to explore and implement new ideas, and excellent organisation of his work.

You talk to me, not a salesperson
I work as a freelancer: the same person reads your message, prepares the quote and then runs the project. No sales team in between.