• Commercial SEO

Cosmetics store SEO: brand, series, shade — and three different pages

The promotion of an online cosmetics store rests not on the volume of texts, but on how many pages of the catalog the search engine sees in general. Brand, series and shade are three different levels of demand, and each needs its own address with its own page name. In the wholesale beauty catalog, which we measured on July 31, 2026, the canonical site map holds 4,167 addresses, and next to it, at the standard address, the old one lives - about 2,706 product records and triple repeats. First, we combine these two catalogs into one, and only then we talk about requests.
See how it works
Price
after a free audit
Guarantee
30 days after project sign-off
Brand as a separate catalog entry
166 brand pages for 3,947 products and 47 categories
after a free audit
Price
30
Guarantee

days after project sign-off

166
Brand as a separate catalog entry

brand pages for 3,947 products and 47 categories

4,167
Two site maps at the same time

addresses in the canonical versus ~2,706 commercial addresses in the old one

7,782
Repeat inside the old map

records for 2,755 unique addresses, 2,454 of them three times each

no address of the second version in the map with working hreflang
Second language in the index
Universal Analytics in code, no GA4 property, measurement 07/31/2026
Analytics in a beauty shop
free catalog check, 2-4 business days
Before the estimate
Who it's for

Situations where this service delivers results

Scenario 1 of 5

Three or four brands live in the search from the entire catalog

The rest is silent not because of weak texts, but because it does not have its own address or this address is not described by anything. In the wholesale beauty catalog, from our perspective, the brand is the main way of navigation: 166 brand pages in 47 categories. When they all have the same page title, the search engine leaves one entry in the index.

We'll review your situation in a free audit
What's included

Complete list of work and what you get as a result

  • Inventory of the catalog in numbers — products, brands, series, categories, unique addresses: then we argue with facts, not with feelings
  • One working site map instead of several conflicting ones, with a correct line in robots.txt: the crawler receives a complete list, not a duplicate and incomplete one
  • Structure "brand → series → device type" with its own address at each level - three different requests stop leading to the same page
  • Page title and h1 rules with brand, medium type and volume: Hundreds of brands are covered by a template, not hundreds of hours of manual work
  • Decisions by shades and volumes with calculation: how many addresses will be added and how many of them have a chance of being in demand
  • Canonical addresses on variations and filters so that combinations of characteristics do not become thousands of almost identical pages
  • Markup of Product with price, availability and brand and Store with contacts and schedule - the page becomes suitable for the expanded view in rendering
  • Working GA4 property with cardview, cart, and purchase events instead of a counter that hasn't been collecting anything for a long time
  • Monthly report: what has been done, how the indexing has changed, what will happen next month, with links to specific addresses
When this service isn't right

What's not included — so there are no surprises at delivery

  • Filling the cards with descriptions of the entire assortment — for thousands of items, this is a separate budget
  • Photography of means and swatches of shades
  • Marketplaces and contextual advertising
  • Medical claims about the effect of the means that your technologist will not confirm

Free check of the cosmetics catalog

Before talking about work, we look at three things: how many brands you have, how the shades and volumes are established, and whether the search engine sees the catalog that you see in the admin. The difference between these two catalogs is multiple.

What we measure

  • Brands as separate pagesHow many brands are in the catalog and does each have its own address with a description. In the measured wholesale cosmetics store, there were 166 branded pages in 47 categories — that is, the brand is the main way of navigation there.
  • Shades and volumesOne card with a choice or a separate address for each option. The size of the catalog and the number of duplicates depend on this.
  • How many sitemaps live at the same timeA classic find: the canonical map returns 3,947 items, while the old one that the crawlers follow has about 2,706 item entries and with triple repeats. We check all standard addresses, not just one.
  • Language versions in the indexDid the second language branch make it to the site map at all? We saw a bilingual store that had no second language address on the map.
  • Marking of the cardProduct with price, availability and brand; Store with contacts and schedule. The presence of markup is checked on live pages, not according to the developer.
  • Analytics that really collectDoes the site have a working property GA4. Google turned off universal analytics in July 2023, and we still see it in the code.

