Case study · my own store
Ten years in search, a four-year plateau, half of Google gone. My store, my numbers
This is my flower delivery store in Krasnodar, Russia. Ten years in search, about four hundred orders a month across channels, 991 reviews on the site. Here I show what usually gets hidden: what an agency left behind, what a Google update drop really looks like, and what I'm doing to win it back.
- 10 yrs
- the store has lived in search
- ≈400
- orders a month across all channels
- 4.8
- rating on 2GIS maps, 99 votes
- 991
- reviews on the store site
Here I pay for my own mistakes
Krasnodarflora is not a client project. It's a business where I answer for everything: flower purchasing, florists, couriers, the site and its marketing. Every SEO mistake here costs me real money, not a line in someone's report.
For years the site was handled by an external agency. In June 2026 I took SEO in-house and started with a full audit: 12 reports, 65+ findings, from junk pages in the index to incomplete structured data.

What the audit showed
Everything below can be verified in the site code and webmaster panels. These are the highlights.
- 1
Organic traffic flat for four years
From July 2022 to June 2025 search traffic hovered around five thousand visits a month, seasonal March peaks aside. Years of paid SEO didn't move the line.
- 2
May 2026: the Google core update
After the update, Google traffic nearly halved year over year: from 4,079 visits in June 2025 to 2,001 in June 2026. Updates don't forgive a weak foundation.
- 3
Hundreds of junk pages in the index
Empty sections, duplicates and auto-generated filter pages were eating crawl budget. I removed 300+ of them with proper 301 redirects.
- 4
Template-generated titles
Titles were assembled by a generator, duplicated each other and got truncated in results. Key pages are now rewritten by hand for real queries.
- 5
Analytics was lying
Up to 97 percent of "direct visits" turned out to be bots without JavaScript. Until that was filtered out, any conclusion drawn from analytics was garbage.
- 6
Ratings without a backbone
Product markup was incomplete, and I rejected the idea of painting fake scores outright. Storefront ratings are now computed from confirmed orders.
What got done in the first weeks
The order is simple: foundation first, then content, then growth.
Technical foundation
- 300+ junk pages removed with 301 redirects
- Canonicals for filters and product duplicates
- A curated sitemap instead of auto-generation
- Bot filtering in analytics and scraper protection
Structure and content
- A delivery hub section with internal linking
- SEO copy and FAQ for 62 catalog sections
- 334 product descriptions rewritten without AI clichés
- Tag chips to catch long-tail queries
Commercial pages
- Product card and catalog listing redesign
- Honest ratings and order counters on the storefront
- Per-stem prices with quantity discounts
- Speed: script cleanup, self-hosted fonts
Local search
- 2GIS and Yandex Business: profiles, photos, review replies
- A 4.8 rating across 99 votes on 2GIS
- A bouquet photo before delivery as a public promise
Where the project stands now
Across all channels the flow holds at around four hundred orders a month, and even the site alone never fell below two hundred through the Google drop. 44 percent of orders come from returning customers, a two-year average matched by customer phone number.
The technical debt is closed, content rewritten, analytics cleaned. Now comes the slowest part: winning positions back after the update. I'll publish checkpoint snapshots here as they come.
A flat plateau under the agency, seasonal March peaks, and the drop after the May 2026 Google update. I publish this chart because this is the reality I work with.
Data: Yandex.Metrica, counter 42046359 · July 2022 · June 2026
Show data as a table
| Search visits | |
|---|---|
| 07.22 | 5 010 |
| 08.22 | 5 474 |
| 09.22 | 5 051 |
| 10.22 | 5 695 |
| 11.22 | 6 301 |
| 12.22 | 5 697 |
| 01.23 | 5 221 |
| 02.23 | 7 426 |
| 03.23 | 11 457 |
| 04.23 | 4 653 |
| 05.23 | 5 130 |
| 06.23 | 4 404 |
| 07.23 | 4 402 |
| 08.23 | 4 582 |
| 09.23 | 4 884 |
| 10.23 | 4 477 |
| 11.23 | 4 863 |
| 12.23 | 4 346 |
| 01.24 | 3 938 |
| 02.24 | 6 703 |
| 03.24 | 12 341 |
| 04.24 | 4 584 |
| 05.24 | 5 333 |
| 06.24 | 4 451 |
| 07.24 | 4 440 |
| 08.24 | 5 042 |
| 09.24 | 5 010 |
| 10.24 | 5 204 |
| 11.24 | 5 411 |
| 12.24 | 4 827 |
| 01.25 | 4 830 |
| 02.25 | 7 166 |
| 03.25 | 11 306 |
| 04.25 | 4 796 |
| 05.25 | 6 674 |
| 06.25 | 6 127 |
| 07.25 | 6 035 |
| 08.25 | 6 119 |
| 09.25 | 4 695 |
| 10.25 | 4 468 |
| 11.25 | 4 526 |
| 12.25 | 4 505 |
| 01.26 | 4 181 |
| 02.26 | 5 666 |
| 03.26 | 8 682 |
| 04.26 | 3 706 |
| 05.26 | 3 752 |
| 06.26 | 2 868 |
Yandex grew from 566 visits in July 2024 to 2,575 at the March 2026 peak. Google lost half after the update. Betting on one engine is a risk, and diversification is how I remove it.
Data: Yandex.Metrica, counter 42046359 · July 2024 · June 2026
Show data as a table
| Yandex | ||
|---|---|---|
| 07.24 | 566 | 3 858 |
| 08.24 | 629 | 4 397 |
| 09.24 | 649 | 4 337 |
| 10.24 | 686 | 4 507 |
| 11.24 | 788 | 4 607 |
| 12.24 | 1 033 | 3 767 |
| 01.25 | 1 191 | 3 614 |
| 02.25 | 1 445 | 5 688 |
| 03.25 | 2 421 | 8 860 |
| 04.25 | 1 169 | 3 606 |
| 05.25 | 2 308 | 4 342 |
| 06.25 | 2 034 | 4 079 |
| 07.25 | 2 246 | 3 762 |
| 08.25 | 1 915 | 4 174 |
| 09.25 | 1 344 | 3 313 |
| 10.25 | 1 214 | 3 223 |
| 11.25 | 1 238 | 3 274 |
| 12.25 | 1 363 | 3 130 |
| 01.26 | 1 229 | 2 934 |
| 02.26 | 1 648 | 3 995 |
| 03.26 | 2 575 | 6 076 |
| 04.26 | 1 114 | 2 574 |
| 05.26 | 822 | 2 907 |
| 06.26 | 856 | 2 001 |

