Custom software development · legacy modernization · US market
CHI Software: 144 to 261 Top 3 keywords in six months
Lead: The client worked with us in 2020–2022, left, and came back four years later. In the first half-year of the new engagement we didn’t only move positions — we made measurement work, so it’s now visible which enquiries arrive from search and from language-model answers.
- Top 3 keywords: 144 → 261 in six months
- Traffic doubled on high-intent comparison queries
- Around 20% of enquiries attributed to organic and LLM
| March 2026 | August 2026 | ||
|---|---|---|---|
| Keywords in Top 3 | 144 | ⟶ | 261 |
| Keywords in Top 10 | 382 | ⟶ | 401 |
| Monthly traffic | 2,386 | ⟶ | 5,073 |
Small print under the bar:
Ahrefs data, March to August 2026. Ahrefs estimates traffic from its own index, so traffic figures are an estimate rather than a counter reading; positions are measured directly. The project is ongoing — this is an interim snapshot.
| Client | CHI Software |
|---|---|
| Industry | custom software development |
| Priority directions | Software Modernization, EdTech |
| Market | United States |
| Services | SEO, content, persona-driven briefs, outreach, lead analysis |
| Window | March 2026 – ongoing |
| Volume | 116 tasks, 514 hours over 7 months |
| Pace | rising: 41.9 hours in March to 123.2 in August |
| History | first engagement 2020–2022; the client returned in 2026 |
A client who came back
We worked with CHI Software from 2020 to 2022. The engagement broke off in February 2022, when the full-scale invasion of Ukraine began. Not over the work, and not over results.
Four years later we were recommended to the company’s new CMO. We put a proposal together in February 2026 and started again in March.
Four years is long enough to forget an agency and try the alternatives. Coming back on a recommendation rather than through a pitch says more than an unbroken contract ever could.
What was needed
The company had named two priority directions — Software Modernization and EdTech — and needed inbound inquiries from them specifically.
The stated goal: 15 to 20 qualified inquiries a month, over 8 to 12 months.
Turn two priority directions into a source of inquiries rather than just sections of a website.
The plan, agreed in February 2026:
- 15 service pages in the Legacy / Modernization cluster;
- 10 service pages in EdTech;
- interlink existing content with the new pages;
- watch which pages perform and push those;
- blog content covering every funnel stage for each sub-direction;
- links pointed at both new and existing pages.
Directions were chosen through our WEDGE framework. Worth saying up front, because in Ahrefs the result looks strange until you know the logic behind the choice.
W — Where the client can win
CHI Software’s competence map was first filled in back in 2020, during the earlier engagement. In 2026 we returned to it and reworked it: what had changed in four years, what the company can do now, what had moved down the list.
Two priority directions came out: Software Modernization and EdTech.
We don’t assess anyone’s engineering. How strong the company is at modernizing legacy systems is the company’s own judgement. What we bring is different: market movement, who already holds the results pages, how much traffic is really there, and whether the current site can reach it.
E — Evaluate whether we can get in
The second screen produced the decision that explains every figure that follows.
Competing head-on for general queries in the Legacy space is hopeless — large players, decades of authority. But the high-intent half of the results page is freer: comparisons, alternatives, “best X companies” roundups.
So the plan agreed in February 2026 looks like this:
- 15 service pages in the Legacy / Modernization cluster;
- 10 service pages in EdTech;
- interlink existing content with the new pages;
- watch which pages perform and push those.
What that means for the metrics. Traffic grew over six months from 2,386 to 5,073, and almost all of it sits in the bucket Ahrefs labels “other brands” — queries carrying other companies’ names.
That isn’t a side effect. It’s the target. Someone googling “best legacy modernization companies” has already decided they need this and is choosing a supplier. “What is legacy modernization” is a student, or the start of research.
Which is why the headline figure here is Top 3: 144 → 261, not absolute traffic.
⭐ D — Decode. Personas wired into a tool
The usual story: ICPs get documented, the document sits in a folder, and briefs get written however they get written.
We did it differently. We analysed the client’s existing personas, reworked them, and built a custom GPT that every brief passes through to be adjusted against those personas.
The personas stopped being a document and became part of the process. You can see it monthly in the tracker: “briefs for N service pages, adjusted to the persona.”
This is how we work on every project since ChatGPT appeared: each one gets its own agent built around its personas. CHI Software is simply the most heavily used — over sixty working sessions with it.
G — Guide them to a decision
Content covers every funnel stage for each sub-direction — that’s written into the strategy.
Each text goes through two separate checks: an SEO review and, separately, a marketing review against the personas. Across seven months that covered 69 pages: three in March, then nine to thirteen a month.
E — Expand the coverage
An intersection the competitors haven’t reached. Alongside Legacy we bet on FDE — Forward Deployed Engineers as a service — and on visibility inside language-model answers.
There isn’t much traffic there; the queries are new and low-volume. Which is exactly why it was possible to take the top positions immediately rather than fight for them for years.
Inquiries from LLMs for FDE as a service have started arriving.
A separate track: the brief for the client’s own “AI Transformation Case Study: How CHI Software Used FDE to Automate Internal Operations.”
The most valuable thing we produced in seven months wasn’t positions.
In most B2B companies there’s a gap between “marketing produced an enquiry” and “sales received a lead” that nobody can see. We set out to close it.
First we fixed the measurement itself
The first finding: event retention in analytics was set to two months. Any question starting “how did this look six months ago” had no answer at all.
We changed it to fourteen months. Then we went through our other projects and fixed the same setting in seven more.
Then we reconciled analytics with the sales system
The goal was simple: establish which enquiries arrive from search and from language-model answers.
The result: around 20% of enquiries attributed to organic and LLM.
That isn’t “marketing produced 20% of leads” — it’s the share we could trace reliably. The real figure is higher, and we say so plainly.
What this study does not prove
Honesty is required here, so the limitations appear exactly as they were recorded in the task itself:
1. Data depth. At the time of the study, event retention still covered only two months, so the range was short. 2. Time zones. The data sources ran in different zones — a three-hour offset. 3. Time precision. One source records minutes; the other only hours. 4. One shared field. Time turned out to be the only parameter the two datasets could be matched on at all.
And our own analyst’s closing note, verbatim:
“The total number of completed forms I see in analytics is still considerably higher than in the comparable periods. So there may be further factors affecting the accuracy of this study.”
We could have left that out. But a study with no stated limits isn’t a study.
Roles were defined before work started: the senior SEO specialist sets the project’s direction and verifies implementation; the marketer checks copy against the personas; the outreach specialist finds placements; the project manager holds communication between teams.
Monthly cycle: project review → content plan topics → keyword research → persona-adjusted briefs → SEO and marketing review of the copy → internal linking recommendations → outreach → internal task check → report → next month’s plan.
Billing terms worth saying out loud
- the plan runs at 80–90% completion; delays are usually on the client’s development or copywriting side;
- if a task wasn’t started, it isn’t in the monthly invoice;
- if it was started, only the hours actually spent are billed.
That isn’t positioning. It’s just how we invoice.
The data had to be reconciled by hand
The main difficulty of the early months wasn’t search results — it was measurement. Different time zones, different time precision, too short a retention window. Reconciliation turned out to be possible on exactly one shared field.
Metrics that look strange without explanation
Non-branded traffic fell from 670 to 253 over six months, and ranking keywords from 750 to 421. Part of that follows Ahrefs moving to a new traffic estimation model, so both figures deserve caution.
What matters is that Top 3 grew from 144 to 261 over the same period — and positions are the thing Ahrefs measures rather than estimates.
The project isn’t finished
The goal of 15–20 qualified inquiries a month is set against 8 to 12 months. We’re in month seven. Drawing conclusions about hitting it would be premature, so we aren’t drawing any.
Positions, Ahrefs:
| March 2026 | August 2026 | |
|---|---|---|
| Top 3 | 144 | 261 |
| Positions 4–10 | 238 | 140 |
| Top 10 total | 382 | 401 |
Estimated traffic, Ahrefs: 2,386 → 5,073 a month, mostly on comparison and high-intent queries in the Legacy cluster.
Delivered in 7 months: 116 tasks, 514 hours, 69 content pages through double review, service pages across the Legacy and EdTech clusters.
Inquiries: around 20% arriving from organic and LLM sources. Full figures are the client’s commercial information.
The direction came from the framework, not from instinct. The competence map produced Legacy and EdTech; the second screen showed the way in was the high-intent half of the results page: “best legacy modernization companies” instead of “what is legacy modernization.” Less traffic, more inquiries.
Personas wired into a tool. A custom GPT that every brief passes through. The personas don’t sit in a document — they work.
A new space with no competition. FDE as a service: little traffic, but the top positions were available immediately, and LLM inquiries are already arriving.
First make sure you can see your lead sources at all. Before optimizing channels, confirm that analytics and the sales system are describing the same thing. Otherwise you’re optimizing a guess.
Check your analytics retention setting. The default can be two months. We found that limit in eight projects at once.
In B2B, an intent-heavy query beats a high-volume one. Comparison queries and “best X” roundups are people already choosing a supplier.
New topics are a window that closes fast. FDE as a service: while there’s no competition, top positions are simply available. A year from now that’s a different conversation.
Personas only work when they’re wired into the process. An ICP document doesn’t change briefs. A tool the brief passes through does.
The project is ongoing — month seven of a planned 8 to 12.
In progress: completing the Legacy and EdTech service clusters, content across every funnel stage, link pressure on the new pages, and building out the FDE direction along with LLM visibility. The 15–20 qualified inquiries a month remains the target we report against.
Sound familiar?
B2B development, a US market, a need for inquiries from specific directions. And possibly analytics you don’t entirely trust.
Питання
Why show an unfinished project?
Because it shows how we work, not just what we finish with. The snapshot is month seven of a planned 8 to 12, and we say so directly.
Why did traffic grow while non-branded keywords fell?
We moved deliberately into comparison and high-intent queries, where the person is already choosing a supplier. Ahrefs also switched to a new traffic estimation model in 2026, so some figures deserve caution. Top 3 positions grew from 144 to 261 over the same period.
Do you really not bill for tasks you didn’t start?
Correct. A task that wasn’t started doesn’t enter the monthly invoice. A task that was started is billed at hours actually spent.
What is a lead analysis and why run one?
Reconciling analytics with the sales system to establish where enquiries actually come from. Here it let us confidently attribute around 20% of enquiries to search and LLM — and revealed that some data wasn’t being retained long enough to answer the question at all.
Do you work on visibility inside ChatGPT and other LLMs?
Yes — on this project it’s a dedicated track alongside the FDE direction, and the first inquiries from that source have arrived.