TikTok Shop serves product photos from image servers such as p16-oec-va.ibyteimg.com and p16-oec-general-useast5.ttcdn-us.com. The end of each address sets a size, a crop and a format. Swap it for origin-image.image and the server sends the full-size photo. This guide is for sellers getting their own listing photos back, and for dropshippers with the owner's permission to reuse theirs.
The Seller University help pages I read offer no way to download your image files. What they cover:
A product photo address looks like this:
https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/bd50c257…~tplv-fhlh96nyum-crop-webp:1266:1266.webp?dr=12190&…
The part after ~tplv- and its code is the processing step. I collected 243 product photo addresses through image search and fetched 45 of them with each ending. They used three steps:
resize-jpeg:800:800.jpeg fits the photo inside an 800-pixel box as a JPEG, so a 2406×2868 photo came back as 671×800.resize-webp:800:800.webp does the same as a WebP.crop-webp:1266:1266.webp crops to that shape as a WebP. Every crop address I fetched asked for the photo's own size or more, so those copies had every pixel.A bigger number never enlarged a photo, and a crop asked for at 4000 shrank a 5906×5906 photo to 4000×4000.
Two endings returned the full pixel size for all 45. origin-jpeg.jpeg always sends a JPEG. origin-image.image sends the stored format (JPEG for 39, PNG for 6) and was usually the bigger file: one 1200×1200 photo was 190 KB as origin-jpeg and 816 KB as origin-image. Of the 30 photos behind 800-pixel resize addresses, 20 had more pixels at full size. The originals ran from 390×520 to 5906×5906.
~tplv- followed by a code and a dash, such as ~tplv-fhlh96nyum-. Replace everything after that dash with origin-image.image, and delete the question mark and everything after it.The address above becomes …~tplv-fhlh96nyum-origin-image.image, and its 16 KB WebP became a 365 KB PNG with the same 1266×1266 pixels. Keep your own address's code; it can differ from the one in the folder name. Use origin-jpeg.jpeg for a JPEG every time. Both endings worked on every server in my sample without signing in.
origin-jpeg.jpeg, and those photos show an HD badge.source.txt holding the page link.Of the 45 page copies, 20 were WebP and 25 JPEG. None came back as AVIF, and Chrome's image headers got the same files as plain requests. Media Center takes JPG, JPEG and PNG, so convert a WebP before uploading it again. PixLasso names each file after the format it arrived in. For a WebP you already saved, see how to turn WebP and AVIF into JPG.
Photos on a TikTok Shop listing belong to the seller, or to the brand or photographer they came from. TikTok Shop's US Intellectual Property Policy bars using another seller's original product images, or AI-modified copies of them, without authorization. Its copyright guide adds that cropping, filters or added text do not make a copied photo acceptable. Use this for your own photos, or with the owner's written permission. Saving a photo does not give you the right to list with it.
The free version saves up to 30 images per download in their original format; with All tabs, each press of Download saves the next batch. Pro is a single US$9.99 payment (the launch price until 31 December 2026, then US$14.99). It removes the 30-file limit and adds batch conversion to JPG, PNG or WebP, resizing and padding to a white square, and custom file names. TikTok Shop's US listing policy asks for square images of at least 600×600, with a pure white background on the main one. Right-click Save image as JPG / PNG / WebP on a single photo is free.
origin-jpeg, so a stored PNG arrives as a JPEG, and a stored JPEG usually comes back re-compressed into a smaller file. For the best quality, make the origin-image edit by hand.Address edits checked 1 November 2026 on TikTok Shop's image servers with 45 product photos found through public image search. Seller Center details come from TikTok Shop Seller University (US). I made PixLasso, and I mention it where it helps; the first method needs no extension.