WCAG 2.1 Accessibility Audit for Bitrix Sites

Our company is engaged in the development, support and maintenance of Bitrix and Bitrix24 solutions of any complexity. From simple one-page sites to complex online stores, CRM systems with 1C and telephony integration. The experience of developers is confirmed by certificates from the vendor.
Showing 1 of 1All 1626 services
WCAG 2.1 Accessibility Audit for Bitrix Sites
Simple
~2-3 days
Frequently Asked Questions

Our competencies:

Development stages

Latest works

  • image_website-b2b-advance_0.webp
    B2B ADVANCE company website development
    1356
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Website development for FIXPER company
    943
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Development based on Bitrix, Bitrix24, 1C for the company Development of an Online Appointment Booking Widget for a Medical Center
    693
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Development based on 1C Enterprise for MIRSANBEL
    828
  • image_crm_dolbimby_434_0.webp
    Website development on CRM Bitrix24 for DOLBIMBY
    731
  • image_crm_technotorgcomplex_453_0.webp
    Development based on Bitrix24 for the company TECHNOTORGKOMPLEKS
    1073

One in four users faces accessibility barriers. If your Bitrix site is not WCAG compliant, you lose up to 15% of your audience and risk fines up to $50,000. Our experts conduct an accessibility audit according to WCAG 2.1 (Level AA) and provide concrete recommendations for fixes. We have been working with Bitrix for over 10 years and know the typical errors in templates and components. Trust our certified professionals with 100+ audits completed.

Why is an accessibility audit critical for Bitrix sites?

Standard Bitrix templates often contain violations: images without alt text, forms without labels, low contrast, and missing focus indicators. This not only hinders users with disabilities but also harms SEO. Search engines consider semantics and accessibility. Additionally, Russia's current GOST recommends WCAG 2.1 for government sites. For commercial sites, an audit is an investment in reach and reputation. Our audits are guaranteed to identify at least 90% of issues using a combined methodology.

What WCAG violations do we most often find on Bitrix?

Images without alt text. The standard catalog.element component does not output the alt attribute. For informational images, alt should describe the content. Fix in template.php:

// Incorrect:
<img src="<?= $product['PICTURE'] ?>">

// Correct:
<img src="<?= $product['PICTURE'] ?>" alt="<?= htmlspecialchars($product['NAME']) ?>">

Forms without labels. In subscribe.form and webform.* components, placeholders are often used instead of labels. A placeholder disappears on input — screen readers do not announce what the field is. Proper markup:

<label for="email">Email</label>
<input type="email" id="email" name="email" placeholder="[email protected]">

Insufficient contrast. Gray text #999 on white background #fff yields a contrast ratio of 2.85:1, while 4.5:1 is required. We check using Colour Contrast Checker or axe DevTools.

No keyboard focus. outline: none in reset styles breaks keyboard navigation. Replace with custom styles:

:focus-visible {
    outline: 2px solid #0066CC;
    outline-offset: 2px;
}

Modals without focus management. Popup windows must trap focus when opened and return focus to the trigger when closed.

How to check basic violations yourself?

  1. Open your site in Chrome, run Lighthouse (Audits tab). It will show main contrast and attribute issues.
  2. Install the axe DevTools extension — run analysis on several pages: homepage, catalog, product card, contact form.
  3. Try keyboard navigation: tab through all elements. Ensure focus is visible and modals do not block exit.
  4. Turn on a screen reader (NVDA on Windows, VoiceOver on macOS) and listen to key pages. Pay attention to reading of images and forms.

Automated tools detect only 30–40% of issues, while manual testing finds up to 90% — that's 3x more violations. Therefore, we combine both methods.

How do we conduct WCAG 2.1 audits?

We use a combination of automated and manual checks. Our engineers hold WCAG certification from IAAP and have over 10 years of Bitrix development experience. Automated tools (axe DevTools, WAVE, Lighthouse, Pa11y) identify 30–40% of issues. Then we perform manual testing with keyboard and screen readers (NVDA/VoiceOver). Based on the results, we create a detailed report. According to WCAG 2.1, we cover all success criteria.

A full list of WCAG 2.1 Level AA criteria (30+ checks) includes all success criteria from Perceivable, Operable, Understandable, Robust. For example: contrast 4.5:1, keyboard navigation, ARIA attributes, headings, form labels, focus management, error handling, and status messages.

What is included in the audit report?

The report contains a violation table with WCAG criterion, level (A/AA), status, and pages. Each issue is assigned a priority: critical (Level A), moderate (AA), and recommendations. For typical errors, ready-made code fixes for Bitrix components are provided. Recommendations on semantic structure and ARIA are also given. After fixes are implemented, a re-test is conducted.

WCAG Criterion Level Status Pages Recommendations
1.1.1 Non-text Content A Partial Catalog, product card Add alt text
1.3.1 Info and Relationships A Violation Forms Use label
1.4.1 Use of Color A Violation Global Add text labels
1.4.3 Contrast (Minimum) AA Violation Global Increase contrast
2.1.1 Keyboard A Partial Cart Add Enter handler
2.4.3 Focus Order A Partial All Set tabindex
2.4.7 Focus Visible AA Violation Global Restore outline
3.2.1 On Focus A OK
4.1.3 Status Messages AA Violation Cart, forms ARIA live region

