Updating 10,000 Products from a WebToffee-format CSV
Deterministic repeat, Super Speedy Imports Pro 2.86.0: 16.450 seconds to change 2,500 products, add 1,000 and remove 1,000 omitted originals. During the run, CPU averaged 43.51%, RAM averaged 956.7 MiB and disk activity averaged 8.82%. After subtracting the measured baseline, the job used 0.4346 vCPU-minutes, 1.441 seconds of disk-busy time and 162.782 MiB of writes. The repeat ran on WordPress 7.0.3 and WooCommerce 11.0.0, as stated on the comparison page. Inspect the measured result. The earlier recorded run and video remain below as separate evidence.
Earlier run, Super Speedy Imports Pro 2.83.0: processed the 10,000-row synchronisation feed in 20.019 seconds by browser wall time. It changed the intended 2,500 products, inserted 1,000 new products and moved the 1,000 products omitted from the feed to Trash. WebToffee Free took 488.235 seconds while retaining the omitted products, so SSI was 24.388× faster in this earlier run despite doing the additional removal work.
Earlier run summary
| Metric | Earlier run, Super Speedy Imports Pro 2.83.0 |
|---|---|
| Browser wall time | 20.019 s |
| Plugin total | 19.046 s |
| Throughput | 499.525 feed rows/s |
| Existing rows processed | 9,000 |
| Products with changed test values | 2,500 |
| New products | 1,000 |
| Missing products moved to Trash | 1,000 |
| Final state | 10,000 published, 1,000 in Trash |
| Plugin peak memory | 40 MB |
| Speed-up vs WebToffee Free | 24.388× |
Same exact source file
SSI received the same update-webtoffee.csv bytes used for WebToffee Free. The remote upload receipt matched SHA-256 43df664ec47e188443b6fbb4e978808c37c52f6935865ff1d95df9b47ca85b26 before the run. SSI’s WebToffee recogniser auto-configured the product fields and matched existing products by SKU.
See the WebToffee Free update result or the direct comparison.
Stage timings (earlier 2.83.0 run)
| Stage | Duration |
|---|---|
| Load CSV | 5.117 s |
| Match existing products | 0.253 s |
| Handle duplicate slugs | 2.674 s |
| Update posts | 0.099 s |
| Insert posts | 0.121 s |
| Update postmeta | 1.292 s |
| Insert postmeta | 0.483 s |
| Upsert taxonomy relationships | 0.837 s |
| Finish product attributes | 3.635 s |
| Process variable-product data | 0.286 s |
| Process deletes | 0.077 s |
| Delete missing items | 0.076 s |
| Reported stage sum | 15.627 s |
| SSI total | 19.046 s |
Environment (earlier 2.83.0 run)
| Component | Value |
|---|---|
| Server | Hetzner benchmark VPS, 4 vCPU, 8,121,954,304 bytes RAM |
| Stack | PHP 8.2.33, MariaDB 10.11.18, WooCommerce 10.3.8 |
| Isolation | Hetzner snapshot 390805640 restored before each plugin |
| Dataset | The exact same CSV bytes were supplied to both plugins |
| Images | None, so the test isolates CSV parsing and WooCommerce data writes |
Correctness and background housekeeping
Value-level queries confirmed exactly 2,500 intended changes, 1,000 additions and zero omitted originals still published. WooCommerce had 10,000 published product-meta lookup rows and 20,000 published product-attribute lookup rows once its background housekeeping had cleared. That post-completion wait was not timed and is not included in the earlier run’s 20.019-second time.

Post-import catalogue evidence
These screenshots were taken in the earlier 2.83.0 run, immediately after the plugin reported completion. They show the WooCommerce product total, category and brand counts, global attributes, and the colour and size term counts.






Reproduce
Download the complete reproduction bundle.
Disclosures
- The completion counter says 9,000 products updated because 9,000 feed rows matched existing products. Independent value checks found exactly 2,500 products whose test values changed.
- The completion interface displayed the import’s stored reference filename, but the REST run used the selected update-file override. Its uploaded hash and the measured catalogue changes prove the source file used.
- The delete-missing setting was labelled as permanent delete, but the measured result was 1,000 products moved to Trash. This page reports the measured behaviour.

Comments