What you get

  • Catalog numbers: products, brands, categories, unique addresses.
  • List of found duplicates and conflicts between sitemaps.
  • What is there and what is not from the markup and analytics, with links to specific pages.
  • Conversation for 30 minutes on the document.

Timeline: 2-4 working days

Why is it free

Because the inspection takes us a day and almost always changes the work plan. In two out of three cases, the biggest find is not in the texts, but in the fact that part of the catalog simply does not reach the search engine.

What's next

Next, we compile a list of works by priority: first, those that return already existing pages to circulation, then those that add new ones. The document remains with you in any case.

Short form: your contact and site URL

  • Contract, act and 30-day warranty

    Every project gets a written contract: scope, deadlines, amount, acceptance procedure. After delivery — act and invoice, then 30 calendar days of warranty.

  • Sole proprietor & bank transfer

    The contractor is a registered sole proprietor. Payment by invoice with closing documents.

  • Rights & access — yours

    Code, design and materials transfer to you after full payment. Domain, hosting, repository and analytics are registered to you.

  • Client portal instead of email chains

    During the project you get access to a portal: contracts, invoices, acts and project status in one place.

  • European clients

    Among our work — projects for Norway, Bulgaria, Moldova and Spain.

  • Verifiable numbers

    Every case in the portfolio comes with a link to a live site and a technical measurement.

  • Audit first, then pricing

    There is no price list on the site intentionally: the scope of the same work differs multiples between clients.

  • We say "no" when unsure

    If the task isn't ours or the deadline is unrealistic — we tell you upfront.

What affects the price

Why two seemingly identical tasks are priced differently

  • Number of brandsA brand in cosmetics is not a line in the filter, but a separate entry in the catalog. The 166 brands in the store we measured mean 166 addresses, 166 page titles and the decision of which of them will receive text and which will live with the template for now. Eight brands for the same amount of goods is a completely different job.
  • Depth of variabilityShades and volumes multiply the catalog. The same price is deployed in two thousand addresses or six — and it is different work with canonicals, sitemap and metatag templates.
  • The state of the index at the startWhen the site map is one and clean, we immediately go to the structure. When there are two of them and they conflict with each other, the first month is spent going back and forth around the already existing pages.
  • Language versionsThe second language doubles the number of addresses, meta tags and lines in the sitemap. Plus hreflang, which must be compiled without mutual conflicts between versions.
  • Access to CMS templatesIf the rules of metatags and sitemaps are changed in the admin, it is our job and our deadline. If every edit goes through your developer and release queue, the deadline is counted by his calendar.
  • To whom to confirm the invoiceTexts about the composition, application and contraindications are not written off the top of your head. You need a person from your side who will tame them; when it is not, the text part is reduced to what can be confirmed.
Process steps

Transparent stages with approval at every step

Total duration:30–120 days

  1. Measuring the catalog and index

    3-5 working days

    Bypassing all the standard addresses of the site map, comparing them with each other and with the real catalog, cross-counting cards using the standard search engine, removing markings and counters. The output is the numbers from which everything else is calculated.

  2. One sitemap and conflict cleanup

    5-10 working days

    We remove the outdated map, leave the canonical one, register it in robots.txt, close the repetitions with canonicals. Here's a warning: the number of pages in the index may drop at first after cleaning - this is a normal course of events, not a deterioration.

  3. Structure "brand → series → product type"

    10-15 working days

    We divide the catalog into three levels with their own addresses, combine them with existing categories, decide the fate of shades and volumes, fix a list of filter combinations, which we open in the index deliberately.

  4. Heading and meta tag templates

    7-12 working days

    Page title and h1 rules with brand, media type and volume - separately for product, series, brand and category. Hundreds of addresses receive different headers without manually sorting through each one.

  5. Markup and analytics

    5-8 working days

    JSON-LD Product with price, availability and brand, Store with contacts and schedule, validation on live pages. Working GA4 property with card, cart and purchase events instead of dead counter.

  6. Texts of priority categories and brands

    15-30 working days

    Fifteen-thirty pages, which you yourself will name according to the revenue. Questions about the composition, application and selection — with confirmation of the invoice by your person. The rest of the catalog still lives with template meta tags.

  7. Monthly cycle and report

    every month, starting from the second

    Indexing measurement, analysis of the Search Console report by "duplicate" and "not indexed" statuses, the next batch of pages and texts. The report is to your addresses, without third-party interest.

