Diagnose and fix missing photos, broken image placeholders, and images that disappeared after an edit on your UniLink profile.
A profile picture that shows only a grey box, a banner that displays a broken icon, or product photos that simply refuse to appear — broken images are one of the most visible problems a UniLink page can have, and they undermine trust with every visitor who sees them. The good news is that image issues are almost always caused by a straightforward upload or configuration problem that you can fix yourself in a few minutes.
UniLink processes and serves images through a CDN (cdn.unilink.us) that resizes and compresses images on upload to ensure fast load times. Understanding how that pipeline works makes it much easier to diagnose what went wrong and prevent the same issue from coming back after your next edit.
What This Guide Covers
This article covers all the primary reasons images fail to display on a UniLink page: incomplete uploads, unsupported file formats, file size limits, CDN caching after an image replacement, SSL/mixed-content issues on custom domains, and images that weren't properly saved within a block before publishing.
Each cause has a clear, concrete fix. The guide also explains how UniLink's image processing pipeline works so you can choose the right file formats and sizes going forward and avoid repeat issues.
If your images appeared before but vanished after a recent edit, the step-by-step section walks through the most likely cause for that specific scenario — usually a save that completed without the upload finishing — and how to recover cleanly.
How to Get Started
- Open your page in an incognito window — log out or use a private window to see the page exactly as a visitor sees it, without any Dashboard preview overlay that could mask the problem.
- Identify which images are broken — note whether it is a specific block (profile photo, banner, product images) or all images on the page. Widespread image failures point to a CDN or domain issue; single broken images point to an upload problem.
- Open browser developer tools (F12 → Network tab) — reload the page and filter by "Images". Broken images will show a red 404 or 403 status next to their URL. Copy the URL — it tells you which CDN path is missing or blocked.
- Check the image format and size — the original file you uploaded should be JPG, PNG, WebP, or GIF. UniLink does not support HEIC (iPhone default), TIFF, BMP, or SVG uploads in most blocks. File size should be under 10 MB per image.
- Check your custom domain's SSL status — if you use a custom domain and it shows a security warning in the browser, mixed-content rules may be blocking images served from the HTTPS CDN. Resolve the SSL certificate issue first.
Step-by-Step Guide
- Re-upload the image — open the block in the Dashboard editor, click on the broken image slot, and upload the image again. Watch for the upload progress indicator to reach 100% before clicking Save. If you close the editor or navigate away before the upload finishes, the block saves a reference to a file that was never stored.
- Convert HEIC or unsupported formats — if you took the photo on an iPhone, it is likely saved as HEIC. Convert it to JPG using the built-in iPhone share/export option ("Most Compatible" format), or use a free tool like CloudConvert before uploading. UniLink's upload dialog will show an error for unsupported formats, but it can occasionally save silently with a broken reference.
- Reduce file size if the upload is slow or fails — images over 10 MB may time out or fail silently depending on your internet connection. Compress the image to under 5 MB using Squoosh (squoosh.app) or similar. UniLink automatically compresses and resizes on its end, but very large files can fail before that processing begins.
- Wait for CDN cache to clear — if you replaced an image by uploading a new file to the same block, the CDN may serve the old cached version for up to 5 minutes. Hard-refresh the page (Ctrl+Shift+R) and check again after a few minutes. In Dashboard → Settings → Domain you can also purge the CDN cache manually.
- Check for mixed-content issues on custom domains — open the browser console (F12 → Console) and look for warnings that say "Mixed Content: The page was loaded over HTTPS but requested an insecure resource over HTTP." This means your domain's SSL certificate is not fully provisioned. Use the unil.ink/username URL until the certificate issue is resolved.
- Re-save the block explicitly — in the Dashboard, open the block that contains the broken image, make a small change (even a space in a text field), then remove the change and click Save. This forces the block to re-serialize and re-reference the image correctly, which fixes cases where the image URL was saved with a malformed path.
- Test across different blocks — if re-uploading to one block fixes it but another block still shows a broken image, repeat the upload process for each affected block individually. Image references are stored per-block, so a fix in one block does not propagate to others.
Key Settings Explained
| Setting | What it controls | Best practice |
|---|---|---|
| Image upload in block editor | Stores image to cdn.unilink.us and saves the CDN URL in block data | Always wait for the upload spinner to complete before clicking Save on the block |
| Image format | Which file types the upload dialog accepts | Use JPG for photos, PNG for graphics with transparency; convert HEIC to JPG before uploading |
| File size limit | Maximum file size per image upload (10 MB) | Compress images to under 5 MB before uploading for fastest, most reliable results |
| CDN cache (cdn.unilink.us) | Caches served image files for fast delivery worldwide | After replacing an image, wait 5 minutes or use cache purge; do not rely on instant updates |
| Custom domain SSL | Encrypts traffic between CDN and visitor browser | Verify the green padlock on your custom domain before sharing it publicly; use unil.ink/username while SSL is provisioning |
How to Get the Most Out of It
The single most effective habit for avoiding broken images is to always verify the live page after uploading new images, not just the Dashboard preview. Open your unil.ink/username URL in an incognito window after every image upload and confirm that each image renders before you close the editor tab. This takes thirty seconds and prevents you from discovering a broken image days later via a visitor complaint.
Keep your source images in a folder on your computer or cloud storage rather than deleting them after upload. If a re-upload is needed, having the original ready means you can fix the issue in under a minute. For product images or brand assets you use repeatedly, keeping a compressed, upload-ready version (under 2 MB, JPG format) saves time on every future update.
If you manage a page with many images — such as a product store or portfolio — batch-test by opening your page on a phone on mobile data (not Wi-Fi) once a month. Mobile connections on cellular sometimes surface CDN or image-sizing issues that desktop Wi-Fi masks, and catching them early prevents a bad first impression for mobile visitors, who often make up the majority of link-in-bio traffic.
UniLink automatically generates optimized versions of your images for different screen sizes and connection speeds. You do not need to manually create mobile or thumbnail versions — just upload one high-quality original and let the platform handle the rest.
Troubleshooting Common Issues
| Problem | Likely cause | Fix |
|---|---|---|
| Grey placeholder box where image should be | Upload did not complete before block was saved | Open block in Dashboard, re-upload image, wait for 100% upload indicator, then save |
| Image shows broken icon (torn picture) | CDN file was deleted or URL path is malformed | Re-upload the image to the block; do not copy-paste image URLs from other services |
| Image appeared before but is gone after editing | Block was re-saved without the image reference during an edit | Open the block, re-upload the image, save explicitly; check the block's image field is not empty |
| Images load on desktop but not on iPhone | HEIC conversion artifact or WebP not supported in older iOS Safari | Re-upload images as JPG; UniLink converts to WebP for modern browsers automatically |
Pros
- UniLink auto-compresses and resizes images — no manual optimization needed after upload
- CDN delivery via cdn.unilink.us means images load fast globally once properly uploaded
- Block-level image management makes it easy to replace one image without affecting others
- Re-upload is always possible — no image is permanently lost unless you deleted the source file
Cons
- HEIC files (iPhone default) are not supported — requires a conversion step before upload
- CDN cache means a replaced image may take a few minutes to appear for all visitors
- Large files (over 10 MB) can fail silently without a clear error message
Frequently Asked Questions
Can I use a URL from another website instead of uploading an image?
Some blocks in UniLink accept external image URLs, but this is not recommended. If the external site goes offline, changes the URL, or adds hotlink protection, your image will break immediately. Always upload images directly to UniLink so they are stored on the CDN and remain under your control.
Why does my image look blurry after uploading?
UniLink compresses images on upload to balance quality and load speed. If the source image is too small (e.g., a 200×200 pixel image stretched to fill a 1000-pixel-wide banner slot), compression makes the blurriness more noticeable. Upload the highest-resolution version you have — the platform will scale it down optimally. Profile photos should be at least 400×400 pixels; banners at least 1200×400 pixels.
I replaced an image but the old one is still showing — why?
The CDN caches images to serve them quickly to visitors worldwide. After replacing an image, the cached version can persist for up to 5 minutes. Wait a few minutes, then hard-refresh the page with Ctrl+Shift+R. You can also use the Cache Purge option in Dashboard → Settings → Domain to force an immediate refresh.
My product images show on desktop but not on Android — what's wrong?
This is usually a WebP compatibility issue with older Android browsers, or the image URL contains a format specifier the device doesn't support. Try re-uploading the images as standard JPGs. UniLink will automatically serve the best format for each visitor's browser.
Is there a limit to how many images I can upload?
UniLink does not impose a hard limit on the number of images across your page. Each block has its own image slots (one for profile photo, one per product, etc.). The practical limit is how many blocks your plan allows. There is a 10 MB per-file size limit and images are automatically optimized, so storage is not a concern for typical usage.
Key Takeaways
- Always wait for the upload progress indicator to reach 100% before saving a block — saving too early is the most common cause of broken images.
- Convert HEIC files (iPhone default format) to JPG before uploading — UniLink does not process HEIC natively.
- Keep source images under 5 MB for the most reliable upload experience; the platform auto-compresses from there.
- After replacing an image, allow up to 5 minutes for the CDN cache to refresh before concluding there is a problem.
- Always verify images in an incognito window on both desktop and mobile after making changes — don't rely solely on the Dashboard preview.
Ready to build a page that looks great everywhere?
Create your UniLink page in minutes, upload your best photos, and share a polished profile with your audience across every platform.
Get Started Free