Skip to content

Screenshot workflow measurements: what we have tested

Three local Skir export scenarios with retained file measurements. This is an initial technical dataset, not a cross-vendor ranking or a production speed guarantee.

Measured by Skir · September 10, 2026 · One observed run per scenario.

Observed export results

ScenarioFilesWorker processingZIP bytesFile checks
three-iphone-png3 PNG11.68 seconds552,2491320 × 2868; no alpha; nonblank
three-iphone-jpeg3 JPEG9.43 seconds511,9541320 × 2868; no alpha; nonblank
fifty-iphone-png50 PNG17.30 seconds9,229,5601320 × 2868; no alpha; nonblank

The times describe a local worker invocation that includes database work, rendering, ZIP creation and upload to development storage. They exclude the preceding HTTP queue request and following download. The downloadable dataset records those stages separately. One sample cannot establish a median, a percentile, a speed advantage or a service-level promise.

Input and method

  1. Run the optimized Skir production build locally, using a separate development database and private storage.
  2. Create a disposable account and seed a temporary test entitlement. No payment is taken.
  3. Create the original Daily Focus iPhone template and export its first three boards as PNG, then JPEG.
  4. Build a 50-board stress fixture by repeating the four original compositions across five locale identifiers, ten boards per identifier. The English sample copy stays unchanged.
  5. Queue through the authenticated export endpoint, invoke the actual worker processor locally, and download the finished ZIP in four-MiB ranges.
  6. Decode every output, check its dimensions, format and alpha channel, reject blank images, and record file and archive hashes.
  7. Expire the seeded entitlement, verify that paid-board export is rejected, and remove the generated account, database rows and private files.

What the 50-image case proves

For this fixture, the processor produced 50 valid image files and the authenticated range download returned the complete archive. The test also confirmed that expired access did not retain paid-board export permission. It exercises the supported export-count boundary using repeated original artwork.

It does not test 50 unrelated, complex designs, translation quality, a real paid checkout or the production Netlify worker at that volume. Locale identifiers organize the fixture; they are not translated-language evidence. A nonblank pixel check is a basic integrity check, not a complete human design review.

Separate production evidence

A separate canonical skir.app workflow completed template selection, editing, saving and three Android PNG exports through the actual background worker, followed by browser download. It also exercised a 20 MiB image upload and a synthetic 25 MiB ranged download. Those checks establish their stated behavior; they do not turn the local 50-image timing into a production result.

How a fair cross-tool study would work

Use the same three app captures, approved headlines, dimensions and revision request in every product. Record the plan, date, browser, setup time and operator familiarity. Separate active editing from waiting, count manual repairs, retain the resulting files and repeat each completed task. Mark unavailable or incomplete runs explicitly instead of scoring them as zero.

Competitor edit/export sessions have not been completed under that protocol. The tool shortlist and detailed comparisons label vendor documentation separately from tested results.

Download and inspect the evidence

The dataset contains scenario definitions, measured durations, archive hashes and 56 per-file records. It contains no customer data, credentials or invented conversion results. Report a reproducible issue through Skir support.