Skip to content

What are the best websites for free stock images and creative resources?

Problem

When I started my design projects, I always got stuck finding free images that looked professional and were legally safe for commercial use.

Here’s what I used to face:

Error: Copyright infringement notice
Your website contains unlicensed stock images. DMCA takedown notice sent.
Fine: $2,500 per image

Most free image websites either:

  • Had watermarked versions only
  • Required complex attribution
  • Had poor quality photos
  • Were illegal to use commercially

What happened?

I tried many stock image websites and made mistakes along the way. Let me show you what worked and what didn’t.

First, I used Google Images with “free to use” filters:

[image-search.js]
// What I tried first - Google Images
const searchGoogleImages = async (query) => {
const response = await fetch(
`https://www.googleapis.com/customsearch/v1?key=YOUR_API&q=${query}&searchType=image&rights=cc_publicdomain`
);
return response.json();
};

The problem was most images still had unclear licensing. I got DMCA notices even when Google said they were “free to use.”

Then I tried stock photo websites with free sections:

[unsplash-fetch.js]
// Using Unsplash API
const fetchStockImages = async (query, count = 10) => {
try {
const response = await fetch(
`https://api.unsplash.com/search/photos?query=${query}&per_page=${count}&client_id=YOUR_ACCESS_KEY`
);
const data = await response.json();
return data.results.map(photo => ({
id: photo.id,
url: photo.urls.regular,
photographer: photo.user.name,
alt: photo.alt_description || photo.description,
attribution: `Photo by ${photo.user.name} on Unsplash`
}));
} catch (error) {
console.error('Error fetching stock images:', error);
return [];
}
};

Unsplash worked well but I still needed to give attribution for each image.

How to solve it?

I found the best platforms that solve different needs. Here are the top free stock image resources:

1. Unsplash - Professional Photography

I use Unsplash when I need high-resolution photos for websites and apps.

[unsplash-attribution.js]
// Proper attribution following Unsplash guidelines
const displayImageWithAttribution = (imageData) => {
return `
<img src="${imageData.url}" alt="${imageData.alt}" />
<p style="font-size: 12px; color: #666; margin-top: 5px;">
${imageData.attribution}
</p>
`;
};

What I like:

  • Photos are curated and professional
  • Simple attribution requirement
  • High resolution (up to 6144x4096)

But I still need to add attribution text below each image.

2. Pexels - No Attribution Needed

This changed everything for me. Pexels allows commercial use without attribution.

[pexels-fetch.js]
// Pexels API - no attribution required
const fetchPexelsImages = async (query, count = 10) => {
const response = await fetch(
`https://api.pexels.com/v1/search?query=${query}&per_page=${count}`,
{
headers: {
Authorization: 'YOUR_API_KEY'
}
}
);
const data = await response.json();
return data.photos.map(photo => ({
id: photo.id,
url: photo.src.large,
photographer: photo.photographer,
alt: photo.alt
}));
};

When I use Pexels images:

  • No attribution text needed
  • Can be used commercially
  • Good quality curated collection

3. Pixabay - Everything-in-One

Pixabay surprised me with diverse assets beyond just photos.

Assets available:
- Photos (3.5M+)
- Vectors (1.8M+)
- Illustrations
- Music tracks
- Video clips

I use Pixabay when I need vector graphics or illustrations alongside photos.

4. Freepik - Premium Vectors

Freepik has the best vector graphics and illustrations I’ve found for free.

The catch: Some require attribution even for free downloads. I always check the license for each file.

5. OpenArt - AI-Generated Creative Assets

This is newer but promising for unique content.

[openart-api.js]
// OpenArt API for AI-generated images
const fetchOpenArtImages = async (prompt, style = "realistic") => {
const response = await fetch(
'https://openart.ai/api/v1/generations',
{
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
},
body: JSON.stringify({
prompt: prompt,
style: style,
width: 1024,
height: 1024
})
}
);
return response.json();
};

I use OpenArt when I need specific scenes that don’t exist in traditional stock photo libraries.

6. Canva - Template Resources

Canva isn’t just stock photos - it’s design templates that save hours.

[canva-api.js]
// Canva API for design templates
const fetchCanvaTemplates = async (type = "social_media") => {
const response = await fetch(
`https://api.canva.com/v1/designs?type=${type}`,
{
headers: {
'Authorization': 'Bearer YOUR_CANVA_TOKEN',
'Content-Type': 'application/json'
}
}
);
return response.json();
};

Common Mistakes I Made

  1. Assuming all “free” means copyright-safe

    • I learned the hard way that “free” doesn’t always mean “legal for commercial use”
  2. Ignoring attribution requirements

    • I got warning emails from Unsplash when I didn’t provide proper attribution
  3. Using watermarked versions

    • Some sites show high-quality previews but only give watermarked downloads for free
  4. Overlooking API access

    • I was manually downloading images until I discovered API access for automated workflows

Comparison Table

PlatformBest ForCommercial UseAttributionQuality
UnsplashPhotographyYesRequiredExcellent
PexelsGeneral UseYesNot RequiredGood
PixabayMixed AssetsYesRequired for someGood
FreepikVectors/IllustrationsSome filesRequiredExcellent
OpenArtAI-GeneratedCheck licenseVariesGood
CanvaTemplatesYesNot RequiredGood

The reason

The key reason most creators fail is they don’t understand licensing terms. Each platform has different rules:

  • Some allow commercial use without attribution (Pexels)
  • Some require attribution even for free images (Unsplash)
  • Some have mixed licensing (Pixabay, Freepik)

I keep a cheat sheet:

NO ATTRUTION NEEDED:
- Pexels (mostly)
- Canva templates
- Pixabay public domain
ATTRIBUTION REQUIRED:
- Unsplash (always)
- Freepik free vectors
- Pixabay some assets

Summary

In this post, I showed the best free stock image resources for different needs. The key point is knowing which platforms offer legal protection for your projects.

I use:

  • Pexels when I need no-hassle commercial images
  • Unsplash for professional photography with attribution
  • Pixabay for diverse assets beyond just photos
  • Freepik for high-quality vectors
  • OpenArt for unique AI-generated content
  • Canva for ready-to-use templates

Always check the specific license for each image, and never assume “free” means “copyright-safe.” The best approach is using multiple platforms based on your specific needs for each project.

Final Words + More Resources

My intention with this article was to help others share my knowledge and experience. If you want to contact me, you can contact by email: Email me

Here are also the most important links from this article along with some further resources that will help you in this scope:

Oh, and if you found these resources useful, don’t forget to support me by starring the repo on GitHub!

Comments