Skip to main content
Inspiring
November 24, 2024
Question

New script: Copy Metadata

  • November 24, 2024
  • 6 replies
  • 1186 views

Hi all!

I've made a script to fill in a feature missing from Bridge, the ability to copy metadata between files. It currently only supports a limited subset of metadata fields (the ones I use the most), but I'm happy to fufil requests to add more.

Currently, these fields can be copied:

  • Headline
  • Description
  • Keywords
  • Alt Text (Alt Text & Extended Description)
  • Location (Sublocation, City, State, Country, and Country Code)

Usage:

  1. Select a file.
  2. Right click > Copy Property... OR Tools > Copy Property...
  3. Select the fields you would like to be copied
  4. Select the files you would like to paste to
  5. Right click > Paste Property OR Tools > Paste Property. You have the option of Overwriting the existing values or Appending, which appends Keywords but overwrites other fields.

Installation:

  1. Go to Preferences and select the "Startup Scripts" tab.
  2. Click "Reveal Scripts in Explorer"
  3. Place the script file in the folder that opens
  4. Restart Bridge
  5. When prompted upon restarting, choose to enable the script.
  6. If the script is not enabled, go to Preferences > Startup Scripts and enable the script, then restart Bridge

 

You can find the latest version of the script here: https://github.com/9yz/bridge-scripts/blob/main/copyMetadata.jsx

 

I'm also looking into other useful scripts - my next one will probably be text substitutions (ala PhotoMechanic).

6 replies

Legend
February 18, 2026

Below is a script to sync ALL metadata between files.

/*
Utility Pack Scripts created by David M. Converse ©2018-21

This script is a demo of syncing metadata

Last modified 6/3/2021

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#target bridge
if(BridgeTalk.appName == 'bridge'){
var metaSyncMenu = MenuElement.create('command', 'Sync Metadata', 'at the end of Tools');
var cmetaSyncMenu = MenuElement.create('command', 'Sync Metadata', 'after Thumbnail/Open', this.menuID); //add to Contextual menu
metaSyncMenu.onSelect = function(){
SyncMeta();
}
cmetaSyncMenu.onSelect = function(){
SyncMeta();
}
function SyncMeta(){
try{
if (ExternalObject.AdobeXMPScript == undefined) ExternalObject.AdobeXMPScript = new ExternalObject('lib:AdobeXMPScript');
var thumbs = app.document.selections;
if(thumbs[0].hasMetadata == true){
//if(confirm('Apply all metadata from ' + thumbs[0].name + ' to selected files?') == true){
var ftMeta = thumbs[0].synchronousMetadata;
var ftXMP = new XMPMeta(ftMeta.serialize());
var ftUpdatedPacket = ftXMP.serialize(XMPConst.SERIALIZE_OMIT_PACKET_WRAPPER | XMPConst.SERIALIZE_USE_COMPACT_FORMAT);
for(i = 1; i < thumbs.length; i++){
thumbs[i].metadata = new Metadata(ftUpdatedPacket);
}
//}
}
}
catch(e){
alert(e + e.line);
}
}
}

 

Participating Frequently
February 17, 2026

Thank you so much. I was desperate to have this functionality for my workflow. Is there a way to have this script modified to include: Creator,  Credit Line, Source and Copyright status? Or is there a way to edit the script on my end to do this?

Legend
February 18, 2026

I haven’t looked at the original script but yes, you can modify a script to include more metadata. Its just text.

Participant
November 13, 2025

HI, nice script. Is it possible to change it so I can copy metadata från multiple pdfs to other pdfs. If you have the same filenames in diffrent folders?

Example i have several pdf from a catalog containing metadata and whant to transfer all metadata to new pdf from an uppdated catalog.

 

Best regards Bengt Schröder

Legend
November 13, 2025

This is certainly possible, but I wouldn't put that into a script per se. Use Bridge to find and select all of the files that you need processed. I haven't looked at the script here but copying metadata is pretty easy.

Note that this can be done without scripting as well, by creating temporary metadata templates and applying those to files.

Participant
December 2, 2024

Thank you, I'm almost sure they had this feature in Bridge ages ago.

Participating Frequently
November 26, 2024

Hi @9yz,

 Thank you very much for sharing this script! I've tried it and works great! I am very happy because I've been waiting for Adobe to make this option available for years hopelessly and had also tried the script referred by @Stephen_A_Marsh but it never worked for me. In my workflow I basically copy and paste description, title and keywords from one image to another but unfortunately title is not included in your scripts. Is there any chance you can update the script to include this field? Many thnaks!

Inspiring
November 26, 2024

Sure thing! I just added it - you can re-download the script from the github repo and install it as normal.

Hope this helps!

Participating Frequently
November 29, 2024

Many thanks!

Stephen Marsh
Community Expert
Community Expert
November 24, 2024
Inspiring
November 26, 2024

Hey @Stephen Marsh, thanks for sharing that!

I've saw that script a while ago and tried it out, but it had some problem - it's been a while so I don't remember what. Github shows it as last updated 8 years ago so it may not be compatible with current versions of Bridge.

 

I wrote my own script to fill this niche, as an excuse to learn ExtendScript, as well as to provide a somewhat cleaner script - Pall Riggott's script is dense, uncommented, and primarially operates out of a single function. My code, while not perfect in this regard, has been separated into multiple functions for readability, has lots of comments, and is structured so that it shouldn't be too difficult to add new metadata fields.