How can we help?

Find answers about image hosting, the optimizer, QR codes, accounts, and billing

Getting Started4

Uppic is an image hosting service with a built-in image optimizer and a QR code studio (both static and dynamic QR) in one place. You can start using it for free without creating an account.

Was this helpful?

No — you can host images, compress files, and create static QR codes without signing in. A free account adds persistent storage, a management dashboard, dynamic QR codes, galleries, and API access.

Was this helpful?

There are four main tools: image hosting (/upload) with instant share links, the optimizer (/optimize) for WebP/AVIF conversion, the QR studio (/qr) supporting URL, Wi-Fi, PromptPay and more, and the workflow (/workflow) that compresses and hosts in one step. There is also an image inspector (/analyze).

Was this helpful?

Use the TH/EN language switcher in the top navigation on any page — your choice is remembered.

Was this helpful?

Image Hosting13

Yes — guests (not signed in) can upload files up to 10 MB each. Free members get 500 MB of total storage, while Pro and Business get 20 GB and 200 GB respectively.

Was this helpful?

Yes — upload right away and get all link formats. You will also receive a delete link; keep it safe because it is the only way to remove that image later (guests have no management dashboard).

Was this helpful?

JPG, PNG, WebP, AVIF, GIF (including animations), APNG, BMP, and TIFF (BMP/TIFF are re-encoded to PNG). HEIC/HEIF from iPhones is not supported yet — please convert to JPG or PNG first. File types are detected from the actual file bytes, not the extension.

Was this helpful?

Guests and the Free plan: 10 MB per file. Pro and Business: 25 MB per file. Up to 20 files per upload request.

Was this helpful?

The default is "never expires" — images stay as long as they are not deleted and do not violate the terms. You can also choose an automatic expiry from 1 hour up to 1 year.

Was this helpful?

Yes — when uploading, choose an expiry of 1 hour, 6 hours, 1 day, 7 days, 30 days, 90 days, 1 year, or never. Members can also change the expiry of already-uploaded images from the dashboard. When the time is up, the image is moved to trash and purged automatically.

Was this helpful?

Not supported — hosted image files are immutable, so you must upload a new file and get a new link. If you need a permanent link whose destination can change, use a Dynamic QR instead: point it at your image page, then update the destination to a new image anytime without changing the QR.

Was this helpful?

Members: go to Dashboard → Images and delete — the image moves to Trash for 7 days and can be restored before permanent deletion. Guests: use the delete link you received when uploading.

Was this helpful?

The default is Unlisted — images are not listed or searchable; only people with the link can view them. Members can also choose Private (only the signed-in owner can view) or Public, at upload time or later.

Was this helpful?

Not supported yet. The closest alternatives are Private mode (only the signed-in owner can view) or Unlisted with the link shared only to people you trust.

Was this helpful?

Yes, by default — EXIF/GPS metadata (location, camera model, etc.) is stripped at upload time for privacy. If you want to keep metadata, untick the "Strip EXIF/GPS" option before uploading.

Was this helpful?

Image Optimizer10

At the default quality (80) the difference is nearly invisible while the file shrinks dramatically. You can adjust quality from 1–100 or use target-file-size mode to let the system find the right quality, and you see the savings percentage per file before downloading.

Was this helpful?

Lossless compression keeps every pixel intact (smaller savings), while lossy discards detail the eye barely notices for much smaller files. Uppic uses adjustable lossy compression — for the closest-to-lossless result, set quality to 100 and choose "keep original format" for PNG files.

Was this helpful?

WebP is a modern image format from Google that produces files roughly 25–35% smaller than JPG/PNG at the same quality, with support for transparency and animation. All major browsers support it — it is our recommended choice for general web use.

Was this helpful?

AVIF is newer than WebP and produces the smallest files (often 50% smaller than JPG) at the same quality, at the cost of slower encoding. Nearly all modern browsers support it — ideal when file size matters most.

Was this helpful?

Use WebP for general purposes (best balance of size and compatibility), AVIF when you want the smallest possible files, and "keep original format" when the destination system specifically requires JPG/PNG.

Was this helpful?

Yes — import a PNG and output as WebP/AVIF for maximum savings, or choose "keep original format" to stay in PNG (transparency fully preserved).

Was this helpful?

Yes, including animated GIFs — converting to animated WebP saves a lot of space. The only limitation: watermarks are not applied to animations.

Was this helpful?

Yes, up to 20 files per batch. Jobs run through a background queue with live status updates. Daily quotas: guests 20 files, Free 50, Pro 1,000, Business 10,000 files/day.

Was this helpful?

No — originals are used for processing and then discarded. Output files are kept for download for 7 days, then purged automatically. To keep a result long-term, click "Host this image" to move it into image hosting.

