'Un-smart' object in Photoshop


I've created a design in Photoshop CS6, and used a large number of smarts object which made the workflow more easy (at least for me). Now I've finished working on the design, and I want to "unsmart" all the objects due to the large file size of the PSD. I do not want to do Rasterize Layer because I want to keep every layer which was originally on the Smart Object. I want to convert each smart object (some of them have Layer Styles applied) to a group (folder) which will have all the layers inside + the FX applied originally to the Smart Object and it will be in the exact location of where the smart object was before.

I couldn't find anything about this in the internet.

Also, some of the smart objects has inner smart objects inside of them. I don't mind doing this manually, but to copy & paste every layer in smart object is very annoying way, because I must scale and transform the layers pasted.

7/29/2013 9:52:00 PM

Accepted Answer

I first tried Captain Awesome script but not suit to me, so I wrote my own. But it will not works on CS6. Supported version is PS CC 2015.1.2+


  • Puts content exactly on the same place.
  • Works with multiple layers simultaneously.
  • Respects selected composition in the smart object.
  • Scales content if the "SO" has different size.
  • Also scales layer effects.

Download here: http://bereza.cz/ps/

5/21/2016 9:54:00 PM

  • Double-click the Smart Object to open it in a new window
  • Highlight all the layers in the .psb (smart object) which opens
  • Choose Layer > Group from the menu
  • Hold the Shift key down and drag from the Smart Object Window to your original document window with the Move Tool.
  • Drag the fx icon from the Smart Object layer to the new Layer Group you just dragged over
  • Delete the Smart Object layer.

The only caveats to this method are scale and positioning. You may need to reposition some groups depending on how they interact with the edges of the original document. And if you scaled the Smart Object layer, you may need to scale the group as well.

This method is far from perfect, but it's about the only method I'm aware of.

Per comments, (originally found by Joonas) there appears to be a script written by Kamil Khadeyev which automates some of this. You can view details of the script at the Captain Awesome web site. I make no claims as to the functionality of the script having never used it myself.