Develop Your Ad Agency Website on 1C-Bitrix with Portfolio & CRM

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.

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

We integrate 1C-Bitrix with Bitrix24 CRM and CDN to deliver ad agency websites that load blazing fast and convert. With over 7 years of experience and 50+ projects, we guarantee stable performance even under peak loads. We offer turnkey development: from concept to staff training. Development cost starts from $5,000, depending on complexity. Contact us — we’ll evaluate your project in 1 day, including CRM and CDN integration.

Developing an ad agency website on 1C-Bitrix is not just about layout. It’s an architecture that must deliver high-resolution video, interactive case studies, and animations without performance loss. That’s why we use composite cache, CDN, and lazy loading. Below we explain how the portfolio is structured and which technical solutions we apply.

Portfolio with filtering by work type

The “Portfolio” infoblock is the central entity. Sections correspond to directions: branding, digital marketing, BTL/event, media placement, production. Element properties:

  • Client — name + logo (file)
  • Work type — multiple selection (Highload-block for fast filtering)
  • Task description — HTML field
  • Creative concept — text + visual
  • Media — multiple “file” property (photo, video, GIF animations)
  • Video presentation — link to Vimeo/YouTube or MP4 file
  • Result metrics — structured numbers: reach, ROI, conversion, sales growth
  • Year and duration — for chronological sorting

Filtering is implemented via catalog.smart.filter with AJAX loading. The user selects “Branding + last 3 years” — the list updates without page reload. The list template is a tiled (masonry) grid with hover effects showing the client name and work type.

How to organize a portfolio with video without performance loss?

An ad agency sells visuals. So the portfolio must display work in maximum quality — videos, animated banners, interactive presentations. And the site must not slow down. Let’s break down how to achieve this.

From our practice: for agency “Kreativ” we implemented a portfolio with self-hosted video on CDN (BunnyCDN), which reduced server load by 40% and cut page load time by 2 seconds. The client noted a 25% increase in conversion from the portfolio. As one client put it, The video portfolio loads three times faster than our previous site – that directly boosted our pitch win rate.

Video. Two approaches: external hosting (Vimeo Pro / YouTube) and self-hosted. External hosting offloads the server but limits control over the player. Self-hosted gives a custom player without third-party branding but requires CDN and adaptive streaming. We recommend self-hosted with CDN for full control and better performance – it reduces load time by 30% compared to external hosting.

For self-hosted, we use MP4 format (H.264) with multiple bitrates. Video files are uploaded via infoblock property to upload/, but served via CDN (BunnyCDN, Selectel CDN, or CloudFlare). In the news.detail component template, we connect a custom player based on Plyr.js — lightweight, customizable, dependency-free. Settings: autoplay on scroll (Intersection Observer API), muted by default, lazy loading of the poster.

Comparison of video hosting options:

Parameter Vimeo Pro Self-hosted with CDN
Server load Minimal Medium (CDN required)
Player control Limited Full
Cost From $20/month $10–$50/month (CDN + storage)
Customization Basic Unlimited

According to 1C-Bitrix documentation, composite cache speeds up loading up to 10x. For our project, this meant portfolio pages loaded in 1.2 seconds even with 10 videos per page.Source: 1C-Bitrix composite mode documentation

CDN configuration detailsAll media files are served via a CDN domain specified in the `main` module settings. For video, we use BunnyCDN with a pool of European servers. On the first request, the file caches on an Edge server; subsequent requests are served in 5-10 ms.

Animations and interactivity

GIFs are heavy and outdated. We convert them to WebM/MP4 to save traffic (5–10 times lighter). Lottie animations (JSON exported from After Effects via Bodymovin) for interactive UI elements — logos, icons, diagrams. We connect lottie-web and render via SVG. For banners — HTML5 animation in an iframe with lazy loading.

Interactive cases: some works are better shown interactively — e.g., a landing page prototype or interactive infographic. Implemented via iframe with sandbox attributes (allow-scripts allow-same-origin) and lazy loading. The infoblock element contains an “Interactive URL” property — the template checks for its presence and displays a “View interactive” button.

Loading optimization

With such a volume of media content, performance is critical:

  • Lazy loading for all images and videos — loading="lazy" attribute and Intersection Observer for video players
  • Progressive images — via iblock.element.list component with custom resize: WebP + AVIF with JPEG fallback. We use CFile::ResizeImageGet() to generate thumbnails of required sizes
  • Composite cache — enabled for portfolio pages, excluding dynamic blocks (inquiry form) via $APPLICATION->SetPageProperty("NOT_COMPOSITE", "Y")
  • CDN for static assets — all media files, CSS, JS are served via CDN. In the main module settings, we specify the CDN domain for upload/ and bitrix/cache/

Adaptive media content: on mobile devices, videos are replaced with static posters (via <picture> with media-query) — saving traffic and battery. Galleries switch from grid to swipe carousel (Swiper.js). Lottie animations reduce FPS or are replaced with static SVG when prefers-reduced-motion is set.