Did not find your case?

Describe how it works on your side — we will tell you whether “SEO for a cosmetics store” fits and what it means in your situation. No brief and no call: one question, one answer.

Technologies & integrations

What we build on and what it connects to

Stack

  • Screaming Frog - directory traversal; limit: shows what the bot sees, not what got into the index
  • Bypassing all standard sitemap addresses and index files; limit: only finds what the server gives out publicly
  • Standard search engine for cross counting cards; limit: published counts, hidden positions are silent
  • Google Search Console is the single source of index truth; limit: delayed and sampled data
  • JSON-LD Product / Offer / Store; Limit: The markup does not raise positions or force Google to show the extended snippet
  • rel=canonical on variations and filters; limit: This is a hint to the search engine, not a command
  • GA4; borderline: blockers and consent mode provide a trend, not an accounting truth
  • OpenCart and WooCommerce — metatag templates and sitemaps are managed in CMS; limit: without access everything rests in your developer queue

Integrations

  • Google Search Console
  • GA4
  • Google Merchant Center
  • Meta Pixel
  • eSputnik
Work on the structure against a package of texts on categories

How this option differs from the alternative

Where does it start?from address counting: how many pages there are, how many of them are seen by the search engine
What happens to brandseach has its own address and a separate title, the text is a priority
Shades and volumesthe decision is made with the calculation of the consequences for the index
What about takesconflicting site maps are combined into one, repeats are closed
What is the result measured by?unique addresses in the map, statuses in Search Console, share of marked cards
Cases

Tasks and results in numbers — all metrics measured by us

wholesale store of cosmetics for the beauty industry, catalog of almost 4,000 items

Task
Find out why there are noticeably fewer products in the index than in the catalog.
Solution
Bypassing all addresses of the site map that the server gives, comparing them with each other and with the real directory.
Result
The canonical site map contains 4,167 addresses — 3,947 products, 166 brands, 47 categories and 6 information pages. Parallel to the standard address lives the old map: 7,782 entries, of which only 2,755 are unique (2,454 addresses are repeated three times) and about 2,706 are marketable. That is, a crawler that follows a standard address sees a duplicated and incomplete directory at the same time. Separately: there is no address of the second language version in the map, although bilingualism is implemented. Measured on 07/31/2026, two consecutive runs gave the same result.

online store of natural cosmetics on beekeeping products

Task
Check the technical condition of the store before working on visibility.
Solution
Speed ​​measurement, counting of entries and unique addresses in the site map, checking of markings and counters.
Result
A first server response of 126.3ms and a full markup download of 172.4ms at 196.3KB are the fastest of the eight stores measured. At the same time, the site map contains 271 entries for 116 unique addresses: individual products are duplicated 2-4 times in 81 product pages. The Store, Organization, ContactPoint, and SearchAction markups are in place, and the code still says Universal Analytics UA-148400680-1 without any GA4 properties — meaning no data is collected from July 2023.
What we need from you

We can't start without this — best to prepare in advance

  1. Access to Search Console - otherwise we can see the structure but not the index.
  2. Access to the CMS: the sitemap, metatag templates and address rules are changed there.
  3. A list of priority brands and categories — those that bring in money, not those that have the most.
  4. Downloading the price with the fields "brand", "series", "volume", "shade" - the size of the future catalog is calculated based on it.
  5. Your human to fact-check ingredients, uses, and contraindications: We do not publish unverified claims about cosmetics.
  6. The decision whether the second language version is indexed - if you have it.