Was this helpful?

Yes — when the job completes, use the "Download all (ZIP)" button to grab every file in one archive, or download files individually.

Was this helpful?

QR Code9

Static QR codes never expire — the data is encoded in the image itself and works forever, even without an account. Dynamic QR codes use our short link and keep working as long as the code remains active in your account.

Was this helpful?

A static QR encodes the data (URL, text, Wi-Fi, etc.) directly into the image — free, unlimited, no sign-in needed, and it never expires. The trade-off: the content cannot be edited later (you must generate a new one) and there are no scan statistics.

Was this helpful?

Static QR is free, unlimited, and requires no sign-in. Dynamic QR requires an account: the Free plan includes 3 codes, Pro 50, and Business 500.

Was this helpful?

Yes — customize both the QR foreground (dark) color and the background color, plus add a frame with a call-to-action label like "SCAN ME".

Was this helpful?

Yes, as long as the colors contrast strongly — dark pattern on a light background. The system checks the contrast ratio automatically and warns you when it drops below 3:1, meaning the QR may fail to scan. Adjust the colors before using it in production.

Was this helpful?

Yes — enter the Wi-Fi name (SSID), password, and encryption type; guests scan and connect instantly without typing. Other supported types include text, email, phone, SMS, vCard business cards, calendar events, and social links.

Was this helpful?

Yes — enter a 10-digit phone number or 13-digit national ID, and optionally set a fixed amount (or leave it blank for the payer to fill in). Great for shops and personal transfers.

Was this helpful?

Yes — download as SVG (vector, scales infinitely, ideal for print) or PNG (ideal for digital use). Colors, logo, and frame apply to both formats.

Was this helpful?

Dynamic QR6

A dynamic QR does not embed the destination URL directly — it embeds a short link (like /r/abc123) that redirects to your destination. This lets you change the destination later without reprinting the QR, and every scan is tracked for analytics.

Was this helpful?

Static: data lives in the image, cannot be edited, no analytics, free and unlimited, no login, never expires. Dynamic: uses a short link, destination editable anytime, scan analytics included, requires an account, quota by plan (Free 3 / Pro 50 / Business 500). For large print runs where the destination might change, choose dynamic.

Was this helpful?

Yes (dynamic QR only) — go to Dashboard → QR Codes, select the code, and edit the destination URL. The change applies instantly to every printed copy, and the previous destinations are kept in a history log.

Was this helpful?

Yes (dynamic QR) — see daily scan counts, unique scanners, repeat scans, device type, operating system, country, and recent scans, with CSV export available.

Was this helpful?

Free plan: 3 codes, Pro: 50, Business: 500 (only non-deleted codes count). Static QR codes are unlimited on every plan.

Was this helpful?

Account8

Not for basic use (hosting, compression, static QR). An account is required for: the management dashboard (delete/restore), persistent storage, dynamic QR, galleries, webhooks, and the API.

Was this helpful?

Yes — the Free plan includes 500 MB storage, 10 MB max file size, 3 dynamic QR codes, and 50 optimizations/day, with no card required.

Was this helpful?

Three ways: email + password (email verification required), Google account, and magic link (a passwordless sign-in link sent to your email).

Was this helpful?

On the sign-in page, click "Forgot password" and enter your email — a reset link will be sent to you (the link expires after a while). Alternatively, sign in with a magic link instead.

Was this helpful?

Self-service email changes are not supported yet. If you need to change your email, please contact us via the contact page.

Was this helpful?

Yes — TOTP-based 2FA via authenticator apps (Google Authenticator, Authy, etc.). Enable it at Dashboard → Security; once on, sign-in requires an extra 6-digit code from your app.

Was this helpful?

There is no automated full-account export yet. What you can do today: download images from the dashboard, download an entire gallery as a ZIP, and export QR scan analytics as CSV. For anything else, please contact us.

Was this helpful?

Self-service account deletion is not available yet — please reach out via the contact page and we will delete your account, images, QR codes, and all related data for you.

Was this helpful?

Billing8

Three plans — Free (฿0): 500 MB storage, 10 MB files, 3 dynamic QR, 50 optimizations/day. Pro (฿199/mo): 20 GB, 25 MB files, 50 dynamic QR + analytics, 1,000 optimizations/day, 2,000 API calls/hour. Business (฿799/mo): 200 GB, 500 dynamic QR, 10,000 optimizations/day, 10,000 API calls/hour, and team workspace.

Was this helpful?

It is a subscription — pay monthly or yearly, and subscribe/cancel yourself anytime. Note: payments currently run on a development mock provider; the architecture is ready to switch to Stripe/Omise.

Was this helpful?

