SaiMai International — When the Right Decision Was to Admit the Limits of Our Own Solution
Industrija
International trade, sourcing and import of goods from China
Obim rada
Custom WordPress theme, ACF architecture, five service pages, professional guides and FAQ content, in-house cookie-consent and legal systems, business forms with a lead magnet, structured data in the Yoast graph, Playwright QA and migration from .com to .rs
Outcome
Lighthouse 99/100 on mobile and Speed Index 1.0 s — previous version of the site did not exceed 76
Client: SaiMai International Industry: international trade, sourcing and import of goods from China Market: Serbia and region / China Project type: Second Redesign — Complete processing on custom WordPress solution Development period: the beginning of July — mid-August 2026. Site:www.saimai-international.rs
About the client
SaiMai International helps companies across the Balkans import goods from China safely. Unlike traditional intermediaries working remotely, the the SaiMai team is physically present in China — in Yiwu and Hong Kong — and since 2013 has been working daily with factories, negotiating with manufacturers and checking the real conditions of production before goods are shipped to the client.
Their service covers the entire chain: finding and checking suppliers, quality control in the field, consolidation of goods from multiple suppliers, international transport and customs brokerage to the customer’s warehouse. Behind this is 13+ years of experience, over 500 realized imports and a network of more than 1,000 suppliers.
It is a service that is difficult to explain in one sentence — This was the central challenge of the project.
Starting point: two sites before this one
Wix and the feeling that something is missing
The first version of the site was made on Wix, with visible “Built by Wix” tag. The owners had two problems: they did not have the control they wanted over the content and structure, and the site did not convey the level of professionalism that their service requires. When you help the company to invest serious money in goods coming from the other end of the world, the site must instill confidence from the first screen.
The first redesign — and our mistake
At the beginning of 2024, we did the first redesign. In order to deliver the project quickly, we used Elementor and the purchased Phlox Pro theme with a ready-made template.
The first version from 2024. — Visually successful, technically limited.
Visually, the result was successful. The site looked presentable and professional, the owners were satisfied and, importantly, were able to enter the content on their own without our help.
Technically, however, problems began to arise that we could not solve Speed Optimization:
Performance on mobile devices did not cross the line. Despite WP Rocket and the application of all standard optimization techniques, the mobile Lighthouse score remained at a maximum of 75–76, with Speed Index in the range of 4 to 6 seconds. Desktop was not a problem.
The cause was not in the configuration, but in the architecture. The theme delivered a large part of the content and styles through the base and inline code. This is the material with which the cache plugin simply has nothing to do — WP Rocket can optimize what can be cached and delayed, but cannot rewrite the way a topic generates a page.
Occasional bugs due to incompatibility. The combination of Elementor, Theme, and accompanying plugins occasionally produced conflicts that required intervention.
Here it is important to say something that is rarely written in case studies: It wasn’t a tool fault. It was our assessment. Elementor is a legitimate tool and fits many projects perfectly. Phlox Pro is a paid theme used by a large number of sites. But a paid topic is not an automatic and optimized theme, and a ready-made template that speeds up delivery at the same time brings a layer of code that you never needed. For a project of this type — Content-rich B2B site whose organic visibility is the key channel — It was the wrong choice.
The Conversation That Started the Second Redesign
We have an open working relationship with the owners of SaiMai, so we told them exactly this: we have reached the ceiling of what can be achieved with the existing foundation, the site is visually good but technically limited, and if we want maximum results — should be built again, this time without a page builder and no purchased theme.
It was an unpleasant conversation. It was also the right one. The client agreed and we went to another redesign.
Second version — ACF-driven custom theme, no page builder.
Objectives of the second redesign
The complex import service is presented through clear, understandable user flows.
Maintain full control over the content — without a page builder and without the risk of content change spoiling the design.
Build a content system that delivers organic traffic, not just a presentation site.
To achieve performance that previous architecture did not allow.
Resolve cookies, legal obligations, and record consents properly, not minimally.
Move a site from.com to a.rs domain without losing SEO value.
Access: ACF-driven custom theme
The site is not compiled by a page builder. It is made as a custom WordPress theme with modular sections, where all content is entered through Advanced Custom Fields.
Practical consequence for the client: structure and design are controlled and cannot be accidentally broken, and the content is completely in their hands. Instead of an empty canvas where everything can be moved, the owner gets clear fields — title, description, list items, image, CTA — and the section is always displayed as it was designed.
Technical basis:
WordPress and PHP
Advanced Custom Fields as a content entry layer
custom theme with modular sections
vanilla JavaScript — no jQuery dependencies in the topic
locally hosted fonts
Yoast SEO
WP Rocket
Playwright for automated testing
two in-house RXN plugins, substantially customized for this client’s needs
Complex service turned into an understandable flow
Imports from China are not a single service but a chain of decisions: finding suppliers, factory inspection, quality control, consolidation, transport and freight forwarding. The first-time importing client does not know where it starts and does not even know what stages exist.
That’s why each stage got a separate landing page — Total of five — with the same, predictable structure:
A clear answer to the question of what this service solves
What the collaboration process looks like
What is specifically obtained
checkliste
Questions and answers related to this stage
contextual call to action
On the homepage, it all merges into one six-step overview, so that the visitor who does not know the terminology gets a map, and visitors who know exactly what they need goes directly to the relevant page.
In addition, we created a content section that addresses the client’s real concerns rather than using service jargon: a section that names four specific import risks — Supplier fraud, non-compliance, poor quality and hidden costs — and explains exactly how SaiMai reduces each risk.
Content system instead of a presentation site
For a B2B service of this type, expert content is not decoration — It is the main channel of trust and organic visibility.
They are made:
six extensive expert guides and a special hub for guides
central FAQ database with 46 questions, showing the relevant subset on the service pages
Reusable Guide Cards and Categories
breadcrumbs navigation
Normalization of the old /en/insights/... URLs
linking each guide to the services mentioned in it
The last item is important: the import cost guide leads to the transport and freight forwarding page, the consolidation guide to the consolidation page. The content does not live isolated from the offer.
Structured data integrated in Yoast graph
A common approach is to broadcast the custom schema as an additional JSON-LD block next to the one that generates the SEO plugin. The result is two graphs that know nothing about each other, sometimes with conflicting data about the same entity.
Instead, we insert all custom schema data directly into the Yoast graph:
Service entities for all five services
FAQPage data on service pages
Organization Entity
Person entities for team members associated with the organization
AboutPage, ContactPage and CollectionPage types
Breadcrumbs and canonical-ready structure
The result is one consistent graph with no duplicates and no conflicting blocks between each other.
RXN Cookie Kit — Cookies are handled properly
To control cookies, we used our in-house plugin, additionally adapted to this project. The difference from a typical consent banner is essential: this is not a visual element that appears and disappears, but a layer that really blocks scripts before consent.
System:
blocks all optional scripts until the user makes a decision
supports acceptance, rejection and granular selection by category
works correctly with optimized and cached HTML
compatible with WP Rocket and the planned Cloudflare layer
a Cookie Inventory
allows the user to subsequently change the decision
Checked in a clean browser test:
Zero third-party requests before election
Zero cookies before the election
after the decision, a first-party consent cookie is set
This is one of the few things that you don’t see on the site that separates formal compliance from real compliance.
RXN Legal Kit — legal layer as a system, not as a site
The other in-house plugin, also adapted for SaiMai, covers the legal part much wider than static pages with text:
generation and management of legal documents
Privacy and Compliance Forms
record of submitted requests with deadlines for response
record of given consents
signed links to withdraw marketing consents
control of the publication of legal documents
preserving manually modified content when upgrading plugins
Legal regimes and deadlines adapted to the Serbian market
The client thus receives not only a published privacy policy, but a record that, in case of user request or supervision, has something to show.
Forms adapted to the real business process
Contact form with fields name, email, message produces queries that are impossible to answer without three additional emails. For SaiMai, the form is designed to collect what the team needs in the first contact to evaluate:
product and quantity
the importing country
link to product
type of procurement
way of importing
document or photo as an attachment
Technically covered:
nonce protection and honeypot
validation of the type and size of attachments
temporary, controlled file storage and automatic deletion after sending
User Confirmation
Private record of successfully sent inquiry
preparing for reCAPTCHA v3
Lead magnet with proof of consent
The visitor can request a PDF checklist for the first order from China. The system validates the application, sends the checklist by email, records Exact text of consent accepted by the user, preserves the source of the application and allows later withdrawal of marketing consent.
Recording the exact text of the consent, not just the fact that the field was tagged, is the only version that really matters if someone asks later.
Performance: three measurements, one story
The speed results here have a timeline and it is worth telling the whole one, because it is more instructive than a nice figure.
1. Previous version of the site (Elementor + Phlox Pro)
Mobile Lighthouse score did not exceed 75–76, with a Speed Index of 4 to 6 seconds.
Note: we do not have saved reports for this version, so the numbers are listed by memory and represent an indicative value from our measurements at the time. We cite them because they were a direct cause for processing.
2. After launching a new version
The new version went on production with good laboratory results, but the measurement is on live production — with real images, Cloudflare layer and separate WP Rocket cache for desktop and mobile — showed Speed Index of 4.3 seconds on mobile.
This is the part that is not usually published. We publish it because the point is exactly that: staging is not production, and post-launch measurement is not a formality.
The causes were concrete:
Double WP Rocket preload that unnecessarily downloaded a large desktop image on mobile devices
render-blocking CSS and consent resources in the critical path
hero images that were not delivered according to screen size
3. After post-launch optimization
We did a dedicated optimization round directly on the production, separate for desktop and mobile cache:
responsive WebP variants of the hero image — The original 39.–69 KiB, mobile devices now get variants of only 5–11 KiB
proper preload hero photos and removed double preload
inline critical CSS with asynchronous loading of rest styles
Consent resources removed from critical path
forced reflow in cookie banner removed by moving focus to the next animation frame, without compromising accessibility
corrected ARIA model testimonial rating — accessibility tree now correctly presents the stars as “Rating: 5 out of 5″
Current PageSpeed Insights score for mobile devices:
Metrics
Value
Performance
99
Accessibility:
96
Best Practices
100
SEO
100
First Contentful Paint
0.9 s
Largest Contentful Paint
2.3 s
Total Blocking Time
0 ms
Cumulative Layout Shift
0,032
Speed Index
1.0 s
The Speed Index was lowered from 4.3 seconds to 1.0 seconds, and the mobile score from a maximum of 76 on the previous version of the site to 99.
All this without aggressive front-end framework: no jQuery dependencies in the theme, fonts are local, images are responsive, fetchpriority for LCP element is controlled, CSS is loaded according to page type, and static assets have a long browser cache with version busting.
Automated QA system
In order to make sure the check does not depend on whether someone remembers to click, a Playwright package was created that the site tests in desktop and mobile Chromium display.
Covered are: loading main pages, exactly one H1 per page, horizontal overflow, JavaScript errors, mobile menu and behavior on Escape, contact and newsletter forms, reCAPTCHA bridge, SEO metadata, canonical rules, schema entities, images with alt text and dimensions, hierarchy of titles, sitemap, private legal pages, correct 404 response and 404 user experience.
Static checks on delivery:
PHP syntax: 165/165 files pass
JavaScript syntax: 14/14 files passed
npm audit: zero known vulnerabilities
without broken internal links in executed crawl
without duplicate SEO title and description values in the tested set
Migrating from.com to.rs
The site was moved from saimai-international.com to www.saimai-International.rs. Since the previous version had a history of searching, the priority was not to lose this value.
It’s done:
directory redirects from old to new domain
Normalization of the old /en/insights/... URLs to the new guide structure
canonical-ready structure on all types of pages
Connecting a new domain to Cloudflare after migration
The result
For SaiMai International we have developed a complete custom WordPress site for companies importing goods from China. We have divided the complex service into clear user streams, five specialized service pages and a system of professional guides with a central FAQ base.
In addition to design and development, we have implemented an in-house cookie consensus and legal system, business forms adapted to the import process, structured data integrated into Yoast graph and an automated QA package.
The result is a modular, fast and technically controlled site with a Lighthouse score of 99/100 on mobile devices — on a project where the previous architecture did not exceed 76.
A paid topic is not the same as an optimized topic. The price of the license does not say anything about how much the theme code loads and how it delivers content. If the theme generates a large part of the display through the base and inline code, no cache plugin can replace it.
Fast delivery has a price to pay later. The finished template speeds up the first month and slows down the next two years. For projects where organic visibility is a key channel, this bill is not worth it.
Content control and design control are not opposites. The ACF-Driven structure gives the client complete freedom of entry with the guarantee that the section always looks like it was conceived — which is, in practice, more control than the page builder provides.
Post-launch measurement is not a formality. Our site showed regression at the production that the staging could not detect. If we did not measure, the client would get a site that is fast on paper.
Admitting a mistake to a client is cheaper than defending it. A proposal to remake one’s own work from the ground up is an unpleasant conversation, but it is an alternative to having a client carry a limitation for years that we never explained.
Customer Experience
“We had a very positive experience in cooperation. The communication was fast and clear from the beginning, they were always available for questions and suggestions. All agreements were honored, including deadlines, which was especially important to us. The cooperation was very easy and professional, with a lot of understanding for our needs and ideas. A warm recommendation for anyone who needs a reliable and responsible partner to create a website. “
SaiMai International
Do you have a website that has reached its ceiling?
If your site looks good but the performance does not move regardless of the optimization, the problem is most often in the architecture, not in the settings. We’ll be happy to take a look and identify the cause.
WordPress agencija iz Stare Pazove sa 10+ years of experience u izradi web sajtova.
Your cookie choices
We use essential cookies to make the website work. With your permission, we may also use optional cookies for preferences, analytics, and marketing. You can accept, reject, or change your choice at any time.