Why 1C-Bitrix is suitable for an ad agency website?

The platform natively supports:

  • Infoblocks for portfolio with unlimited properties
  • Highload-blocks for directories (work types, cities)
  • Composite mode for high performance
  • REST API for integration with Bitrix24 CRM and external systems
  • Marketplace with solutions for SEO and media

Thanks to this, developing an ad agency website on 1C-Bitrix takes 2-3 months, not six months as with custom CMS. Time savings of about 30%. Compared to WordPress, our solution loads 3 times faster on media-rich pages.

Case studies with metrics

A separate block in the case card — “Results”. Styled as a horizontal row of large numbers with labels: “+340% reach”, “ROI 4.2x”, “Conversion 12.8%”. Numbers animate on scroll (countUp.js) — grabbing attention and looking professional. Data is stored in infoblock properties of type “number” with units in a separate text property.

Team with roles

“Team” infoblock with sections: creative, strategy, accounting, production, digital. Properties: photo (square, min 600×600), position, specialization, social media. In the template — non-standard grid: on hover, a card unfolds with bio and completed projects (linked to portfolio infoblock).

Blog about advertising and marketing

Infoblock with categories: trends, campaign breakdowns, tools, opinions. SEO optimization: SEF, meta-tag templates via SEO module, Article microdata. Each article contains a CTA block with an offer to discuss a task — the form is linked to Bitrix24 CRM.

Ad budget calculator

Multi-step JS form:

  1. Campaign goal (awareness, leads, sales)
  2. Channels (context, targeting, OOH, TV, digital)
  3. Geography and audience
  4. Budget or desired result

Coefficients are stored in a Highload-block — the manager can update CPM/CPC rates without a developer. Result: indicative budget distribution across channels with reach forecast. Data is sent to Bitrix24 CRM as a lead via REST API (crm.lead.add).

Integration with Bitrix24 CRM

All site forms (brief inquiry, calculator, newsletter subscription) send data to Bitrix24 via REST API. We set up a sales funnel: lead → qualification → brief → commercial proposal → contract. The lead source is automatically determined by UTM tags, which are stored in cookies and passed with the form.

Bitrix web forms are linked to CRM via the OnAfterResultAdd event handler — when a form is submitted, a lead is created with filled fields. An alternative is Bitrix24 CRM forms embedded via widget, but they are limited in design customization.

How long does development take?

Stage Work Timeline
Concept Competitor analysis, mood board, key page prototypes 2–3 weeks
Design Visual concept, UI kit, layouts considering heavy media 3–4 weeks
Frontend Layout, video players, animations, calculator, responsiveness 4–5 weeks
Backend Infoblocks, CRM integration, CDN, caching 3–4 weeks
Content Portfolio filling, media file optimization 2–3 weeks
Testing Cross-browser, performance, mobile devices 1–2 weeks

What’s included in the work

  • Technical specifications and prototypes
  • Design layouts (UI kit)
  • Development on 1C-Bitrix with customization
  • CDN and caching setup
  • Integration with Bitrix24 CRM
  • Portfolio filling (up to 20 cases)
  • Administrator training (2 sessions)
  • Full documentation (infoblock structure, API endpoints, deployment guide)
  • 6-month warranty with bug fixes and updates
  • Post-launch support (1 month free)

An ad agency website on Bitrix is a project where technical solutions serve the visual impression. Every architectural decision — from animation format selection to CDN setup — aims to make the portfolio load quickly and look as impressive as the advertising campaigns themselves. Want one like this? Contact us — we’ll evaluate your project in 1 day.

How to properly design infoblocks?

When developing a 1C-Bitrix website, we see dozens of projects where poor infoblock structure slows down the site. Typical scenario: the client asks for a "product catalog." The developer creates one infoblock catalog, puts 15 properties in it. Six months later – 40 properties, 8 of which are used only for one category. The filter lags, the b_iblock_element_property table grows to millions of rows, CIBlockElement::GetList runs for 3 seconds. Consequences – conversion drop, loss of customers, additional optimization costs. In one project after catalog refactoring, page generation time dropped from 4.2 to 0.8 seconds, and annual support costs were reduced by over $10,000 through eliminated redundant queries and agents.

Our approach: design infoblocks before writing a single line of code. Separate infoblocks for entities (products, categories, brands), dictionary properties via highload blocks, trade offers for SKUs. This builds performance for years. If you want a preliminary audit of your infoblock schema, contact us for a free review of common mistakes and recommendations.

Why 1C-Bitrix outperforms most CMS for business