What's included in the work:

  • Detailed audit report (PDF) with prioritized violations
  • Code snippets for immediate fixes
  • Re-test after fixes are applied
  • Access to our support team for 30 days post-audit
  • Training for your developers on accessibility best practices

Company metrics:

  • 10+ years of Bitrix expertise
  • 100+ accessibility audits completed
  • 5 years on the market
  • Certified WCAG professionals

Timeline

Stage Duration
Automated checks (axe, Lighthouse, WAVE) 1–2 days
Manual checks with keyboard and screen reader 2–3 days
Report compilation with priorities 1 day
Fixing critical violations (Level A) 1–2 weeks
Fixing Level AA violations 2–4 weeks
Full audit and fix cycle 2–4 weeks

Order an accessibility audit — we will check all pages and provide ready-made solutions. Get a consultation on the audit and save on fines. Contact us for a free evaluation of your project. Audit pricing starts at $1,500.

Bitrix Site Audit: Find Problems Before They Find You

Imagine: you open a project from a previous team — init.php has 3,000 lines, OnBeforeIBlockElementUpdate handlers are nested, there's a 4GB dump.sql in the site root, and the upload/ directory is larger than the database. We see such projects every week. And this is not an exception — it's the norm for Bitrix after several years of active development without quality control. An audit of a 1C-Bitrix site is the only way to objectively assess the real state of a project before investing in improvements or scaling. It reveals bottlenecks in code, database, server configuration, and security. Most importantly, it shows what to fix to make the site faster and prevent crashes during peak sales. Regular 1C-Bitrix site audit pays off in 2–3 months: hosting savings are substantial, and error fix time is cut by three times compared to a reactive approach.

Why is a Bitrix site audit necessary?

Changing contractors — you take over a project from another team and don't know what "mines" are left in the code. Event handlers in init.php, forgotten scripts, modified kernel files — all can backfire at the worst moment. We once found 47 handlers in one project, 12 of which were dead — information blocks were deleted, but the code kept calling CIBlockElement::GetList() on every hit. For several years of such load — millions of extra queries to the database.

Position drop — technical reasons almost always underlie organic traffic loss: page duplicates, broken canonical, 50,000 junk URLs in the index. An audit will show where Google is losing your traffic. In one typical project, the number of URLs with sorting parameters reached 300,000 — each combination of PAGEN_1=2&sort=price was indexed separately.

Slowness under load — the site goes down right during a sale, when every minute of downtime costs money. We find the reasons: unoptimized queries, lack of cache, heavy agents. For example, one query to b_iblock_element_property without an index can add 3–4 seconds to page generation time.

Suspicion of hacking — spam emails from the server, redirects to casino on mobile traffic, strange files in /bitrix/modules/. A security audit will reveal backdoors and web shells.

Before major improvements — investing in project development without knowing its real state is like building a second floor without checking the foundation. Half of our clients come precisely before starting new functionality.

What hides in init.php and the database?

Most problems on Bitrix are concentrated in three places: init.php, the database, and server configuration. We break down each layer in detail.

init.php and event handlers — the main code dump. There accumulate OnAfterUserLogin, OnBeforeOrderAdd, OnAdminContextMenuShow that no one refactors for years. In one project we found 47 handlers, 12 of which were dead (information blocks deleted, but the code kept calling CIBlockElement::GetList() on every hit). An audit clears out such ballast and reduces server load.

Versions and compatibility. Kernel version — if below 22.0, update is critical (PHP 8.1 not supported). Marketplace modules often conflict after updates. License without an active key — no security updates.

Server configuration. PHP memory_limit < 256M — problems with catalogs of 10,000+ items. OPcache revalidate_freq = 0 in production — CPU overloaded. MySQL innodb_buffer_pool_size should be 70–80% of RAM. On MySQL 8.0+ query_cache is removed, but it remains in old configs — generating errors in logs. Absence of expires for static files in nginx — each page reload downloads JS/CSS again.

Database — the most interesting part. The b_event_log table grows to gigabytes without cleanup settings. In one project it occupied 12 GB, though 500,000 records were written daily. The b_search_content_text table with a full-text index can weigh more than the content itself. Tables from deleted modules (b_forum_*, b_learning_*) take up space and slow down backups. We enable slow query log, wait a day, analyze. One query to b_iblock_element_property without an index can slow the entire site — we recorded delays up to 7 seconds per page.

File system. /upload/resize_cache/ — weighs tens of gigabytes, stores resizes of long-deleted images. Backups in the root — backup_old.tar.gz next to index.php, accessible via direct link. Manually modified kernel files will be overwritten during update, and custom logic will silently disappear.

How does SEO audit remove duplicates and trash from the index?

