Link building
I assign each link a status of “keep”, “to be clarified” or “to disavow”, basing the selection on an assessment of the risk of unnaturalness. For ambiguous cases I gather context, and when outreach makes sense, I handle the contact and record the replies. On that basis I build a versioned disavow file (URL/domain), implement it and provide confirmation of the update.
I begin the work by gathering the available link sources into a single working set. I then assess the risk of unnaturalness and group the domains into clusters, refining the operational decisions where the data needs clarifying.
I combine data from different exports into a consistent structure, remove duplicates and carry out basic tidying up.
I analyse the quality and intent of the links, identify patterns of unnaturalness and group the domains into clusters.
I decide: keep, to be clarified or to disavow; I choose the level of disavowal, URL or domain, and consider contact or disavow.
Starting work with Disavow consists of establishing the goal and gathering access to the link data and the domain configuration. At this stage I clarify whether the work is preventive, arises from a suspicion of unnatural links, or is a response to a manual action concerning links. In parallel, we establish which version of the domain is covered by the analysis and the later submission of the file. This brings order to the next steps and limits the risk of working on an incomplete or incorrect scope of data.
In practice, this stage is a precondition for gathering a complete working set of links and for the subsequent risk assessment. Without a consistent goal and confirmed input data, it is difficult to move on to merging the link sources and making “keep / to be clarified / to disavow” decisions. If a manual action is involved, from the start I also prepare an approach focused on documenting the analysis and the actions taken. Disavow is a high-risk tool, which is why from the outset I put the emphasis on caution and on decisions that can be verified.
To analyse the links and prepare the work for Disavow, I need specific access and data. It is essential to make domain verification possible, so that the work concerns the right version of the domain and the file can later be submitted in the right place. An export of inbound links is also necessary, as it is the basis for merging the sources into a single working set. In addition, information about earlier link building activity and about any earlier disavow files is important.
Based on this data I create a working table of links for assessment and tidy it up before the risk analysis. The working set includes: the linking URL, the domain, the target page, the link type (if available), the date of detection (if available) and notes. This structure makes it easier to identify patterns and domain clusters later, and supports decision-making about the level of disavowal (URL or domain). It also has to be taken into account that the service is based on link data that may be incomplete, which affects how it is interpreted and how cautious the decisions are.
Gathering and tidying up the link profile consists of merging the available sources of inbound links into a single working set for further assessment. In practice I combine data from different exports into a consistent structure, so that it is possible to work on one view instead of on scattered files. I then remove duplicates and carry out basic tidying up, to reduce the noise and make the analysis easier. The result of this stage is organised input material, ready for a quality and risk assessment.
In the working set I keep the identifiers needed for the assessment and later decisions, including the linking URL, the domain and the target page, as well as the available metadata (e.g. the link type or the date of detection, if they are in the sources). Where information is missing, I flag this in the notes, so as not to over-interpret the data later. A profile prepared in this way makes it easier to detect recurring patterns and to group domains into clusters. It also brings order to the work when there are many links or when the profile contains clear concentrations of suspicious sources.
Assessing the risk of unnatural links consists of analysing the quality and intent of the links in terms of the risk of unnaturalness and the potential impact on visibility. At this stage I identify patterns that may indicate spam activity or systemically low-quality sources, and I also group the domains into clusters that make decision-making easier. The analysis is based on the available set of links and its completeness, which is why I word the conclusions cautiously, especially in ambiguous cases. The result is an organised picture of which elements of the profile need clarifying and which qualify for disavowal.
Based on the assessment I make operational decisions for the individual entries: keep, to be clarified or to disavow, taking into account the risk of disavowing valuable links. In parallel, I establish the level of disavowal: a single URL, when the problem is isolated, or the whole domain, when the source is systemically low-quality or spammy. If it makes operational sense in a given case, I also consider whether to try to have the links removed through contact, or to move straight to disavow, depending on the scale and the availability of contact details. These decisions are the basis for the next stages of preparing the file and for further recommendations.
Decisions on disavowing links consist of assigning each entry in the working set a status: “keep”, “to be clarified” or “to disavow”. In practice this means a selection based on the assessment of the risk of unnaturalness and on caution, so as not to disavow valuable links. I mark ambiguous items as “to be clarified”, which makes it possible to separate the cases that need additional context from those that qualify for disavow. Separating the decisions in this way brings order to the further preparation of the file and makes it easier to justify the key choices.
The decisions also cover the choice of the level of disavowal: a single URL or the whole domain, depending on whether the problem is isolated or systemic. In parallel, I establish whether to attempt to have the links removed through contact (outreach), or to move straight to disavow, depending on the scale and the availability of contact details. If outreach makes operational sense, I prepare a list of domains to contact, send the removal requests and record the statuses and replies as documentation of the actions taken. When there is a manual action concerning links in the background, I put the emphasis on the completeness of the documentation (analysis, removal attempts, decisions and disavow) as the basis for the material for a reconsideration request.
Preparing and implementing the disavow file consists of building the file in the correct format, in line with the approved decisions and the chosen level of disavowal (URL/domain). Only the items accepted for disavowal go into the file, and where necessary I add working comments that support an audit of the decisions. The file is versioned (e.g. date/version), so that it is clear which version was prepared and when. The scope of work at this stage depends, among other things, on the scale of the link profile, the number of suspicious domain clusters, multilingualism, the history of earlier disavow files and whether outreach was carried out.
Implementation consists of submitting the file in the right place for the right version of the domain and confirming the update. Depending on the situation, this is the first submission of the file or the replacement of the previous file with a new version. After implementation I provide confirmation that the file has been updated for the indicated domain, together with a record of the file version used in the implementation. Such a record makes it easier to track changes later and to refer back to specific decisions when new risky domains appear or further action is needed.
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.