{"id":383824,"date":"2026-10-10T14:15:48","date_gmt":"2026-10-10T14:15:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/bulk-cogs-editor-for-woocommerce\/"},"modified":"2026-10-10T21:44:45","modified_gmt":"2026-10-10T21:44:45","slug":"bulk-cogs-editor-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/bulk-cogs-editor-for-woocommerce\/","author":15167028,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.3","requires":"6.7","requires_php":"7.4","requires_plugins":null,"header_name":"Bulk COGS Editor for WooCommerce","header_author":"Dinesh Yadav","header_description":"Allow bulk Cost of Goods Editing for products in WooCommerce.","assets_banners_color":"a9b3e3","last_updated":"2026-10-10 21:44:45","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/dineshinau\/bulk-cogs-editor-for-woocommerce","header_author_uri":"https:\/\/dineshinaublog.wordpress.com\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":79,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"dineshinau","date":"2026-10-10 21:44:45","revision":3738736}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.gif":{"filename":"icon-128x128.gif","revision":3738581,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.gif":{"filename":"icon-256x256.gif","revision":3738581,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3738581,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3738581,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3738131,"resolution":"1","location":"assets","locale":"","width":1920,"height":1080},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3738723,"resolution":"2","location":"assets","locale":"","width":1875,"height":1018},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3738723,"resolution":"3","location":"assets","locale":"","width":1920,"height":1080},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3738723,"resolution":"4","location":"assets","locale":"","width":1883,"height":975},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3738723,"resolution":"5","location":"assets","locale":"","width":1884,"height":939},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3738723,"resolution":"6","location":"assets","locale":"","width":1888,"height":1018},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3738723,"resolution":"7","location":"assets","locale":"","width":1893,"height":1023},"screenshot-8.png":{"filename":"screenshot-8.png","revision":3738723,"resolution":"8","location":"assets","locale":"","width":1886,"height":1024}},"screenshots":{"1":"<strong>The Bulk COGS Editor screen:<\/strong>  filter WooCommerce products, choose a COGS action, review the preview, and apply the update.","2":"<strong>Filter products:<\/strong> by title or SKU, category, brand, product type, stock status, price, and COGS range, then choose an action: set exact COGS, increase or decrease by a percentage or fixed amount, or clear COGS.","3":"<strong>Preview every change:<\/strong> before applying it. The paginated table shows each product's image, SKU, type, current COGS, new COGS, and the exact change, with 10, 20, 50, or 100 products per page.","4":"<strong>Choose exactly which products to update:<\/strong> Untick individual products or use \"Select all products on this page\", then apply the update only to the checked products.","5":"<strong>A confirmation dialog shows<\/strong> how many products will be changed before any COGS value is modified.","6":"<strong>The update starts in the background:<\/strong> The plugin collects the matching products and shows progress with a Cancel operation button.","7":"<strong>Live progress:<\/strong> while the batches are processed: products processed, success, skipped, and failed counts, elapsed time, and estimated time remaining.","8":"<strong>Update completed:<\/strong> final success, skipped, and failed counts, with a Refresh now link to reload the page."}},"plugin_section":[],"plugin_tags":[11143,247065,235921,230338,200768],"plugin_category":[],"plugin_contributors":[139167],"plugin_business_model":[],"class_list":["post-383824","plugin","type-plugin","status-publish","hentry","plugin_tags-bulk-edit","plugin_tags-cost-of-goods-sold","plugin_tags-product-cost","plugin_tags-woocommerce-bulk-editor","plugin_tags-woocommerce-cogs","plugin_contributors-dineshinau","plugin_committers-dineshinau"],"banners":{"banner":"https:\/\/ps.w.org\/bulk-cogs-editor-for-woocommerce\/assets\/banner-772x250.png?rev=3738581","banner_2x":"https:\/\/ps.w.org\/bulk-cogs-editor-for-woocommerce\/assets\/banner-1544x500.png?rev=3738581","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/bulk-cogs-editor-for-woocommerce\/assets\/icon-128x128.gif?rev=3738581","icon_2x":"https:\/\/ps.w.org\/bulk-cogs-editor-for-woocommerce\/assets\/icon-256x256.gif?rev=3738581","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/bulk-cogs-editor-for-woocommerce\/assets\/screenshot-1.png?rev=3738131","caption":"<strong>The Bulk COGS Editor screen:<\/strong>  filter WooCommerce products, choose a COGS action, review the preview, and apply the update."},{"src":"https:\/\/ps.w.org\/bulk-cogs-editor-for-woocommerce\/assets\/screenshot-2.png?rev=3738723","caption":"<strong>Filter products:<\/strong> by title or SKU, category, brand, product type, stock status, price, and COGS range, then choose an action: set exact COGS, increase or decrease by a percentage or fixed amount, or clear COGS."},{"src":"https:\/\/ps.w.org\/bulk-cogs-editor-for-woocommerce\/assets\/screenshot-3.png?rev=3738723","caption":"<strong>Preview every change:<\/strong> before applying it. The paginated table shows each product's image, SKU, type, current COGS, new COGS, and the exact change, with 10, 20, 50, or 100 products per page."},{"src":"https:\/\/ps.w.org\/bulk-cogs-editor-for-woocommerce\/assets\/screenshot-4.png?rev=3738723","caption":"<strong>Choose exactly which products to update:<\/strong> Untick individual products or use \"Select all products on this page\", then apply the update only to the checked products."},{"src":"https:\/\/ps.w.org\/bulk-cogs-editor-for-woocommerce\/assets\/screenshot-5.png?rev=3738723","caption":"<strong>A confirmation dialog shows<\/strong> how many products will be changed before any COGS value is modified."},{"src":"https:\/\/ps.w.org\/bulk-cogs-editor-for-woocommerce\/assets\/screenshot-6.png?rev=3738723","caption":"<strong>The update starts in the background:<\/strong> The plugin collects the matching products and shows progress with a Cancel operation button."},{"src":"https:\/\/ps.w.org\/bulk-cogs-editor-for-woocommerce\/assets\/screenshot-7.png?rev=3738723","caption":"<strong>Live progress:<\/strong> while the batches are processed: products processed, success, skipped, and failed counts, elapsed time, and estimated time remaining."},{"src":"https:\/\/ps.w.org\/bulk-cogs-editor-for-woocommerce\/assets\/screenshot-8.png?rev=3738723","caption":"<strong>Update completed:<\/strong> final success, skipped, and failed counts, with a Refresh now link to reload the page."}],"raw_content":"<!--section=description-->\n<p><strong>Bulk COGS Editor for WooCommerce<\/strong> lets you update the Cost of Goods Sold (COGS) of many products at once, right from the Products admin screen. Filter your catalog, choose an action, preview every change, and apply it in background batches.<\/p>\n\n<p>It works with WooCommerce's native Cost of Goods Sold feature, so there is nothing extra to set up beyond turning COGS on in WooCommerce.<\/p>\n\n<h4>Why use Bulk COGS Editor?<\/h4>\n\n<ul>\n<li><strong>Save time when supplier prices change.<\/strong> Raise or lower costs for a whole category, brand, or group of products in one pass instead of editing products one by one.<\/li>\n<li><strong>Preview before you apply.<\/strong> See the current COGS, the calculated COGS, and the exact change for every product. Previewing never changes your store data.<\/li>\n<li><strong>Built for large catalogs.<\/strong> Updates run in Action Scheduler batches, with live progress and the option to cancel.<\/li>\n<li><strong>Your prices stay untouched.<\/strong> The plugin only changes the Cost of Goods Sold value.<\/li>\n<\/ul>\n\n<h4>How it works<\/h4>\n\n<ol>\n<li><strong>Filter<\/strong> products by title or SKU, category, brand, product type, stock status, current price, or current COGS.<\/li>\n<li><strong>Choose an action:<\/strong> set an exact COGS, increase or decrease it by a percentage or a fixed amount, or clear it.<\/li>\n<li><strong>Preview<\/strong> the proposed changes in a paginated table.<\/li>\n<li><strong>Apply<\/strong> the update and follow the progress, elapsed time, and success, skipped, and failed counts.<\/li>\n<\/ol>\n\n<h4>Features<\/h4>\n\n<p><strong>Filtering<\/strong><\/p>\n\n<ul>\n<li>Filter by title or SKU, category, product type, stock status, brand, current price, and current COGS. Filters are combined to narrow the matching products.<\/li>\n<li>Brand filtering appears only when a public brand taxonomy is registered for products.<\/li>\n<li>Price filters use the current WooCommerce product price. COGS filters use the supported COGS API.<\/li>\n<\/ul>\n\n<p><strong>Actions<\/strong><\/p>\n\n<ul>\n<li>Set an exact COGS value.<\/li>\n<li>Increase or decrease COGS by a percentage.<\/li>\n<li>Increase or decrease COGS by a fixed amount.<\/li>\n<li>Clear COGS.<\/li>\n<li>Values use store decimal precision with half-up rounding, and decreases stop at zero.<\/li>\n<\/ul>\n\n<p><strong>Preview and selection<\/strong><\/p>\n\n<ul>\n<li>Review matching products in a paginated table with product images, edit links, current and calculated COGS, and the change.<\/li>\n<li>Choose 10, 20, 50, or 100 products per page. The default is 20.<\/li>\n<li>Changing the action or its value refreshes the preview automatically.<\/li>\n<li>Select or clear all products on the current preview page. Selections are kept across preview pages, and selected-only updates support up to 500 products.<\/li>\n<\/ul>\n\n<p><strong>Safe background processing<\/strong><\/p>\n\n<ul>\n<li>Updates are processed in Action Scheduler batches.<\/li>\n<li>View progress, elapsed time, estimated remaining time, and success, skipped, and failed counts. The estimate appears once processing has started.<\/li>\n<li>Cancel at any time. Updates that already completed are kept.<\/li>\n<li>Product matching uses bounded ID batches to limit memory use.<\/li>\n<\/ul>\n\n<p><strong>Product types<\/strong><\/p>\n\n<ul>\n<li>Uses WooCommerce CRUD APIs for simple, variable, grouped, external, and custom product types, and for variations.<\/li>\n<li>Variations are treated as separate records, and variable parent products are not changed when only variations are selected.<\/li>\n<\/ul>\n\n<p><strong>Good to know<\/strong><\/p>\n\n<ul>\n<li>Relative actions (percentage or fixed amount) skip products whose COGS is not set. Use \"Set exact\" to add costs to those products.<\/li>\n<li>WooCommerce's product COGS API converts a value of zero to empty. Clearing uses the API's null value.<\/li>\n<\/ul>\n\n<h4>Use cases<\/h4>\n\n<ul>\n<li><strong>Supplier price change:<\/strong> filter the affected products by category or brand, preview a percentage or fixed increase, then apply it to the matching products.<\/li>\n<li><strong>Correct a specific group of products:<\/strong> find products by title or SKU, select the ones to change, preview exact COGS values or clear them, then confirm the update.<\/li>\n<li><strong>Add missing costs:<\/strong> use \"Set exact\" to give a COGS value to products that do not have one yet.<\/li>\n<\/ul>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>WordPress 6.7 or later<\/li>\n<li>WooCommerce 10.3 or later<\/li>\n<li>PHP 7.4 or later<\/li>\n<li>WooCommerce Cost of Goods Sold feature enabled in WooCommerce settings<\/li>\n<\/ul>\n\n<p>If Cost of Goods Sold is unavailable or disabled, the editor is turned off and explains what is needed.<\/p>\n\n<h4>Privacy<\/h4>\n\n<p>Bulk COGS Editor for WooCommerce does not send product, customer, order, or store data to external services. All COGS calculations and updates are performed locally on your WordPress\/WooCommerce installation.<\/p>\n\n<h4>Developer resources<\/h4>\n\n<p>Bulk COGS Editor for WooCommerce is open-source software and is made to be extended. The source code is available in the <a href=\"https:\/\/github.com\/dineshinau\/bulk-cogs-editor-for-woocommerce\">GitHub repository<\/a>.<\/p>\n\n<h4>Connect with the developer<\/h4>\n\n<ul>\n<li><a href=\"https:\/\/dineshinaublog.wordpress.com\/\">Website<\/a><\/li>\n<li><a href=\"https:\/\/www.facebook.com\/dineshinau\/\">Facebook<\/a><\/li>\n<li><a href=\"https:\/\/x.com\/dineshinau\/\">X<\/a><\/li>\n<li><a href=\"https:\/\/www.linkedin.com\/in\/dineshinau\/\">LinkedIn<\/a><\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to the <code>\/wp-content\/plugins\/bulk-cogs-editor-for-woocommerce<\/code> directory, or install the plugin through the WordPress Plugins screen.<\/li>\n<li>Activate the plugin through the Plugins screen in WordPress.<\/li>\n<li>Make sure the Cost of Goods Sold feature is enabled in WooCommerce settings.<\/li>\n<li>Go to Products &gt; Bulk COGS Editor in the WordPress admin menu.<\/li>\n<li>Filter your products, choose an action, preview the changes, then confirm to apply them.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20do%20i%20bulk%20update%20cost%20of%20goods%20sold%20%28cogs%29%20in%20woocommerce%3F\"><h3>How do I bulk update Cost of Goods Sold (COGS) in WooCommerce?<\/h3><\/dt>\n<dd><p>Go to Products &gt; Bulk COGS Editor, filter the products you want to change, choose an action (set exact, increase or decrease by a percentage or fixed amount, or clear), review the preview, and confirm. Updates are applied in background batches.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20work%20with%20woocommerce%27s%20native%20cost%20of%20goods%20sold%20feature%3F\"><h3>Does this plugin work with WooCommerce's native Cost of Goods Sold feature?<\/h3><\/dt>\n<dd><p>Yes. Bulk COGS Editor is designed specifically for WooCommerce's native Cost of Goods Sold (COGS) feature. COGS must be supported by your installed WooCommerce version and enabled in WooCommerce settings. If it is disabled or unavailable, the editor explains what is required.<\/p><\/dd>\n<dt id=\"which%20woocommerce%20version%20do%20i%20need%3F\"><h3>Which WooCommerce version do I need?<\/h3><\/dt>\n<dd><p>WooCommerce 10.3 or later, with the Cost of Goods Sold feature enabled in WooCommerce settings.<\/p><\/dd>\n<dt id=\"can%20i%20increase%20all%20product%20costs%20by%20a%20percentage%3F\"><h3>Can I increase all product costs by a percentage?<\/h3><\/dt>\n<dd><p>Yes. Filter the products you want, choose \"Increase by percentage\", enter the value, and review the preview before applying. You can also decrease by a percentage, or increase or decrease by a fixed amount.<\/p><\/dd>\n<dt id=\"can%20i%20preview%20changes%20before%20applying%20them%3F\"><h3>Can I preview changes before applying them?<\/h3><\/dt>\n<dd><p>Yes. You can preview all proposed cost changes in a paginated table showing product images, current COGS, calculated COGS, and the exact difference before confirming any update. Previewing never modifies your store data.<\/p><\/dd>\n<dt id=\"how%20does%20the%20plugin%20handle%20variable%20products%20and%20variations%3F\"><h3>How does the plugin handle variable products and variations?<\/h3><\/dt>\n<dd><p>Variations are treated as individual product records. You can filter and update COGS on variations directly, and variable parent products will not be changed when only variations are selected and updated.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20products%20without%20a%20cogs%20value%20during%20relative%20adjustments%3F\"><h3>What happens to products without a COGS value during relative adjustments?<\/h3><\/dt>\n<dd><p>Relative actions (percentage and fixed amount increases or decreases) skip products that do not have a COGS value set. To assign costs to those products, use the \"Set exact\" action.<\/p><\/dd>\n<dt id=\"can%20i%20safely%20update%20large%20catalogs%20without%20timing%20out%3F\"><h3>Can I safely update large catalogs without timing out?<\/h3><\/dt>\n<dd><p>Yes. Updates are processed in background batches via Action Scheduler. You can monitor live progress, elapsed time, and estimated remaining time, and you can cancel processing at any time without losing already completed updates.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20modify%20product%20prices%3F\"><h3>Does this plugin modify product prices?<\/h3><\/dt>\n<dd><p>No. The plugin only modifies the WooCommerce Cost of Goods Sold value.<\/p><\/dd>\n<dt id=\"does%20it%20use%20an%20external%20service%3F\"><h3>Does it use an external service?<\/h3><\/dt>\n<dd><p>No. The plugin processes product data on your WordPress\/WooCommerce installation.<\/p><\/dd>\n<dt id=\"where%20can%20i%20give%20feedback%3F\"><h3>Where can I give feedback?<\/h3><\/dt>\n<dd><p>If you have a suggestion to improve the plugin, please <a href=\"https:\/\/github.com\/dineshinau\/bulk-cogs-editor-for-woocommerce\/issues\/\">open an issue<\/a> on GitHub or use the support forum on WordPress.org.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0 (2026-10-10)<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Bulk update WooCommerce Cost of Goods Sold (COGS). Filter products, preview changes, and apply cost updates in safe background batches.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/383824","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=383824"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/dineshinau"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=383824"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=383824"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=383824"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=383824"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=383824"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=383824"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}