Importing plates and assigning them to shots while delineating them from shots

I’m relatively new to Shotgun and I wanted advice on how to handle importing plates in Shotgun. Should it be an entity field tied to a shot? I imagine I would need to create a custom entity for this. Does Shotgun have a more intuitive way of handling plates?

Maybe I’m far off base but any guidance on best practices in regard to plates would be deeply appreciated!



Shotgun has Elements entity that could be used for this purpose. An element could be used in more that one shots and already has a shots multi-entity field in it. You could always add more fields to customize Element to include details like whether its Fg/Bg/Ref and also link them up to other entities that you track in your pipeline.
Coming to best practices, we normally have requirements where a higher resolution image data set is required for specific shots and linking the info about those data sets to the actual elements was always beneficial.
Another thing to keep track would be the retime information of those elements. So at our studio, we had started off with elements <-> cutItems as well as elements <-> products(custom entity that we use internally) and cutitem to shot in addition to the direct association of elements <-> shots. But some of that workflows evolved over time.
Typical workflows involve Plate -> FlattedPlate -> UnFlattended Comp -> Delivery. So having that lineage info is beneficial too.
Hope some of this info helps you.


We use Elements at my studio. They are intended for representing live-action camera footage and we have added custom fields to store camera/lens specific settings like focal length, focus distance, shutter speed etc.

Alternatively you could use Versions, which are basically playable media and have path fields for the disk location of your frame sequence and QT movie. You could create Versions of your plates, set them as type ‘Plate’, and link them to each Shot.

We prefer using Elements as it makes it simpler for Production to manage the type and status and also keep the data for that footage all together. It’s also useful in those cases where footage is relevant to multiple shots (skies, dust plates etc). We still make Versions of the plates, we just link them to the Elements.



We’re using the regular PublishedFile entity for plates at my studio. We find it convenient to treat the plate as any other publish in Shotgun. We also create a Version of the plate linked to the published file for review etc.



Great thread here! I also wanted to add a quick mention that you can flag versions that are plates if you go this more simple route.

1 Like

This question came up in a different conversation I’ve had so thought I’d update this to share more information :slight_smile:

Depending on your needs, you may want to go with a custom entity such as Elements and store the plate information there. Then from the Shots page, I’d create a custom field (if a field doesn’t already exist), that is a multi-entity field. That means the field can be linked to one or more entities (in this example, Elements). You can learn about creating fields here.

I’d also create a Version linked to the Element so you can view the plate as needed. Hope that helps!


Hi all.

@jonas.lindfors - were you able to get the publisher to create versions of your plates? I need a solution where I can drag and drop several plates, have them published so they can be loaded into nuke and viewed as frames in RV and then also need a version created for SG so they can show up along side future versions of the task/shot.

Any ideas on how to modify the publisher so that it creates a version when I give it an EXR sequence AS WELL as publish - super welcome! Thank you!

@tram @shaynad @lampronf

Hi Cameron, we have a custom built solution for publishing plates specifically. But to generate a preview file for Shotgrid when publishing with the standard publisher I would create a publish plugin that submits a transcode job to the render farm and uploads it when it is finished.

Shotgrid does not have any built in solutions to handle transcodes like this.

1 Like