A WooCommerce product feed is a structured file — XML, CSV, TSV, TXT, or JSON — that lists your products and their details (title, price, image, availability, and more) in the exact format a marketing channel expects. Google Merchant Center, Meta Commerce Manager, Pinterest, Bing, TikTok and dozens of other channels read that file to show your products in shopping ads and listings, and CTX Feed ships more than 90 ready-made channel templates for them. This guide shows you how to build one with CTX Feed on the Make Feed screen, from picking a channel to handing the finished feed URL to your marketing platform. Creating feeds is a free feature — no license required.
Before you start
Make sure your store already has published WooCommerce products with the basics filled in: a title, a price, and a featured image at minimum. The richer your product data, the fewer warnings a channel like Google will raise later. You do not need any coding or XML knowledge — CTX Feed builds the file for you.
Open the Make Feed screen
In your WordPress dashboard, open CTX Feed, then choose Make feed under Feeds in the plugin’s menu. You can also click Make Feed from the top-right of the Manage Feeds screen. The Make Feed screen has two parts: a Feed settings card on the left where you define the file, and a Channel info rail on the right that shows the selected channel’s specification, video walkthrough, and accepted file types once you pick one.
Step 1: Configure the feed settings
Fill in the Feed settings card. Required fields are marked with a red asterisk. If you click Save with one of them empty, every missing field is outlined in red at once and the page scrolls to the first one. One missing field gets its own message (for example, “Please enter a file name.”); two or more are listed together.
- Country — required. The target market for this feed; CTX Feed pre-selects your WooCommerce store country. The country sets the tax rate and the shipping zones the feed uses, so choose the country your shoppers are in. A feed cannot be saved without it: tax-inclusive prices and shipping costs would be wrong.
- Template — this is where you choose your marketing channel. Search for and select the channel you are feeding, such as Google Shopping, Facebook (Meta), Pinterest, or Bing. Picking a template loads that channel’s required attributes automatically, and the Channel info rail fills in with the channel’s spec and docs. Custom Template 1 lets you define your own columns when no preset channel fits; Custom Template 2 (XML), a CTX Feed Pro template, lets you write your own XML body.
- File name — a name for the generated file (for example,
google-shopping-us). Use letters, numbers, and hyphens; this becomes part of the public feed URL. - File type — the output format. CTX Feed pre-selects the format the channel prefers and lists every format that channel accepts (for example, Google accepts XML and CSV/TSV/TXT). Choose the one your channel documents.
- Delimiter, Enclosure & UTF-8 BOM — these appear only for delimited formats (CSV, TSV, TXT). Delimiter and enclosure are required. The delimiter is the character between columns (comma by default), the enclosure wraps each value (double quote by default), and Add UTF-8 BOM helps spreadsheet apps like Excel read the file as UTF-8. The defaults are correct for almost every channel — leave them unless the channel says otherwise.
- Include variations — required. Controls how variable products are exported: All Variations, Variable Products (Parent), Default Variation, Cheapest Variation, Expensive Variation, First Variation, Last Variation, or Variable + Variations. When you pick Variable Products (Parent) or Variable + Variations, two extra selects appear — Variable price and Variable quantity — so you can decide which variation’s price and stock the parent row reports.
- Sort feed by (optional) — the order products are written to the file (date, title, menu order, random, and so on). Leave it on the default to keep the stable product-ID order. Once you pick a sort field (other than Random), a Sort direction select appears next to it.
- Feed Language and Feed Currency — Feed Language appears only when a multilingual plugin (WPML, Polylang, TranslatePress) is active; Feed Currency only when a multi-currency plugin (a currency switcher) is active. Generating a feed in a specific language, or with prices converted to another currency, needs CTX Feed Pro; on Free the fields are shown but locked.
- Vendors — appears only when a multi-vendor plugin (Dokan, WC Vendors, WCFM Marketplace, MultiVendorX or YITH Multi Vendor) is active. Pick a vendor to limit the feed to their products; leave it empty for the whole catalogue.
- Items wrapper, Single item wrapper and Extra header — appear only when Template is Custom Template 1; the two wrappers are required. They name the XML element around the whole list, the element around each product, and any extra lines (such as a namespace) after the XML declaration. See How to configure XML.
- Update interval — how often CTX Feed automatically rebuilds this feed: Every 1 Hour, 6 Hours, 12 Hours, 24 Hours, or Every Week. CTX Feed Pro adds Every 5, 15, 30 and 45 Minutes; choosing 5 or 15 minutes asks you to confirm, because rebuilding a large catalog that often adds real load to your server. This drives the auto-update schedule (see How to set up cron for automatic feed updates).

- Country — the target market that sets the feed’s currency and tax rules.
- Template — the marketing channel you are feeding, which loads that channel’s required attributes.
- File type — the output format the channel accepts (XML, CSV, TSV, TXT, or JSON).
- Include variations — how variable products are exported (all variations, parent only, or a combination).
- Feed Language — shown only with a multilingual plugin; needs CTX Feed Pro.
- Feed Currency — shown only with a multi-currency plugin; needs CTX Feed Pro.
- Update interval — how often CTX Feed automatically rebuilds the feed.

Step 2: Map your feed attributes
Below the settings, the Config tab holds the attribute table — the heart of the feed. Each row maps one channel attribute (the field name the channel expects, such as id, title, price, or image_link) to a value from your store, plus an optional output format.