Yearly is cheaper — Pro at ฿1,990/year and Business at ฿7,990/year, roughly 2 months free compared to paying monthly all year.

Was this helpful?

Go to /pricing, pick a plan, and complete checkout. The new limits (storage, QR quota, optimization quota) apply immediately after payment. Track your current usage at Dashboard → Billing.

Was this helpful?

Cancel renewal at Dashboard → Billing — your account automatically returns to the Free plan at the end of the current billing period, after which you can subscribe to a lower plan. Your current benefits remain until the period ends.

Was this helpful?

Anytime, at Dashboard → Billing. Cancelling stops the renewal — you keep the plan's benefits until the end of the period you already paid for, with no further charges.

Was this helpful?

All your files and data remain intact — nothing is deleted. Once back on Free, if your usage exceeds the 500 MB quota you cannot upload new images until you free up space or upgrade again. Dynamic QR codes over the quota keep working, but you cannot create new ones.

Was this helpful?

Automatic invoices are not available yet since payments run on a development mock provider. If you need payment documentation, please contact us.

Was this helpful?

Privacy & Security5

Unlisted is the default for every image — only people with the link can view it; it is never listed publicly and links are randomly generated to be hard to guess. This differs from Public (openly shareable) and Private (signed-in owner only).

Was this helpful?

Photos from phones and cameras often embed the GPS location, timestamp, and device model — which can unintentionally reveal where you live or your routines. Uppic therefore strips EXIF/GPS by default before an image is served (you can opt out).

Was this helpful?

Every file's type is detected from its actual bytes (magic bytes) — the claimed extension/MIME is never trusted. Images are re-encoded to neutralize polyglot payloads, dimension limits guard against decompression bombs, and a hash-level blocklist stops abusive files.

Was this helpful?

Every image page has a Report button — pick a reason and submit, no sign-in needed. Moderators review reports and can block the file at the hash level so it cannot be re-uploaded.

Was this helpful?

Passwords are hashed with a modern algorithm (Argon2), email verification is required, TOTP 2FA can be enabled, and API keys are stored hashed (shown in full only once at creation) with scoped permissions and optional expiry.

Was this helpful?

API5

Yes — a REST API under /api/v1 covering image upload/management, QR code creation and editing, optimization jobs, galleries, and webhooks. See the API section of the Help Center for real examples.

Was this helpful?

Go to Dashboard → API Keys and create a key — it starts with upk_ and is shown in full only once, so copy it immediately. Use it with the header: Authorization: Bearer upk_xxx

Was this helpful?

Yes — choose scopes when creating a key: images:read, images:write, qr:read, qr:write, and optimize:write. A key can only call endpoints within its granted scopes, and keys can be expired or revoked anytime.

Was this helpful?

By plan: Free 100 requests/hour, Pro 2,000/hour, Business 10,000/hour. Exceeding the limit returns HTTP 429 — wait and retry.

Was this helpful?

Yes — subscribe to four events: image.uploaded, optimization.completed, optimization.failed, and subscription.changed. Every payload is HMAC-SHA256 signed (X-Uppic-Signature header), deliveries retry automatically, and endpoints that keep failing are auto-disabled.

Was this helpful?

Troubleshooting6

Check in order: (1) Is the file over your plan's limit (10 or 25 MB)? (2) Is the format supported — iPhone HEIC must be converted first. (3) Are you rate-limited from uploading too often (error 429 — wait a bit)? (4) Members: is your storage full? Check Dashboard → Billing. See the Help Center for the full guide.

Was this helpful?

Newer iPhones save photos as HEIC, which is not supported yet. Fix: on iPhone go to Settings → Camera → Formats → choose "Most Compatible" to shoot JPG, or share the photo through an app that auto-converts to JPG before uploading.

Was this helpful?

Common causes: insufficient color contrast (use a dark pattern on a light background, never inverted), a logo that is too large (reduce its size), printing too small (at least 2×2 cm for close-range scanning), or a very long URL making the pattern dense — a dynamic QR uses a short link, producing a cleaner pattern.

Was this helpful?

Three possibilities: the image had an expiry and has expired, it was deleted (by the owner or a moderator), or it is Private and requires the owner to be signed in. Owners can restore recently deleted images from Trash within 7 days.

Was this helpful?

Jobs run through a background queue and can take several minutes at busy times — AVIF and large files encode slower than usual. If it stays stuck abnormally long, resubmit the job. Remember output files are kept for only 7 days.

Was this helpful?

Check: have you verified your email (look for the verification email, including spam)? Is the password correct (use "Forgot password" to reset)? If 2FA is on, the 6-digit authenticator code must be current. You can also bypass all of this by signing in with an email magic link.

Was this helpful?

Still can't find what you need?

Read step-by-step guides in the Help Center, or reach the team directly