Product catalog in Meta: a feed that holds ads and a store
Setting up your Facebook product catalog isn't a button in Commerce Manager, it's a download from your database plus the rules by which it's updated. We take the source where the prices and balances actually live, map the product ID to what the pixel is transmitting, and associate the variants with a grouping field. A catalog compiled in a different way will also start - just dynamic ads will show the wrong items, but the reports will look normal. The term of work is 4–14 working days.
items at the level of size and color, underwear store (08/01/2026)
50
Defect of the same directory
out of 150 random product addresses return a 301 for a different size or color
data verification for directory, 2-4 working days, free of charge
Before the estimate
approval of all items — part of the decisions remains at the site
What we do not promise
Process steps
Transparent stages with approval at every step
Total duration:4–14 days
1
Data and source verification
2-4 working days, free of charge
Let's see where the price and balance come from, what fields are already there, how the options are set, what the pixel transmits in the events. The result is a document based on which the estimate is calculated.
2
Assembling or finishing the feed
1-4 working days
Let's map the fields of your system to the fields of the directory, add conversion rules for what is missing. We take the existing export for another site as a basis, and do not rewrite it.
3
ID, grouping, image
1-3 working days
We combine the product identifier with site events and check the match selectively by category. We turn on the option grouping field, filter out the images that will not pass.
4
Product sets and exclusion rules
1-2 working days
We form sets by rules, not by hand: category, price, availability, margin. Separately, we close the things that do not need to be advertised - the archive and items with restrictions.
5
Connection, error analysis, transmission
1-2 working days
We start the catalog in the campaign and in the trade marks, we are waiting for the first full update, we are reading the dispatcher. We correct mass errors, we give individual ones a list with an explanation of what to do with them.
Technologies & integrations
What we build on and what it connects to
Stack
Commerce Manager is a catalog manager and deviation log. Limit: shows the consequence, the cause is searched for in the feed and on the site.
The XML / CSV commodity feed is what the platform reads. Limit: gives the state at the time of export, between runs the price lags behind the site.
Field conversion rules — save when a brand or state is not in the database. The limit: you can make up the format, but not the data.
Option grouping box — combines sizes and colors into one card. The limit: without a common model code, first order in the base.
Sets of goods by rules — are updated by themselves. Limit: the rule sees only those fields that are actually in the feed.
Meta Pixel and Conversions API — provide events on which dynamic ads are based. Limit: they don't fix directory data.
Update background tasks - keep the schedule. Limit: on tens of thousands of items, the run loads the server.
Integrations
Meta Commerce Manager
Instagram Shopping
Meta Pixel
Conversions API
Google Merchant Center
accounting system of prices and balances
What's included
Complete list of work and what you get as a result
Pulling a feed from your system or plugging in an existing dump — the catalog updates itself, no manual file required
Filling in mandatory fields: identifier, name, description, link, image, availability, condition, price, brand — the item without one of them does not enter the catalog
Matching the product ID with what the site events convey - dynamic ads show the exact product viewed, not the neighboring product
Grouping options by size and color with a single field - the model is shown once, not ten times, in the ribbon
Product sets by rules: category, price range, availability, margin — campaigns work with the right part of the catalog, not the whole
Rules for excluding items that do not need to be advertised - archive, related trifles and goods with restrictions do not eat impressions
Update schedule and checking that changes are coming — no price that is no longer on the site remains in the ad
Connecting the catalog to dynamic campaigns and to trademarks in publications
Analysis of errors in the directory manager with a division into mass and individual ones - you can see what is treated by one rule, and what is corrected in cards
Transfer: access remains with you, written instructions in case of new deviations
When this service isn't right
What's not included — so there are no surprises at delivery
Running advertising campaigns and advertising budget is a separate service
Reshooting product photos according to image requirements
Writing titles and descriptions for the entire catalog
Verification of commercial activity at the site
Guarantee of approval of all items — part of the decisions remains behind the site
Who it's for
Situations where this service delivers results
Scenario 1 of 5
Advertising is already running in Meta, there is no dynamic one
Campaigns run on banners made by a designer, and showing a specific model to a specific person is nothing. The catalog is exactly the layer that is missing: without it, product formats are unavailable, no matter how many events there are on the site. The work begins not with the office, but with the question of where to get the price and balance in machine form.
We'll review your situation in a free audit
Scenario 2 of 5
Each size and color is a separate item in the database
The lingerie store we measured is set up exactly like this: 115,456 product items, 80B, 75E, XL, 36-41 are visible in the labels. The catalog holds such a volume. But without the grouping field, the buyer will receive one model in the tape in eight cards in a row, and the budget will be divided between them. Here, grouping is not an improvement, but a condition for the ad to read as an ad.
Scenario 3 of 5
Product tags in posts and a profile section are required
You are not planning dynamic advertising yet, but you want to sell from your profile. This is the same catalog: it is impossible to mark a product in a publication without it. The volume of work is smaller - campaign sets are not required - but the requirements for images and mandatory fields are the same.
Scenario 4 of 5
Export for another site is already working
In the measured store of garden tools, Meta Pixel and the Rozetka site are at the same time - that is, the feed from the catalog is already going somewhere. This saves a step: we take the existing download as a basis and modify it to meet the requirements of the Meta, instead of building a second one from scratch. What exactly will have to be completed can be seen on the inspection.
Scenario 5 of 5
The assortment moves daily
Items appear and disappear, prices change in batches. It is possible to advertise from such a warehouse, if the feed is generated automatically and hides goods without a balance. A manual file at this rate becomes obsolete in the second day, and the advertising budget pays for it.
Feed from your system vs manual file
How this option differs from the alternative
A file compiled by hand or downloaded onceOur approach
Price and availabilityare fixed at the moment of export and diverge the faster the livelier the compositionpulled from the same source as on the site, according to the schedule
Size and color optionseach version lives separately, in the tape one thing is repeated several times in a rowfield-related groupings — the model is shown with one card
Product identifieris often taken from a file line, so after reassembly, the product reads as newthe same as in site events - dynamic ads show viewed
Selection of products for the campaignor the entire catalog in one piece, or lists that must be kept by handsets according to the rules, update themselves
Reaction to deviationsa list in the manager, which is opened when the campaign no longer spends the budgetthe journal is divided into mass and single causes, mass ones are treated as a rule
Free Data Checker for Meta Directory
The catalog is the basis for both dynamic advertising and trademarks in publications. The check shows how many items will pass without editing and which fields will have to be completed on the site side.
What we measure
Data sourceReady-made feed, export for another platform, platform connection or manual file. The entire estimate depends on this answer. A special case that we have already encountered: in a cosmetics store with 5,561 products, the regular feed of the engine gives HTTP 200 with a body of zero bytes - the source formally exists, but there is no data in it.
Mandatory fieldsID, Name, Description, Link, Image, Availability, Condition, Price, Brand. One thing is missing - the position does not pass, and in the dispatcher it looks like a general import error.
Site ID and eventsLet's see what exactly the pixel transmits in the view and add to cart events and if this value is found in the catalog. In a lingerie store, the remarketing module sends the product_id to several systems at once — this is the value that should become the identifier in the feed.
Product optionsSizes and colors must be linked by a grouping box. We check whether there is a common model code in the database, or whether it will have to be derived from the article.
ImageAspect ratio, size, overlay text and watermarks. In product formats, the requirements are stricter than in regular ads, and deviations here come in whole groups.
Update frequencyHow quickly price and availability changes get into the catalog — and whether the server can handle the required generation rate. The catalog, which is updated once a week, advertises something that does not exist.
What you get
Evaluation of the share of the catalog that will pass without editing.
List of missing fields and where to get them in your system.
The scheme of grouping options for your catalog.
Conversation for 30 minutes on the document.
Timeline: 2-4 working days
Why is it free
Because the catalog with defects does not fall with an error - it just works worse, and it is almost impossible to see this from the campaign reports.
What's next
We give an estimate by stages: separate assembly or reconstruction of the feed, separate sets of goods, separate connection to campaigns. You can see exactly what you are paying for.
Short form: your contact and site URL
Did not find your case?
Describe how it works on your side — we will tell you whether “Catalog of products in Meta” fits and what it means in your situation. No brief and no call: one question, one answer.
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
Where does the feed come from?A store that is already export for another site, and a store where there is no machine file at all, is a different volume of work for the same number of products. That's the difference between four days and two weeks.
How many fields will have to be completedThe brand and condition of the goods are often simply not kept in the database. One field that needs to be extracted from a category or article is a conversion rule; five such fields are already work on the catalog on the side of the site, and not on the feed.
As established optionsIf there is a common model code in the database, grouping is enabled by one field. If the sizes and colors have nothing to do with each other, the common key has to be extracted from the article and checked selectively — in a catalog of a hundred thousand items, it is a separate line of the estimate.
Image statusPhotos on a uniform background without superimposed text pass as is. Pictures with a logo, a discount stamp or a collage of several products are rejected in groups, and the feed does not save here - you need to replace the files, and this is no longer our area.
The refresh rate is requiredOnce a day is a scheduled task. Several times a day, a large catalog hits the server: the generation of tens of thousands of items puts a significant load on it. Then we do a partial update of only prices and balances, and this is a separate volume.
Cases
Tasks and results in numbers — all metrics measured by us
online retail underwear store with a catalog of over 110,000 items
Task
Maintain a catalog where each size and color is listed under a separate item, in a condition suitable for product advertising.
Solution
OpenCart 3, sitemap index with 42 submaps, three language versions. Remarketing module transmits product_id to Google Ads and Facebook, GA4 ecommerce events are enabled.
Result
Measured on August 1, 2026: 115,456 product items, the figure was confirmed by two independent methods with a difference of 2.4%; 129 categories and 334 brands. The labels show 80B, 75E, XL, 36-41 - this is the level of size and color, not models, and without a grouping field, such a catalog gives double impressions. Defects that are critical for the catalog: out of 150 random product addresses on the sitemap, 50 return 301, and all 50 lead to a different position — a different size or color; on the main 118 img tags, and none are in WebP format.
the official online store of garden tools of the world brand
Task
Show the case when the goods are already unloaded and the only question is what to finish under Meta.
Solution
OpenCart 3.x under nginx with HTTP/2 and HSTS, two language versions. Meta Pixel and the Rozetka platform are connected together, eight payment methods and four carriers are in the checkout.
Result
Measurement 07/31/2026: the site map has 33,493 records for 8,690 unique addresses — about 8,600 product cards and 81 category nodes. The pixel on the site is on, the upload to the site is working: half of the way to the catalog has already been completed. A defect that would also reach the feed: only the Ukrainian-language branch was included in the site map, there is no Russian version in it - it is not possible to take product addresses from there without verification.
online store of professional cosmetics, catalog of over 5,000 items
Task
Find out why there is nothing to collect from the catalog, although the store is open and the assortment is full.
Solution
OpenCart 3 for nginx, catalog by brands and types of means, Organization micromarkup and PostalAddress. Checked from the outside: site map, regular feed, counters, main layout.
Result
Measured on 07/31/2026: 5,561 products in the live catalog - counted by regular OpenCart search, 55 pages of 100 items plus 61 for the last one. TTFB 801.2ms at 153.8KB HTML. It is critical for the Meta directory: /sitemap.xml and the regular feed of the engine give HTTP 200 with a body of zero bytes, and there is no counter on the main one - no GTM, no gtag, no pixel. That is, no data source, no events with which to check the identifier: both halves of the work would have to start from scratch.
What we need from you
We can't start without this — best to prepare in advance
1Access to business account and Commerce Manager.
2Access to the site and admin to build or edit the feed.
3Articles and identifiers used in site events.
4List of categories that are not included in the catalog.
5Balance data: where it comes from and how often it's updated.
6Verified domain in business account settings.
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
Is it possible to take the same feed as Google?
As a source - yes, as a finished file - mostly no. The sets of mandatory fields are different, the format of part of the values is also different, the requirements for images in commodity formats are different. We build one layer of export from your system, and from it we make two feeds. Then prices and availability remain consistent, and one location must be maintained. In the measured store of garden tools, export to the site already works together with the pixel - this is the case that saves the stage of work.
Why group product variants?
So that eight sizes of the same model do not look like eight different products. Without grouping, the catalog swells, duplicates appear in the shows, and a person sees the same thing several times in a row and stops noticing it. The lingerie store we measured is established exactly at the level of size and color: 115,456 items, in sizes 80B, 75E, XL, 36-41. For the catalog, this means a mandatory grouping field — and the question on the check is as follows: is there a common model code in the database, or will it have to be derived from the article.
What are product bundles and why do they exist?
These are subsets of the catalog targeted by individual campaigns: New Arrivals, Sale, High Margin Category, In-Stock Items. Without bundles, each campaign works with the entire catalog, and the budget is spread evenly where it is equally harmful. We build sets of rules so that they are self-updating. A fair limit: the rule sees only those fields that are actually in the feed — there is usually no marginality there, and if you divide the catalog by it, you must first start this field.
How often should the catalog be updated?
As often as prices and balances change. For a store with a mobile warehouse, this is several times a day. There is a technical limitation here, which it is better to learn about before setting up: generating a feed for tens of thousands of items loads the server, and it is not possible to do it every hour on every hosting. We measure how long a full run lasts, and if it is long, we split it: a full reassembly at night, and only price and availability are updated during the day.
Why does dynamic advertising show the wrong product that a person was looking at?
The reason is almost always the same: the ID in the site events is not the same as in the directory. The pixel transmits the internal code, there is an article in the feed - there is no match, and the system substitutes what it finds. It looks harmless: the campaign is working, impressions are running, reports are filled. Our recommendation before any catalog build: open the product card, see what value goes in the view event, and find it in your price. If not found, this is the first thing to fix, and no server event exchange will fix it.
Some goods have been rejected. What to do with it?
First, divide into mass and individual causes. Mass ones are almost always treated by the same rule: there is no margin, the price format is wrong, the image is not the right proportions. Individual ones are mainly substantive objections to specific items, and here the decision is left to the site. We honestly separate these two groups in the report, because only the first is completely in our zone. We do not give a guarantee that all items will be passed - it cannot be given by anyone who does not make this decision.
Do we need a catalog if we do not do dynamic advertising?
It is needed both for product marks in publications and for the product section in the profile — without it, it is impossible to mark the product. But if you don't plan on either, the catalog is really redundant, and we'll say so. It makes no sense to sell a setup that will sit idle; when the need arises, the amount of work will not increase from waiting.
Our products appear and disappear every day. Is it really supportable?
Realistically, if the feed is generated from your system automatically, and not collected by hand. A manual file on a fast assortment becomes obsolete on the second day, and the advertising budget pays for it: a person clicks, gets to a product that does not exist, the click has already been paid for. We build an offload on the side of the site and set a rule that hides items without a balance. A fair limit: the accuracy of the catalog is equal to the accuracy of your balances - if there is a resort in the account, the feed will accurately and quickly show exactly it.
Submit your website address and tell us where you get your prices and balances from.
The answer is an estimate of how many items will pass without edits, a list of fields that are missing, and a scheme for grouping options. If you do not need the catalog right now, you will hear about it in the first email.
From measured casesMeasurement 07/31/2026: the site map has 33,493 records for 8,690 unique addresses
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.