Regional SEO Audit of a Bitrix Catalog: How One Database Query Showed the Catalog Was Cut in Half

This is an adapted English version. Original (Russian): automata.sale/blog/seo-geo/regionalnyy-seo-audit-kataloga-bitrix/

Regional SEO Audit of a Bitrix Catalog: How One Database Query Showed the Catalog Was Cut in Half

Structured Answer: Regional SEO in 1C-Bitrix (in Aspro solutions — via a product-to-regions assignment property) breaks silently: from the storefront the error is invisible, while the regional subdomain loses assortment. On a real project — a store with a network of 25 regional subdomains — a single analytical database query showed: of 158 active cards, only 70 are complete, 38 are missing exactly one specific region, and another 50 are tied to a single region and populated by feeds. The fix is surgical — one operation for the “holey” group, no bulk edits. The moral: regionalization is not a set-and-forget setting, it is data that needs periodic reconciliation.

Regionalization is one of the most expensive mechanics in B2B e-commerce on Bitrix: a network of subdomains by city, each with its own products, prices and search visibility. And one of the most fragile: the product-to-region assignment lives in an infoblock property, and when a content manager enters a product past it, a feed overwrites the data, or a region was added later than the rest — the card simply disappears from the subdomain. No errors in the admin, no alerts from monitoring.

What regionalization looks like and why it breaks silently

In Aspro solutions, catalog cards are linked to regions through an infoblock property (a list type or a link to a regions infoblock). A subdomain’s storefront shows cards that include its region in that property. The logic is simple — and that is exactly why holes in it stay invisible:

  • the card is active, it has a price, it shows in the main domain’s search;
  • on the regional subdomain it simply does not exist;
  • nobody made a mistake — the region just was not set, was not fully set, or a feed overwrote the assignment.

The client sees the symptom second-hand: “why don’t we have these items in this city?” — or doesn’t see it at all, because nobody knows what should be there.

The case: 158 cards and three states

A real project: a construction materials store, 25 regions, subdomains by city, part of the catalog populated by supplier feeds. The trigger — a client question about one of the regions. Instead of manually counting the storefront, one database query: for each active card, count how many regions it is assigned to, and group.

The result:

GroupCardsRegions eachWhat it means
Complete70all 25The healthy part of the catalog
”Holey” branch3824All missing exactly one region
Regional branch50only 1Populated by feeds, region is the same one

Total: 158 active cards — and the catalog is effectively cut in half by one region: 38 cards of the “main” branch lack precisely it, while 50 cards of the “regional” branch exist only in it. The content manager’s complaint that “half the cards have no text” is those same 50 feed-driven entries: the feed brings the product and the price, but no descriptions.

Tellingly, the hole in all 38 cards is identical: it is the trace of a single past operation — the region was added later, and the catalog branch was copied without it. One cause, 38 consequences, half the assortment missing from the subdomain.

The query itself

The audit’s idea is to count not products but the number of regions per card. Conceptually for Bitrix it looks like this:

SELECT
  cnt.regions,
  COUNT(*) AS cards
FROM (
  SELECT be.ID, COUNT(bep.VALUE) AS regions
  FROM b_iblock_element be
  JOIN b_iblock_element_property bep
    ON bep.IBLOCK_ELEMENT_ID = be.ID
   AND bep.IBLOCK_PROPERTY_ID = :REGION_PROPERTY_ID
  WHERE be.ACTIVE = 'Y'
    AND be.IBLOCK_ID = :CATALOG_IBLOCK_ID
  GROUP BY be.ID
) cnt
GROUP BY cnt.regions
ORDER BY cnt.regions;

The output is the table from the case above: how many cards have 25 regions, how many have 24, how many have 1. Then a follow-up query on a specific group — and you see which exact region is missing (by comparing against the regions reference) and which cards are affected. The whole audit takes minutes; a manual storefront check would yield nothing — the “wrong” cards are simply not visible from the subdomain.

An important caveat about production databases: the query only reads. Any assignment changes are a separate step, with a backup and after reconciling the list.

Fix it surgically, not in bulk

The solution to this case has a nuance that saved us from a big mistake. The intuitive “let’s set all regions on all 88 non-complete cards” would have been harmful:

  • The 38 “holey” ones are fixed by one operation: add the missing region. Exactly one INSERT over a list of IDs, the list coming from the follow-up query.
  • The 50 feed-driven ones must not be touched: on the next feed load the manual assignment gets overwritten and the work vanishes. Their fate is decided at the feed level or as a task for the data supplier.

That is, half of the “problematic” cards are not fixed by hand at all — and without the audit, that is not obvious.

What this gives SEO

The direct consequences of an assignment hole:

  • the regional subdomain shows half the assortment — thinner visibility, fewer pages in the index, lower conversion of regional traffic;
  • the catalog is asymmetric: products identical in meaning behave differently across regions — algorithms notice;
  • the regional content plan is built on an incomplete picture: “half the cards have no text” is not forgetfulness but a separate catalog branch with its own data source.

After the surgical fix, the subdomain’s assortment evens out, and further control is the same query quarterly and after every major feed load.

Conclusion

Regionalization in Bitrix is data, not a setting. Data drifts: feeds, new catalog branches, the human factor. A one-query audit is cheaper than a month of under-collected regional traffic — and it takes minutes, if you know where to look.

We include such reconciliations in regular maintenance of projects with regional networks: assignment audits, feed-branch control, subdomain assortment monitoring. If you run a network of regional sites on Bitrix and are not sure every product reaches every city — write to us, we will run the audit on your catalog.

📞 +7 (906) 311-77-69 · ✉ hello@automata.sale · 💬 Telegram: @automatasale