- The tab bar — Config, Filters, Advanced filters, FTP / SFTP, and Report.
- The attribute mapping table — each row pairs a Channel attribute with a Source, Value, and Output.
When you selected a preset channel in Step 1, CTX Feed preloads the required rows for you, so most feeds are ready without touching this table. On a new Google Shopping feed, adding a row and picking the Shipping channel attribute also maps it to Shipping (Google Format) and adds four editable rows for the minimum and maximum transit and handling times (in days), because Google only accepts those inside the shipping block; picking Shipping Label maps it to the product’s Shipping Class. To adjust the table:
- Channel attribute — the left column names the output field. For preset channels these are fixed to the channel’s spec; for Custom templates you type your own column names.
- Value — choose where the data comes from. Switch the source between Attribute (pull a value from a WooCommerce field like Title, Regular price, or SKU) and Text (type a fixed value that is the same for every product).
- Output — an optional format for the resolved value.
- Prefix / suffix / command — expand a row to prepend or append text (for example, adding a currency suffix), or to build an output command for advanced formatting.
- Use Add attribute to insert a new row, the row icons to duplicate or delete a row, Leave Load template defaults alone in normal use: it replaces every row with the channel’s default mapping and discards your changes, so use it only to recover a mapping that has gone wrong.
Step 3 (optional): Filters, FTP, and report
The remaining tabs fine-tune the feed:
- Filters — narrow which products reach the feed. On Free you can set Product status (which WooCommerce statuses are exported), the shipping and tax country scope, and campaign (UTM) URL parameters. The Product eligibility toggles (out-of-stock, backorder, hidden, missing image/price/description), Product categories, Specific products, Composite product price, the number format and text replacement are shown but locked without CTX Feed Pro.
- Advanced filters — build conditional rules (combine conditions with AND / OR) to include or exclude products. A CTX Feed Pro feature.
- FTP / SFTP — automatically upload the generated file to a remote server after each run, if your channel pulls from FTP instead of a URL. Use Test connection before saving; if the remote folder you typed does not exist, the file is uploaded to the server’s root folder instead of being dropped.
- Report — a per-feed report is planned; the tab currently shows a “coming soon” notice.
Step 4: Save and generate
Use the buttons in the footer bar:
- Save draft saves your configuration and keeps you on the page, so you can carry on editing. The file is still built in the background after the save, so the feed has a file as soon as you first save it.
- Save & generate saves the feed, starts building the file, and returns you to Manage Feeds, where the row shows the progress and turns green for a moment when it is done. Choose this when the feed is ready.
- Cancel leaves without saving. An Unsaved changes chip reminds you when edits are pending.
Small catalogs finish in a few seconds. Large catalogs build in the background (via WooCommerce Action Scheduler) and show a progress bar in the feed list, so you can keep working while they run.
Step 5: Get the feed URL and submit it to your channel
Once generation finishes, open Manage Feeds. Your new feed appears as a row with a Feed URL — click the copy button to copy it. That URL is what you paste into your marketing channel:
- Google Merchant Center — Products → Feeds → add a Scheduled fetch feed and paste the URL.
- Meta Commerce Manager — Catalog → Data sources → Use a URL and paste the URL.
- Other channels have a similar “add feed by URL” step in their catalog settings.
The channel then fetches fresh product data from that URL on its own schedule. Keep the CTX Feed Auto Update toggle on for that feed so the file always reflects your current catalog.
Troubleshooting
- “Please fill in the required fields: …” — one or more of Country, Template, File name or File type is empty. The missing fields are outlined in red and the page scrolls to the first one.
- “Please select a country. It sets the tax and shipping market for the feed…” — the feed needs a target country for tax and shipping; pick one and save again.
- “Please add the custom template markup.” — a Custom Template 2 (XML) feed has an empty body; write the XML for one product and save again.
- “Mapping incomplete — row N is missing: …” — an attribute row is half filled in. Complete it or delete it.
- “Please add at least one attribute mapping.” — the Config tab is empty. Pick a preset template or use Load template defaults / Add attribute to add rows.
- A save warning about the output folder not being writable — the config saved, but generation may not produce a file. Fix the write permissions on
wp-content/uploads/woo-feed/and regenerate. - Products look out of date in the feed — run Clear Cache on Manage Feeds, then regenerate the feed.
- The channel rejects some items — open the channel’s spec from the Channel info rail and confirm the required attributes (GTIN, brand, condition, and so on) are mapped and populated on your products.
Related guides
- Manage Feeds
- How to set up cron for automatic feed updates
- How to enable debug mode and download logs
- Introduction to CTX Feed plugin settings

How can I add attributes to an “Items Wrapper”?
Hi, Can you please explain it?
Hello,
My name is Alexandru and I use CTX Feed.
I need to make a feed with > sign delimiter for aditional image. How can I do that?
Thank you!
Hi,
Please, contact our technical support team from here – https://webappick.com/contact/
Hi, am I able to set a second Item Wrapper? If so how does it work?
Thanks.
Hi EG,
To add a second item Wrapper, you need to use Custom Template 1 where you will find the option to add custom item Wrappers. However, in the pro version, there is a template option (Custom Template 2) which will enable you to create a template with any wrapper you want. Know more about custom template from here – https://webappick.com/docs/ctx-feed/configuration/custom-template-2-php-pattern/
Thank you,