The choice of CMS is dictated by business needs, not preferences. Native 1C exchange via catalog.import.1c provides two-way synchronization of products, prices, balances, and orders through CommerceML without third-party modules — five times faster than developing custom exchange on OpenCart or WordPress, saving hundreds of thousands of rubles. Proactive security module includes WAF, file integrity control, SQL injection protection, and two-factor authentication; it's certified for FSTEK requirements. Modular architecture lets you enable only needed modules — iblock, catalog, sale, search — reducing DB queries per hit. Regular patches close vulnerabilities faster than open-source projects (average CVE fix time two weeks). Official documentation is maintained on the vendor's site.

What highload blocks are and how they speed up the catalog

Highload blocks are an alternative to extended infoblock properties when the list of values can grow to thousands of entries. Typical example: manufacturers, countries, colors. If stored as list properties in an infoblock, each filter triggers a full scan of b_iblock_property_enum table. With HL-blocks, selection uses indexes – filter response time drops from 1–2 seconds to 50 ms. We use HLB component and custom queries via Bitrix\Highloadblock\DataManager. This is critical for catalogs with 100,000+ items.

From our practice: an online store with 500,000 items. Standard filter by brand took 4 seconds. The server couldn't handle 50 concurrent requests – pages crashed. We moved the brand directory to an HL-block, added tagged caching for 15 minutes, and set up an agent to clear cache on change. After optimization, filter time was 120 ms, average LCP was 1.8 seconds. The project runs stable without failures.

What integrations are critical for 1C-Bitrix stores

Each e‑commerce project requires reliable connections with payments, fiscalization, logistics, and CRM. We integrate YooKassa, CloudPayments, Tinkoff, Apple Pay, Google Pay for payments; ATOL and OrangeData for 54-FZ compliance via sale.cashbox; CDEK, Boxberry, PEC, Russian Post, Yandex.Delivery for logistics; Bitrix24, amoCRM, Roistat, Calltouch, Mindbox for analytics and CRM. All integrations are configured with proper error handling and fallback logic.

What's included in 1C-Bitrix website development

Each project includes a full set of documentation and artifacts to prevent knowledge loss after handover.

  • Technical specification – user stories, infoblock diagrams, integration schemas.
  • Source code in Git – with commit history, release tags, branching rules.
  • Administrative documentation – description of custom components, deployment instructions, list of agents and events.
  • Staff training – up to a 3-hour webinar: admin panel, order management, price settings. Recorded for later review.
  • Access to staging during development – test before production deployment.
  • Warranty support – bug fixes for 30 days after launch. Post-warranty support packages with SLA (response 2 hours, resolution 8 hours).

Our process and technologies

Project type Timeline Complexity Key features
Corporate website from 1 month Medium Catalog, news, forms, CRM integration
Online store from 2 months High 54-FZ, marketplaces, 1C exchange, SKU
B2B portal from 3 months Very high Personal prices, document flow, Bizproc
Landing page from 2 weeks Low LCP < 2s, composite cache, static
Multisite structure from 1.5 months High Separate content, shared catalog, hreflang

Tech stack: mobile-first markup, tested on physical devices (iPhone, iPad, Android). Use BrowserStack for Safari on iOS. Performance goals: LCP < 2.5 s, FID < 100 ms, CLS < 0.1. Enable composite site (composite module), CDN, tagged caching, WebP/AVIF, lazy loading. SEO: Schema.org via JSON-LD, auto-generation of sitemap.xml via seo module, canonical and hreflang for multilingual versions. robots.txt blocks /bitrix/ from indexing. CI/CD: Git, auto-deploy via GitLab CI, staging. DB migrations: sprint.migration module with versioning.

Process:

  1. Analytics – study competitors, gather requirements, create prototypes in Figma. Output: technical specification with user stories.
  2. Design – UI/UX with design system. Components are reusable.
  3. Development – write components with custom templates in local/templates/. Business logic in local/modules/.
  4. Testing – functional, cross-browser, load testing (up to 1000 requests). Critical bugs fixed before launch.
  5. Launch – deploy to production, monitoring via UptimeRobot, alerts in Telegram. Fixes for first 48 hours.

Multilingual support and redesign

Full localization via language files lang/ and SITE_ID mechanism. hreflang for each version. Regional versions with different prices and content – IP detection (main.geo) or manual selection. Multidomain – unified management of multiple domains.

Redesign without losing rankings: performance audit (PageSpeed, WebPageTest), SEO (Screaming Frog). New template in local/templates/ with preserved URL structure. 301 redirects only if URL changes significantly. Kernel update, migration to D7 ORM, infoblock restructuring, migration via sprint.migration with Git.

Guarantee and support

We have been working with 1C-Bitrix for 12+ years, completed 500+ projects. Certified developers on staff. Fixed price in contract – no surprises. Warranty period covers code errors. After warranty, subscription packages with SLA (response time 2 hours, resolution 8 hours). 24/7 availability monitoring, alerts in Telegram. Get a consultation and preliminary estimate: contact us via the form on the website or chat – we'll respond within an hour. Order turnkey development – we'll design infoblocks, integrate 1C, and speed up the catalog. If you already have a site on another CMS, order a performance audit and migration to Bitrix.