Honest status
What I'm not claiming yet: that traffic has grown. Positions start moving in month three after technical work, and the first checkpoint for this project lands in September 2026. Its numbers will appear here, whatever they are.
Questions, answered
Why publish a case study with falling traffic?
Because it's true, and because I sell a method, not fairy tales. The May 2026 Google update hit a huge number of stores. The difference is that I show, on my own numbers, what to do about it.
How is this case useful to me as a client?
You see how I work when my own money is on the line: diagnosis, priorities, technical work, content, local search. Client projects get exactly the same method.
What do honest ratings mean?
Scores on the store site are computed from confirmed orders. Faking reviews would have been easy, but it's a time bomb, and I offer clients the same principle.
Can these numbers be checked?
The store is public: krasnodarflora.ru. Reviews and map ratings on 2GIS and Yandex Maps are public too. The charts are built from a Yandex.Metrica export, the counter ID is right under them.
More case studies
Monthly SEO
From $500Ongoing SEO support for businesses that need consistent growth.
Case study · client, in progress
1,600 searches a month pass this site by. I'm taking a signage maker into search before the season
Read the case
Case study · a system for the business
Four channels, four hundred orders a month, 44 percent repeat customers. One system
Read the case
Free, 2-3 days
I do the same breakdown for clients
I'll start with a free review: where you stand, what's holding you back, and what to fix first. No top-1-by-Friday promises.
- A prioritized list of problems: what to fix first, what can wait
- Demand in your niche: how many people search for it and where you rank now
- What your team can handle in-house and what is worth handing to me
I reply in writing within a couple of hours. No calls needed and no sales script.
Numbers you can check
- ≈400
- orders a month in the flower shop I run
- 44%
- of those orders come from returning customers
- 10 years
- that site in search, full history on the table
The same case shows a 51% Google drop in May 2026. Most people hide that. I show it and write what I am doing about it.