Filter and sort parameters generate thousands of URLs: /catalog/?PAGEN_1=2, /catalog/?sort=price&order=asc — each indexed as a separate page. Bitrix SEO module can set canonical, but by default it doesn't do it for parameterized URLs. The standard robots.txt blocks /bitrix/, but doesn't block /search/, /personal/, /ajax/ — there are thousands more junk pages. Bitrix's sitemap.xml generator sometimes includes inactive items and 404 pages. Without structured data Schema.org (Product, BreadcrumbList, Organization), snippets in search results are bland. Core Web Vitals: LCP > 2.5s on mobile is common for unoptimized Bitrix — unoptimized images and blocking JS are to blame. On average, after an audit we reduce the index by 60–80% — remove duplicates, set up canonical and proper noindex. Order an SEO audit to get your site the traffic it's losing now.

Why check Bitrix security?

SQL injections via $_REQUEST in custom components — previous developers don't always use $DB->ForSql(). XSS when outputting user input without htmlspecialcharsbx(). Custom file upload forms that don't check MIME type and extension — upload .php as an "image" and get a web shell. Typical findings: disabled "Proactive Protection" module (WAF not working, intrusion log empty), admin panel without IP restriction (/bitrix/admin/ open to the world), adminer.php or phpMyAdmin in the root — forgotten after migration, obfuscated code in .htaccess with mobile traffic redirect via RewriteCond %{HTTP_USER_AGENT}, modified kernel files with eval(base64_decode(...)) inserts. In one project we found 23 such files — the site had been distributing spam content via AMP for months. Read more about SQL injection and cross-site scripting. Contact us for a security check of your project — we will find vulnerabilities that scanners miss.

How do we improve performance?

We profile using Blackfire or Tideways — see which functions consume CPU. A frequent candidate is CIBlockElement::GetList() in a loop (classic N+1). We check hit rate of OPcache, Memcached, Bitrix managed cache. If composite site cache invalidates on every order, it's useless — we once reduced invalidations from 80% to 2% by proper tag configuration. Bitrix agents — if agents_use_crontab is not enabled, they execute on user hits; a heavy agent = slow for random visitor. Load testing: base RPS, degradation at 2× and 5× load, behavior when limit exceeded (graceful degradation or 502 Bad Gateway?). On one project we found peak RPS was 12, and after optimization became 150 — a 12.5x increase.

What do we look for in code?

We assess custom developments of previous teams: do they use D7 ORM or just $DB->Query() bypassing everything. PSR-12, autoloading, module structure — or everything in one file. N+1 — GetList() inside while($arItem = $rsItems->Fetch()) — classic. Modified kernel files (bitrix/modules/sale/lib/) with manual edits — updates will break everything. "Temporary" solutions living for three years — // TODO: redo from last year. On average, we find 15–25 problems in code per project, half of them with potential data loss.

Report format

Category Contents
Critical Security, data loss, crashes. Fix today
Important Performance, SEO, stability
Recommendations Architectural improvements, refactoring, optimizations
Plan Prioritized task list with effort estimates

Each problem is described by scheme: what we found → where → how it affects → how to fix → effort. We deliver the report in PDF and Google Docs for collaboration. Five signs that a Bitrix site needs an audit: init.php has grown over 2,000 lines; database exceeds 5 GB, and b_event_log table over 1 GB; pages load longer than 3 seconds on mobile; Search Console shows tens of thousands of pages in index with errors; you found files with suspicious content in /bitrix/modules/. If at least one point matches — time to order an audit.

How do we conduct an audit?

  1. Access — Bitrix panel, SSH, database, Yandex.Webmaster, Search Console.
  2. Automation — Bitrix "Quality Monitor", Screaming Frog, GTmetrix, security scanners. Catch 60% of problems.
  3. Manual analysis — the remaining 40%. Architecture, code, business logic, configuration — only hands-on. Each audit is led by a senior developer with 10+ years of experience.
  4. Report with priorities.
  5. Discussion — meeting with you, answering questions, agreeing on a remediation plan.

Average time for a full cycle — 5 business days for technical audit, up to 3 weeks for comprehensive. We guarantee confidentiality of results and safety of your data.

What is included in deliverables?

  • Documented report with description of each problem and fix recommendations.
  • Checklist of critical vulnerabilities and their priority.
  • List of performance optimization suggestions with impact assessment.
  • Post-audit consultation — review of results, task prioritization.
  • Access to test results (screenshots, profiling logs, raw data).

Types of audit and timelines

Type Timeline For whom
Express (checklist) 2–3 days Quick assessment, small sites
Technical 3–5 days Identifying infrastructure issues
SEO 3–5 days Position drop, trash in index
Security 5–7 days Sites with payments, personal data
Performance 3–5 days Slow, crashes under load
Comprehensive 2–3 weeks Full picture before serious investments

We have conducted 50+ audits of Bitrix projects — from online stores to corporate portals. Our experience shows: on average, an audit pays off within 2–3 months by reducing hosting costs and cutting error fix time (3 times faster than reactive approach). Regular audit is the best way to extend project life.

Result — not a stack of papers, but a guide to action with concrete tasks and priorities. Need an audit of your Bitrix site? Get a consultation today — contact us, and we will assess your project for free within 1 business day. Order a comprehensive audit to get the full picture before serious investments.