If something is missing — let us know, we'll help you gather it or do it as a separate task.

FAQ

Most frequently asked questions — with concrete answers

We have a bilingual store. why is the second language not in the search?

Most often because it is not in the site map. This is a literal find from our point of view: a store with a working language switch and declared hreflangs did not have any address of the second language version in the map. The search engine can reach it by links, but it receives a completely different priority of bypass. First, we add these URLs and compile the hreflang so that the versions don't conflict with each other in the same release.

We have two sitemaps and I don't know which one is correct

A familiar situation. In the wholesale store we measured, the canonical map gives 4,167 addresses, and the old one, according to the standard path, gives 7,782 entries for 2,755 unique addresses, of which about 2,706 are commercial. One is duplicated, the other is incomplete, and the crawler most often follows the standard one. We do this: we leave one card, remove the second, write the address in robots.txt and check the bypass. We immediately warn about a side effect: the number of pages in the index may drop in the first weeks. This is the expected course of events - duplicates come from the index, not your directory.

Shades to start with separate products or variants of one card?

It depends on whether they are looking for a specific shade. If in your niche the requests look like "lipstick 214", a separate address is justified. If not, options in one card give fewer pages and fewer duplicates. There is no universal correct answer, there is a calculation: how many addresses will be added and how many of them have a chance to receive demand. Our default recommendation is options inside the card, and to open individual addresses point by point, for requests that are already visible in your statistics. Expanding the structure later is cheaper than gluing together thousands of nearly identical pages.

We have 166 brands. do you need a page for each?

Address - yes, text - not immediately. First, all brands get their own addresses with the correct title and page name, this is closed with a template. Then a normal text is written for 15–30 of the most important ones. To write a description for each brand at once is to spend the budget on pages that no one comes to. And a fair boundary: the presence of a page in the site map does not mean either indexing or traffic - Google writes it directly.

Is it possible to compete with large marketplaces?

For general queries like the name of the category, practically no, and it is more honest to say it right away. For narrow links "brand + series + type of means" and for wholesale requests - yes, because there is less competition and more sense in the detailed page. We build our plan precisely on the second. Separately, about the brand: the manufacturer itself competes with you for its own name, and no one can beat us.

Does the speed of the site decide anything here?

He decides, but not in the way that it is customary to scare. We measured a natural cosmetics store with a first response time of 126.3 ms—the fastest in our sample—while having 271 sitemap entries for 116 unique addresses. A fast site and a clean index are two different things. Speed ​​removes technical loss: a person does not get tired of waiting. It does not make the offer more attractive and does not glue doubles.

We have analytics, why check it?

Because "standing" and "collecting" are not synonymous. The cosmetics store in our sample had the Universal Analytics counter UA-148400680-1 disabled by Google back in July 2023 in the code, and there was no GA4 property at all. Formally, there is analytics on the website, but in fact, nothing was collected for three years. Also, no illusions: the counter itself does not improve anything, it only gives an opportunity to see, and the blockers and the consent mode make the numbers a trend, not accounting.

How quickly will changes be seen and how do you report?

Technical changes are visible in Search Console in 3-6 weeks: the number of indexed pages and crawling frequency change. The demand for specific items depends on the season and assortment. Monthly report: what has been done, how many unique addresses are in the working card, how the "duplicate" and "not indexed" statuses are moving, what proportion of cards has the correct marking. Everything to your addresses - we do not bring other people's interest.

Send the address of the store - we will calculate the catalog and show what the search engine sees from it.

In response: numbers by products, brands and categories, a list of duplicates and conflicts between site maps, the state of markup and analytics. If there is nothing to do now, let's say so in the first email.

From measured casesThe canonical site map contains 4,167 addresses

View cases
  • Reply within 2 hours
  • No commitment
  • We work under a contract

There is no price list on the site on purpose: the same work differs several times over between two clients, and a “from” figure explains nothing in that case. First a free audit — we count your pages, duplicates and speed — then we name the sum and the deadline and fix both in the contract.