If you work in IT, learn how BetterCloud’s Unified SaaS Management platform can help you manage G Suite and other applications. Also, learn how you can 10x your G Suite productivity

If you’re a frequent user of Google Spreadsheets, you probably already know that you can insert images from the Insert Image menu option. This doesn’t actually insert images into a cell, which is often what people are trying to do.

The Insert Image menu option actually places an image on top of a Spreadsheet, rather than inside a cell. So if you’re trying to insert several images into a Spreadsheet in some sort of order this isn’t terribly helpful.

Using the =IMAGE Spreadsheet function allows us to insert an image inside a cell, using the image’s URL. This makes it really easy to insert images into a particular cell, and will get larger or smaller depending on the size of the cell (while maintaining the image’s aspect ratio).

There are actually several variations of this function that give you even more functionality:

  • =IMAGE(“URL”) – image retains aspect ratio while increasing / decreasing the cell size
  • =IMAGE(“URL”,2) – image stretches to fit all edges of the cell
  • =IMAGE(“URL”,3) – image retains its original size
  • =IMAGE(“URL”,4,50,50) – set the size of the image by replacing 50,50 with desired dimensions

Click here to watch this video on YouTube.


UP NEXT: How to Change the Paper Size in Word

31 thoughts on “Insert Images Into Google Spreadsheet Cells

  1. Yaphet Reply

    Does it matter where the source image is from? I’ve tried pasting from dropbox and it get “no image found at the url”. I tried pasting from google drive and i get “invalid url”.

    • Ed Reply

      I’ve tried combinations from Google Drive URL, from public access, to anyone with a link, with no success. How do I get the correct Google Drive URL?

      • Klaus Reply

        Ed if you open the image in your Google Drive the key is between / / before edit at the end e.g. /ajlkajcdcsdckjsdch/edit so ajlkajcdcsdckjsdch would be the key to insert at id=

        • evatar Reply

          Is his even English? All we’re trying to achieve is something SIMPLE that both Excel and Numbers can do easily. And the ‘answer’ is for Google Sheets is to jump through a wormhole while juggling. Ugh.

  2. Chris Britton Reply

    Is there a way to insert an image into the cell that is not hosted online somewhere, i.e.- a screenshot I’ve taken.

    • Alexia Reply

      Did you ever figure this out? I’m trying to do the same thing.

      • Bug Reply

        Also wanted to know.
        I think Google Drive works, but even so, directly from the PC would be nice

        • Shortreed Reply

          Tried google drive, google photo and google sites to give the image a url, but no success.

          • A H

            Place the image in a Google photos album and set the album to public.

  3. Doug Reply

    Does any one know of a way to put a variable into the image string so it can reference a cell to change the place to lookup the image?

    • Shortreed Reply

      you could use a vlookup put the number in the cell in front of the image .

  4. Greg Reply

    Hi Gooru,
    Great information – thanks for the tip. I have a related question that I hope you can answer. If I want to insert an image inside a cell, how can I assign a script to the newly inserted image?

    What I’d like to do is create a table of contents tab inside a Google Sheet that has many other tabs. On the table of contents, I’d love to have inserted images that act as buttons to navigate to these different tabs. I can “assign script” to images that have been inserted through the menu toolbar (e.g., Insert > Image or Insert > Drawing). However, it’s extremely clunky to have to realign my images if a new row is inserted into the table of contents.

    So my question is this, is there a way to “assign script” to an image inserted into a cell using the =IMAGE(“URL”) method? If not, is there a way to “assign script” to a hyperlink? I could always just use hyperlinks to navigate to each tab, but I don’t like how it opens a new window every time you click on the hyperlink. And I don’t like how it requires two clicks of a hyperlink (one click for the hyperlink, and then another click for the web address that pops up) to arrive at the desired tab.


  5. Kathi SMith Reply

    I can not get this to work. I have photos in Google Photos – using the URL from there and nothing shows up.
    any suggestions?
    Also tried the long url – but that too did not work.

  6. Cosmo Reply

    If you copy and paste =IMAGE(“URL”) directly from this webpage to the spreadsheet, it won’t recognize the specific open and closed quotation marks that this page uses. You have to use regular ” marks like =IMAGE(“URL”). Pretty frustrating detail to overlook for a website trying to help people who are new to something if you ask me.

  7. Erica Reply

    Hey! This worked very well up until I noticed that everyone else sharing this spreadsheet with me couldn’t see the images! They are in a public folder on Google Docs. Do you have any recommendations?

  8. Annabananas Reply

    But what if it’s an image from your desktop and you don’t have a URL??

  9. Annabananas Reply

    I have uploaded the photo I need to insert to a folder in my google drive. I then clicked on that pic and copied the URL in the search bar. I then typed =IMAGE(“URL”) into a cell. The URL turned green but when I hit “enter” the cell does not have a pic in it… I really need this to work asap. Any solutions?

    • Val Reply

      I have the same issue. Its looks like its accepting my URL but no image is appearing in the cell. I’ve checked google sheets through various servers (Firefox, iOS, Safari) and nothing. Is it possible this is an Apple related issue? If, so google needs get their sh*T together.

  10. Sam Reply

    I have the same problem, everything is edit ok, but the image does not appear: Picture is uploaded in google drive, link is taken and put inside.


    • Sinnouk Reply

      Look up. Klaus already answered back in 2013.

  11. Sam Reply

    was anybody able to solve the =image(URL) issue?
    if the URL is from the web, it works fantastic, but if from google drive the cell remains empty, and no failure message occurs.

  12. Dr. Helmut Stauche Reply

    I have another problem. I import images with = image (…), but I can not assign a script with them.
    Simply inserting images is not possible because they always change their position.
    Is there a way to give images a fix position in a spreadsheet and still assign script?
    Please help, it is urgent.

    Greetings Helmut
    (Sorry for bad English)

  13. Renan Reply


    I was having the same issue where I was using =IMAGE(“url”) with urls from Google Drive or Google Photos and the cell stayed blank.

    When I copied the share link from Google Photos it gave me something like https://photos.app.goo.gl/%5Bsmall-hash-ID%5D and that didn’t work inside Google Sheets. However, when I right clicked the image and “Open Image in New Tab”, the url was https://lh3.googleusercontent.com/%5Breally-big-hash-ID%5D. When I used this url inside the =IMAGE() it finally worked!

    SOLUTION: try right-clicking the image from a shared album in Google Photos and getting the full url instead of the sharing url. Your cell in Google Sheets will look like =IMAGE(“https://lh3.googleusercontent.com/[really-big-hash-ID]”)

    I hope it works for you too.

Leave a Reply

Your email address will not be published. Required fields are marked *