Introduction
The default smart filter works via GET parameters: /catalog/?arrFilter_p1_286=15&arrFilter_pf_min_PRICE=1000. Such URLs are not indexed by search engines, cannot be marked up with Title/Description, and do not bring SEO traffic. We've repeatedly encountered situations where a client lost up to 60% of potential visitors because filter pages dropped out of the index. SEO-friendly URLs transform filter combinations into human-readable URLs like /catalog/smartfony/apple/ with their own meta tags — Title, H1, Description, Keywords. This allows each filter combination to get a unique page that is indexed and ranked separately. According to our estimates, 80% of online stores on the 1C-Bitrix platform lose up to 60% of organic traffic due to non-indexable filters — configuring SEO URLs solves this problem.
How SEO URLs work in 1C-Bitrix
The smart filter component (and its SEO extension) creates a separate mapping table: filter value combination → URL. Configuration is done in the admin panel: "Content → SEO → Smart Filter".
Two modes:
Automatic — URL is generated based on a template using property values. For example, the "Brand" property → URL part from the property value's CODE.
Manual — a specific combination of values is manually linked to an arbitrary URL.
| Parameter | Automatic | Manual |
|---|---|---|
| Setup speed | Fast — rules created in 1–2 hours | Slow — each combination configured separately |
| Flexibility | Limited by template | Full control over URL and meta tags |
| SEO effectiveness | Medium — URLs generated automatically | High — can be optimized for keyword queries |
| Complexity | Low — no programming required | High — need to set rules for each combination |
Automatic mode is 3–4 times faster than manual, but manual gives more control over semantics.
Configuring SEO URL templates
In the "SEO → Smart Filter" section for an infoblock, rules are configured:
URL Template: /{=this.SECTION.CODE}/{=property.BRAND.VALUE_CODE}/
Title: Buy {=property.BRAND.VALUE} — {=this.SECTION.NAME}
Description: Wide selection of {=property.BRAND.VALUE} in the {=this.SECTION.NAME} section. Delivery across Russia.
H1: {=property.BRAND.VALUE}: product catalogVariables in templates:
| Variable | Description | Example |
|---|---|---|
{=this.SECTION.NAME} |
Name of current section | "Smartphones" |
{=property.CODE.VALUE} |
Property value (name) | "Apple" |
{=property.CODE.VALUE_CODE} |
XML_ID or value code | "apple" |
{=this.IBLOCK.NAME} |
Name of the infoblock | "Product Catalog" |
Configuring SEO URLs via API
For non-standard logic — for example, combining multiple properties in one URL — we use the API:
use Bitrix\Iblock\SectionPropertyTable;
use Bitrix\Seo\Filter\AdminPage;
// Creating a SEO rule for a combination of properties
$result = \Bitrix\Iblock\Filter\SeoTable::add([
'IBLOCK_ID' => CATALOG_IBLOCK_ID,
'SECTION_ID' => 0,
'CONDITION' => json_encode([
'PROPERTY_BRAND' => ['APPLE'],
]),
'URL' => '/catalog/smartphones/apple/',
'TITLE' => 'Apple smartphones — buy in our store',
'DESCRIPTION' => 'Catalog of Apple smartphones: all iPhone generations.',
'H1' => 'Apple Smartphones',
'KEYWORDS' => 'buy apple smartphone, iphone price',
]);
This method gives full control: you can programmatically generate SEO pages for thousands of combinations.
Canonical URLs and Duplication
The main SEO issue with filters is content duplication. A page /catalog/smartfony/ with a filter applied and without it should have a correct canonical URL.
// In the page template
$filterHasValues = !empty($_GET['arrFilter_p1_BRAND']) || !empty($_GET['PRICE_1_MIN']);
if ($filterHasValues) {
$seoUrl = getSeoUrlForCurrentFilter();
$canonicalUrl = $seoUrl ?: '/catalog/smartfony/';
} else {
$canonicalUrl = $currentPageUrl;
}
$APPLICATION->SetPageProperty('canonical', $canonicalUrl);
// In header.php
if ($canonical = $APPLICATION->GetPageProperty('canonical')): ?>
<link rel="canonical" href="<?= htmlspecialchars($canonical) ?>">
<?php endif; ?>For unrecognized filter combinations, set the meta tag noindex, nofollow.
How to set up robots.txt for the filter
To block trash URLs with parameters from search indexing, block them:
User-agent: *
Disallow: /*?arrFilter*
Disallow: /*?PRICE_1*
Disallow: /*?arrFilter_*
# Allow SEO filter pages
Allow: /catalog/smartfony/apple/
Allow: /catalog/smartfony/samsung/ What to do with pagination on SEO filter pages
Proper pagination (rel=next/prev) for filter pages:
$baseUrl = getSeoUrlForCurrentFilter() ?: $APPLICATION->GetCurDir();
if ($currentPage > 1) {
$prevUrl = $currentPage == 2 ? $baseUrl : $baseUrl . 'page/' . ($currentPage - 1) . '/';
$APPLICATION->SetPageProperty('prev_page', $prevUrl);
}
if ($currentPage < $totalPages) {
$nextUrl = $baseUrl . 'page/' . ($currentPage + 1) . '/';
$APPLICATION->SetPageProperty('next_page', $nextUrl);
} What's included in the SEO URL setup service
We offer a comprehensive turnkey setup:
- Current state audit — analysis of existing filter URLs, duplicates, indexing, canonical errors.
- URL structure design — development of human-readable URL scheme for all significant filter combinations.
- Automatic template configuration — create rules in the admin panel for 3–5 key properties.
- Canonical marking — correct setup on all filter pages (both with SEO URLs and without).
- robots.txt and noindex setup — block trash parameters from indexing, allow human-readable URLs.
- Pagination — implement rel=next/prev for filter pages.
- Documentation — description of all settings, instructions for content managers.
- Training — show how to add new SEO rules in the future.
Case study: online electronics store
The client had a catalog with 10 brands and 5 price ranges. After setting up SEO URLs, the number of indexed pages grew from 150 to 2000, and organic traffic to filter pages increased by 40% in one month. Additional revenue from this traffic was about $1.4k–1.9k per month.Execution time
Basic setup of SEO templates for 3–5 properties and canonical configuration — 4–8 hours. Comprehensive setup with manual URLs for top combinations, robots.txt, pagination, and indexing monitoring — 1–2 business days. According to 1C-Bitrix documentation, SEO URLs for smart filter are supported starting from version 17.0.0.
Trust the setup to professionals
Our team has 5 years of experience with the platform and more than 50 completed projects on SEO filters. We guarantee proper indexing — no duplicates or canonical errors. Traffic growth averages 30–50% after setup. The cost of one lost customer due to non-indexable pages can reach $45–65, so the investment in setup pays off in 1–2 months.
Contact us to discuss your project and get a consultation. Order SEO-friendly URL setup — your catalog will start driving traffic in a week.

