{
  "name": "PrintableTools Lab Upload Error Cheatsheet Mirror",
  "generatedAt": "2026-06-09T13:27:15.978Z",
  "directory": "https://yanqr213.github.io/printable-tools-lab/upload-error-cheatsheet/",
  "livePage": "https://printable-tools-lab.pages.dev/upload-error-cheatsheet/",
  "liveJson": "https://printable-tools-lab.pages.dev/upload-error-cheatsheet.json",
  "purpose": "GitHub Pages discovery mirror for common PDF, image, JPG, PNG, resume, and email attachment upload errors with direct free no-signup fixes.",
  "entries": [
    {
      "errorText": "PDF must be under 1MB",
      "problem": "A job, school, email, or admin portal rejects a PDF by file size.",
      "response": "Open the PDF compressor with the 1MB target, compress locally, then review readability before submitting.",
      "format": "PDF",
      "target": "1MB",
      "landingPage": "https://printable-tools-lab.pages.dev/file-must-be-less-than-1mb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/file-must-be-less-than-1mb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/file-must-be-less-than-1mb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=pdf-must-be-under-1mb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/compress-pdf/?targetSize=1mb"
    },
    {
      "errorText": "PDF must be under 100KB",
      "problem": "A tiny exam, school, or form upload cap rejects a PDF above 100KB.",
      "response": "Use the strictest 100KB PDF upload-error page and review readability before submitting.",
      "format": "PDF",
      "target": "100KB",
      "landingPage": "https://printable-tools-lab.pages.dev/pdf-must-be-under-100kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/pdf-must-be-under-100kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/pdf-must-be-under-100kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=pdf-must-be-under-100kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/compress-pdf/?targetSize=100kb"
    },
    {
      "errorText": "PDF must be under 200KB",
      "problem": "A strict portal allows only a very small scanned PDF or short form.",
      "response": "Use the severe 200KB PDF upload-error page for short scanned forms and keep the original nearby.",
      "format": "PDF",
      "target": "200KB",
      "landingPage": "https://printable-tools-lab.pages.dev/pdf-must-be-under-200kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/pdf-must-be-under-200kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/pdf-must-be-under-200kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=pdf-must-be-under-200kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/compress-pdf/?targetSize=200kb"
    },
    {
      "errorText": "PDF must be under 300KB",
      "problem": "A form, application, or admin portal requires a strict PDF cap below 300KB.",
      "response": "Use the 300KB PDF upload-error page when the portal allows a little more detail than 100KB or 200KB.",
      "format": "PDF",
      "target": "300KB",
      "landingPage": "https://printable-tools-lab.pages.dev/pdf-must-be-under-300kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/pdf-must-be-under-300kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/pdf-must-be-under-300kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=pdf-must-be-under-300kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/compress-pdf/?targetSize=300kb"
    },
    {
      "errorText": "PDF must be under 500KB",
      "problem": "A strict form, exam upload, or school portal requires a very small PDF.",
      "response": "Use the strict 500KB PDF target and keep the original file in case the compressed copy loses detail.",
      "format": "PDF",
      "target": "500KB",
      "landingPage": "https://printable-tools-lab.pages.dev/pdf-must-be-under-500kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/pdf-must-be-under-500kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/pdf-must-be-under-500kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=pdf-must-be-under-500kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/compress-pdf/?targetSize=500kb"
    },
    {
      "errorText": "PDF must be under 10MB",
      "problem": "An email, support, or document portal still rejects a large scanned PDF.",
      "response": "Use the 10MB PDF upload-error page for wider caps that still reject very large scans.",
      "format": "PDF",
      "target": "10MB",
      "landingPage": "https://printable-tools-lab.pages.dev/pdf-must-be-under-10mb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/pdf-must-be-under-10mb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/pdf-must-be-under-10mb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=pdf-must-be-under-10mb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/compress-pdf/?targetSize=10mb"
    },
    {
      "errorText": "Image must be less than 2MB",
      "problem": "A profile, marketplace, support, or application page rejects an image over 2MB.",
      "response": "Use the image-to-KB compressor with a 2048KB custom target.",
      "format": "Image",
      "target": "2MB",
      "landingPage": "https://printable-tools-lab.pages.dev/image-must-be-less-than-2mb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/image-must-be-less-than-2mb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/image-must-be-less-than-2mb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=image-must-be-less-than-2mb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/compress-image-to-kb/?targetKb=2048"
    },
    {
      "errorText": "Image must be under 500KB",
      "problem": "A portal or ticket form requires an image below 500KB.",
      "response": "Use the 500KB image target, then resize if a large phone photo still misses the limit.",
      "format": "Image",
      "target": "500KB",
      "landingPage": "https://printable-tools-lab.pages.dev/image-must-be-under-500kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/image-must-be-under-500kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/image-must-be-under-500kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=image-must-be-under-500kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/compress-image-to-kb/?targetKb=500"
    },
    {
      "errorText": "Photo must be under 100KB",
      "problem": "A job, profile, school, or ID-style form rejects a photo by KB size.",
      "response": "Use the 100KB image target and check that the face or document text remains clear.",
      "format": "Photo",
      "target": "100KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-must-be-under-100kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-must-be-under-100kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-must-be-under-100kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-under-100kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/compress-image-to-kb/?targetKb=100"
    },
    {
      "errorText": "Photo must be 200 x 230 px and under 20KB",
      "problem": "An exam, job, or application portal combines exact photo dimensions with a very small file cap.",
      "response": "Resize to 200 x 230 pixels first, then compress the exported photo toward 20KB.",
      "format": "Photo",
      "target": "200 x 230 / 20KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-200x230-20kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-200x230-20kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-200x230-20kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-200-x-230-px-and-under-20kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=200&height=230&fit=cover"
    },
    {
      "errorText": "Photo must be 200 x 230 px and under 50KB",
      "problem": "A photo upload box validates both exact 200 x 230 pixel dimensions and a small KB limit.",
      "response": "Resize to 200 x 230 pixels first, then compress toward 50KB if the resized output is still too large.",
      "format": "Photo",
      "target": "200 x 230 / 50KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-200x230-50kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-200x230-50kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-200x230-50kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-200-x-230-px-and-under-50kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=200&height=230&fit=cover"
    },
    {
      "errorText": "Photo must be 200 x 230 px and under 100KB",
      "problem": "A profile, exam, or application form requires 200 x 230 pixels with a 100KB cap.",
      "response": "Create the exact 200 x 230 image, then use the 100KB image target only if needed.",
      "format": "Photo",
      "target": "200 x 230 / 100KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-200x230-100kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-200x230-100kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-200x230-100kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-200-x-230-px-and-under-100kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=200&height=230&fit=cover"
    },
    {
      "errorText": "Photo must be 240 x 320 px and under 50KB",
      "problem": "A portrait photo upload requires exact 240 x 320 pixels and rejects files above 50KB.",
      "response": "Resize to 240 x 320 pixels first, then compress the exported photo toward 50KB.",
      "format": "Photo",
      "target": "240 x 320 / 50KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-240x320-50kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-240x320-50kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-240x320-50kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-240-x-320-px-and-under-50kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=240&height=320&fit=cover"
    },
    {
      "errorText": "Photo must be 295 x 413 px and under 35KB",
      "problem": "A portrait photo upload requires exact 295 x 413 pixels and rejects files above 35KB.",
      "response": "Resize to 295 x 413 pixels first, then compress the exported photo toward 35KB.",
      "format": "Photo",
      "target": "295 x 413 / 35KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-295x413-35kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-295x413-35kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-295x413-35kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-295-x-413-px-and-under-35kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=295&height=413&fit=cover"
    },
    {
      "errorText": "Photo must be 413 x 531 px and under 100KB",
      "problem": "An ID-style or application photo upload requires 413 x 531 pixels and rejects files above 100KB.",
      "response": "Resize to 413 x 531 pixels, then compress the exported photo toward 100KB.",
      "format": "Photo",
      "target": "413 x 531 / 100KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-413x531-100kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-413x531-100kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-413x531-100kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-413-x-531-px-and-under-100kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=413&height=531&fit=cover"
    },
    {
      "errorText": "Photo must be 413 x 531 px and under 50KB",
      "problem": "A stricter ID-style photo upload requires 413 x 531 pixels and a 50KB cap.",
      "response": "Resize to 413 x 531 pixels first, then use the 50KB image target only if the portal requires it.",
      "format": "Photo",
      "target": "413 x 531 / 50KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-413x531-50kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-413x531-50kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-413x531-50kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-413-x-531-px-and-under-50kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=413&height=531&fit=cover"
    },
    {
      "errorText": "Photo must be 354 x 472 px and under 100KB",
      "problem": "An ID-style or application photo upload requires exact 354 x 472 pixels and rejects files above 100KB.",
      "response": "Resize to 354 x 472 pixels first, then compress the exported photo toward 100KB.",
      "format": "Photo",
      "target": "354 x 472 / 100KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-354x472-100kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-354x472-100kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-354x472-100kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-354-x-472-px-and-under-100kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=354&height=472&fit=cover"
    },
    {
      "errorText": "Photo must be 300 x 300 px and under 100KB",
      "problem": "A square profile, school, or application photo must be exactly 300 x 300 pixels and below 100KB.",
      "response": "Crop to a 300 x 300 square first, then compress toward 100KB if the output is still too large.",
      "format": "Photo",
      "target": "300 x 300 / 100KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-300x300-100kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-300x300-100kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-300x300-100kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-300-x-300-px-and-under-100kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=300&height=300&fit=cover"
    },
    {
      "errorText": "Photo must be 600 x 600 px and under 100KB",
      "problem": "A larger square profile, marketplace, or application photo must be 600 x 600 pixels with a 100KB cap.",
      "response": "Resize or crop to 600 x 600 pixels, then compress toward 100KB if needed.",
      "format": "Photo",
      "target": "600 x 600 / 100KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-600x600-100kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-600x600-100kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-600x600-100kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-600-x-600-px-and-under-100kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=600&height=600&fit=cover"
    },
    {
      "errorText": "Photo must be 480 x 640 px and under 200KB",
      "problem": "A portrait profile or application upload requires 480 x 640 pixels and rejects files above 200KB.",
      "response": "Resize to 480 x 640 pixels first, then compress the exported photo toward 200KB.",
      "format": "Photo",
      "target": "480 x 640 / 200KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-480x640-200kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-480x640-200kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-480x640-200kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-480-x-640-px-and-under-200kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=480&height=640&fit=cover"
    },
    {
      "errorText": "Photo must be 512 x 512 px and under 100KB",
      "problem": "A square avatar, profile, or application photo must be exactly 512 x 512 pixels and below 100KB.",
      "response": "Crop or resize to 512 x 512 pixels first, then compress the exported photo toward 100KB.",
      "format": "Photo",
      "target": "512 x 512 / 100KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-512x512-100kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-512x512-100kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-512x512-100kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-512-x-512-px-and-under-100kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=512&height=512&fit=cover"
    },
    {
      "errorText": "Photo must be 150 x 200 px and under 20KB",
      "problem": "A compact exam or application photo must be 150 x 200 pixels and below 20KB.",
      "response": "Resize to 150 x 200 pixels first, then compress the exported photo toward 20KB.",
      "format": "Photo",
      "target": "150 x 200 / 20KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-150x200-20kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-150x200-20kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-150x200-20kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-150-x-200-px-and-under-20kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=150&height=200&fit=cover"
    },
    {
      "errorText": "Photo must be 180 x 240 px and under 50KB",
      "problem": "A portrait upload box requires exact 180 x 240 pixels and rejects files above 50KB.",
      "response": "Resize to 180 x 240 pixels first, then compress the exported photo toward 50KB if needed.",
      "format": "Photo",
      "target": "180 x 240 / 50KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-180x240-50kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-180x240-50kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-180x240-50kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-180-x-240-px-and-under-50kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=180&height=240&fit=cover"
    },
    {
      "errorText": "Photo must be 400 x 514 px and under 100KB",
      "problem": "An ID-style upload requires exact 400 x 514 pixels and a 100KB cap.",
      "response": "Resize to 400 x 514 pixels first, then compress toward 100KB only if the export is still too large.",
      "format": "Photo",
      "target": "400 x 514 / 100KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-400x514-100kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-400x514-100kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-400x514-100kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-400-x-514-px-and-under-100kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=400&height=514&fit=cover"
    },
    {
      "errorText": "Photo must be 600 x 800 px and under 200KB",
      "problem": "A larger portrait photo upload requires 600 x 800 pixels and rejects files above 200KB.",
      "response": "Resize to 600 x 800 pixels first, then compress the exported photo toward 200KB.",
      "format": "Photo",
      "target": "600 x 800 / 200KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-600x800-200kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-600x800-200kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-600x800-200kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-600-x-800-px-and-under-200kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=600&height=800&fit=cover"
    },
    {
      "errorText": "Photo must be 120 x 160 px and under 20KB",
      "problem": "A tiny exam or application photo upload requires 120 x 160 pixels and a strict 20KB cap.",
      "response": "Resize to 120 x 160 pixels first, then compress the exported photo toward 20KB.",
      "format": "Photo",
      "target": "120 x 160 / 20KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-120x160-20kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-120x160-20kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-120x160-20kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-120-x-160-px-and-under-20kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=120&height=160&fit=cover"
    },
    {
      "errorText": "Photo must be 160 x 200 px and under 30KB",
      "problem": "A compact portrait upload requires exact 160 x 200 pixels and rejects files above 30KB.",
      "response": "Resize to 160 x 200 pixels first, then compress the exported photo toward 30KB if needed.",
      "format": "Photo",
      "target": "160 x 200 / 30KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-160x200-30kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-160x200-30kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-160x200-30kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-160-x-200-px-and-under-30kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=160&height=200&fit=cover"
    },
    {
      "errorText": "Photo must be 300 x 400 px and under 100KB",
      "problem": "A portrait application photo upload requires 300 x 400 pixels and a 100KB cap.",
      "response": "Resize to 300 x 400 pixels first, then compress the exported photo toward 100KB.",
      "format": "Photo",
      "target": "300 x 400 / 100KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-300x400-100kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-300x400-100kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-300x400-100kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-300-x-400-px-and-under-100kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=300&height=400&fit=cover"
    },
    {
      "errorText": "Photo must be 350 x 450 px and under 100KB",
      "problem": "An ID-style portrait upload requires exact 350 x 450 pixels and rejects files above 100KB.",
      "response": "Resize to 350 x 450 pixels first, then compress the exported photo toward 100KB if needed.",
      "format": "Photo",
      "target": "350 x 450 / 100KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-350x450-100kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-350x450-100kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-350x450-100kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-350-x-450-px-and-under-100kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=350&height=450&fit=cover"
    },
    {
      "errorText": "Photo must be 360 x 480 px and under 100KB",
      "problem": "A portrait photo upload requires exact 360 x 480 pixels and a file below 100KB.",
      "response": "Resize to 360 x 480 pixels first, then compress the exported photo toward 100KB.",
      "format": "Photo",
      "target": "360 x 480 / 100KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-360x480-100kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-360x480-100kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-360x480-100kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-360-x-480-px-and-under-100kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=360&height=480&fit=cover"
    },
    {
      "errorText": "Photo must be 420 x 560 px and under 200KB",
      "problem": "A larger portrait photo upload requires 420 x 560 pixels and rejects files above 200KB.",
      "response": "Resize to 420 x 560 pixels first, then compress the exported photo toward 200KB if needed.",
      "format": "Photo",
      "target": "420 x 560 / 200KB",
      "landingPage": "https://printable-tools-lab.pages.dev/photo-420x560-200kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/photo-420x560-200kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/photo-420x560-200kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=photo-must-be-420-x-560-px-and-under-200kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=420&height=560&fit=cover"
    },
    {
      "errorText": "JPG must be under 200KB",
      "problem": "A portal accepts JPG/JPEG but rejects the image as too large.",
      "response": "Use the 200KB image target and keep output as JPG if the destination requires it.",
      "format": "JPG",
      "target": "200KB",
      "landingPage": "https://printable-tools-lab.pages.dev/jpg-must-be-under-200kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/jpg-must-be-under-200kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/jpg-must-be-under-200kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=jpg-must-be-under-200kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/compress-image-to-kb/?targetKb=200"
    },
    {
      "errorText": "PNG screenshot too large",
      "problem": "A support ticket, admin upload, or bug report rejects a PNG screenshot.",
      "response": "Crop private areas first, then compress toward 500KB and review small UI text.",
      "format": "PNG",
      "target": "500KB",
      "landingPage": "https://printable-tools-lab.pages.dev/png-screenshot-too-large/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/png-screenshot-too-large/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/png-screenshot-too-large/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=png-screenshot-too-large",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/compress-image-to-kb/?targetKb=500"
    },
    {
      "errorText": "Invalid file type. Please upload JPG or PNG",
      "problem": "A website rejects the current image format and asks for JPG/JPEG/PNG.",
      "response": "Convert the image format locally, then compress if the converted file is still too large.",
      "format": "Image",
      "target": "JPG or PNG",
      "landingPage": "https://printable-tools-lab.pages.dev/invalid-file-type-jpg-png/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/invalid-file-type-jpg-png/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/invalid-file-type-jpg-png/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=invalid-file-type-please-upload-jpg-or-png",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/convert-image/"
    },
    {
      "errorText": "Image dimensions must be 600 x 600 px",
      "problem": "A profile, marketplace, avatar, or product image must match exact pixels.",
      "response": "Resize or crop to 600 x 600 pixels, then compress only if the KB limit still fails.",
      "format": "Image",
      "target": "600 x 600",
      "landingPage": "https://printable-tools-lab.pages.dev/image-dimensions-600x600/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/image-dimensions-600x600/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/image-dimensions-600x600/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=image-dimensions-must-be-600-x-600-px",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=600&height=600&fit=cover"
    },
    {
      "errorText": "Signature must be 140 x 60 px and under 20KB",
      "problem": "A form requires a tiny signature image with both exact dimensions and a strict 20KB cap.",
      "response": "Resize to 140 x 60 pixels first, then compress the resized signature toward 20KB.",
      "format": "Signature",
      "target": "140 x 60 / 20KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-140x60-20kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-140x60-20kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-140x60-20kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-140-x-60-px-and-under-20kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=140&height=60&fit=contain"
    },
    {
      "errorText": "Signature must be 140 x 60 px and under 50KB",
      "problem": "A signature upload box uses 140 x 60 pixels and a wider 50KB cap.",
      "response": "Resize the signature to 140 x 60 pixels and compress toward 50KB if needed.",
      "format": "Signature",
      "target": "140 x 60 / 50KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-140x60-50kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-140x60-50kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-140x60-50kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-140-x-60-px-and-under-50kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=140&height=60&fit=contain"
    },
    {
      "errorText": "Signature must be 150 x 50 px and under 20KB",
      "problem": "A narrow signature strip requires exact 150 x 50 pixels and a strict 20KB file limit.",
      "response": "Resize to 150 x 50 pixels first, then compress the exported signature toward 20KB.",
      "format": "Signature",
      "target": "150 x 50 / 20KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-150x50-20kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-150x50-20kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-150x50-20kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-150-x-50-px-and-under-20kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=150&height=50&fit=contain"
    },
    {
      "errorText": "Signature must be 160 x 70 px and under 20KB",
      "problem": "A compact signature upload box requires exact 160 x 70 pixels and a strict 20KB cap.",
      "response": "Resize to 160 x 70 pixels first, then compress the exported signature toward 20KB.",
      "format": "Signature",
      "target": "160 x 70 / 20KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-160x70-20kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-160x70-20kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-160x70-20kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-160-x-70-px-and-under-20kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=160&height=70&fit=contain"
    },
    {
      "errorText": "Signature must be 200 x 50 px and under 20KB",
      "problem": "A wide signature strip requires exact 200 x 50 pixels and a strict 20KB cap.",
      "response": "Resize to 200 x 50 pixels, then compress the exported signature toward 20KB.",
      "format": "Signature",
      "target": "200 x 50 / 20KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-200x50-20kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-200x50-20kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-200x50-20kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-200-x-50-px-and-under-20kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=200&height=50&fit=contain"
    },
    {
      "errorText": "Signature must be 200 x 100 px and under 50KB",
      "problem": "A wider signature upload box requires 200 x 100 pixels and a file below 50KB.",
      "response": "Resize to 200 x 100 pixels, then compress the exported signature toward 50KB.",
      "format": "Signature",
      "target": "200 x 100 / 50KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-200x100-50kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-200x100-50kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-200x100-50kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-200-x-100-px-and-under-50kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=200&height=100&fit=contain"
    },
    {
      "errorText": "Signature must be 250 x 80 px and under 50KB",
      "problem": "A long signature upload box requires 250 x 80 pixels and a file below 50KB.",
      "response": "Resize to 250 x 80 pixels first, then compress the exported signature toward 50KB.",
      "format": "Signature",
      "target": "250 x 80 / 50KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-250x80-50kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-250x80-50kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-250x80-50kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-250-x-80-px-and-under-50kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=250&height=80&fit=contain"
    },
    {
      "errorText": "Signature must be 300 x 60 px and under 20KB",
      "problem": "A long narrow signature upload box requires 300 x 60 pixels and a strict 20KB cap.",
      "response": "Resize to 300 x 60 pixels first, then compress the exported signature toward 20KB.",
      "format": "Signature",
      "target": "300 x 60 / 20KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-300x60-20kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-300x60-20kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-300x60-20kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-300-x-60-px-and-under-20kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=300&height=60&fit=contain"
    },
    {
      "errorText": "Signature must be 300 x 80 px and under 50KB",
      "problem": "A long signature upload box requires 300 x 80 pixels and a file below 50KB.",
      "response": "Resize to 300 x 80 pixels first, then compress the exported signature toward 50KB.",
      "format": "Signature",
      "target": "300 x 80 / 50KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-300x80-50kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-300x80-50kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-300x80-50kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-300-x-80-px-and-under-50kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=300&height=80&fit=contain"
    },
    {
      "errorText": "Signature must be 300 x 100 px and under 50KB",
      "problem": "A wide signature upload box requires 300 x 100 pixels and a 50KB file cap.",
      "response": "Resize to 300 x 100 pixels, then compress the exported signature toward 50KB.",
      "format": "Signature",
      "target": "300 x 100 / 50KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-300x100-50kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-300x100-50kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-300x100-50kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-300-x-100-px-and-under-50kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=300&height=100&fit=contain"
    },
    {
      "errorText": "Signature must be 400 x 150 px and under 50KB",
      "problem": "A larger signature upload box requires 400 x 150 pixels and a 50KB file cap.",
      "response": "Resize to 400 x 150 pixels first, then compress the exported signature toward 50KB.",
      "format": "Signature",
      "target": "400 x 150 / 50KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-400x150-50kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-400x150-50kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-400x150-50kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-400-x-150-px-and-under-50kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=400&height=150&fit=contain"
    },
    {
      "errorText": "Signature must be 100 x 50 px and under 10KB",
      "problem": "A tiny signature upload box requires exact 100 x 50 pixels and a strict 10KB cap.",
      "response": "Resize to 100 x 50 pixels first, then compress the exported signature toward 10KB.",
      "format": "Signature",
      "target": "100 x 50 / 10KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-100x50-10kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-100x50-10kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-100x50-10kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-100-x-50-px-and-under-10kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=100&height=50&fit=contain"
    },
    {
      "errorText": "Signature must be 200 x 60 px and under 20KB",
      "problem": "A signature strip requires exact 200 x 60 pixels and a 20KB file limit.",
      "response": "Resize to 200 x 60 pixels first, then compress the exported signature toward 20KB if needed.",
      "format": "Signature",
      "target": "200 x 60 / 20KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-200x60-20kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-200x60-20kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-200x60-20kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-200-x-60-px-and-under-20kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=200&height=60&fit=contain"
    },
    {
      "errorText": "Signature must be 256 x 64 px and under 20KB",
      "problem": "A signature upload box requires exact 256 x 64 pixels and a strict 20KB cap.",
      "response": "Resize to 256 x 64 pixels first, then compress the exported signature toward 20KB.",
      "format": "Signature",
      "target": "256 x 64 / 20KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-256x64-20kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-256x64-20kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-256x64-20kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-256-x-64-px-and-under-20kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=256&height=64&fit=contain"
    },
    {
      "errorText": "Signature must be 400 x 200 px and under 100KB",
      "problem": "A larger signature upload box requires exact 400 x 200 pixels and a 100KB file limit.",
      "response": "Resize to 400 x 200 pixels first, then compress toward 100KB only if the exported image is still too large.",
      "format": "Signature",
      "target": "400 x 200 / 100KB",
      "landingPage": "https://printable-tools-lab.pages.dev/signature-400x200-100kb/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/signature-400x200-100kb/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/signature-400x200-100kb/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=signature-must-be-400-x-200-px-and-under-100kb",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/resize-image/?width=400&height=200&fit=contain"
    },
    {
      "errorText": "PDF not accepted, JPG required",
      "problem": "A form accepts images but rejects a PDF upload.",
      "response": "Convert PDF pages to JPG/PNG locally and upload the page image the destination expects.",
      "format": "PDF",
      "target": "JPG",
      "landingPage": "https://printable-tools-lab.pages.dev/pdf-not-accepted-jpg-required/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/pdf-not-accepted-jpg-required/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/pdf-not-accepted-jpg-required/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=pdf-not-accepted-jpg-required",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/pdf-to-images/"
    },
    {
      "errorText": "Resume PDF too large",
      "problem": "A job application or recruiter portal rejects a resume PDF by size.",
      "response": "Try the 1MB PDF target and confirm all resume text remains readable before applying.",
      "format": "PDF",
      "target": "1MB",
      "landingPage": "https://printable-tools-lab.pages.dev/resume-pdf-too-large/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/resume-pdf-too-large/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/resume-pdf-too-large/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=resume-pdf-too-large",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/compress-pdf/?targetSize=1mb"
    },
    {
      "errorText": "Email attachment too large",
      "problem": "Gmail, Outlook, school email, or work mail rejects a document attachment.",
      "response": "Compress PDFs toward 5MB or use the image-to-KB tool for photo attachments.",
      "format": "PDF or image",
      "target": "5MB",
      "landingPage": "https://printable-tools-lab.pages.dev/email-attachment-too-large/",
      "discoveryUrl": "https://yanqr213.github.io/printable-tools-lab/email-attachment-too-large/",
      "trackedUrl": "https://printable-tools-lab.pages.dev/email-attachment-too-large/?utm_source=github-pages&utm_medium=organic&utm_campaign=upload_error_cheatsheet&utm_content=email-attachment-too-large",
      "toolUrl": "https://printable-tools-lab.pages.dev/tools/compress-pdf/?targetSize=5mb"
    }
  ],
  "safeUseRules": [
    "Share only where the linked page directly answers a blocked-upload problem.",
    "Do not claim guaranteed compression results; tell users to review output quality.",
    "Do not ask for ad clicks, ad views, artificial engagement, or private file examples."
  ]
}
