Use Case: Clone Any Objects with Related Lists with Flow

“Clone with related” is an amazing feature which sadly is still not available on custom objects. No worries! This flow solution helps you to clone ANY objects with ANY related lists, and we only use the easiest steps! Let’s dive into how to make that happen!

* Big thanks to Neal Lightfeldt for sending in the case!

Lulu Mobile uses standard Account, Asset, and Contact objects to track their customers’ information. They also have Account Contact Relationship enabled. The sales reps want to be able to clone the Accounts with the option of cloning either Asset or Related Contact lists or both or none.

The flow is not that complicated!

Please don’t be intimidated by the flow charts. The most essential concepts are just Get Records, Loop, Assignment, and Create Records.

Depending on how many related lists you want the users to be able to clone, we need to repeat steps 7 – 13 for the same number of times. For example, in this case we let the user choose between 1) Asset and 2) Related Contact, so we repeated steps 7 -13 for two times.

In the beginning, we use a Screen and Checkbox Group to let users choose which related list to clone. Then, we use that answer in Decision elements. At the end, we add another Screen to let the user link to the newly created record. We will launch this solution as a Quick Action.

Actual Flow: Clone With Two Related Lists

Structure: Unique Steps Of The Flow

Please wait while flipbook is loading. For more related info, FAQs and issues please refer to DearFlip WordPress Flipbook Plugin Help documentation.

Screen FlowAssignmentVariable/Collection
LoopCreate RecordsRecord Id
DecisionGet RecordsScreen Element

Does the solution solve your problem? If not, write us what your problem is and we will build the flow for you!

Official Salesforce Help Article On Flow

Notify of
Newest Most Voted
Inline Feedbacks
View all comments

I’ve tried to duplicate//modify this to copy an opportunity and close products, partners, and contact roles…I didn’t clone the original opportunity, because I wanted to put in a new close date and name…It creates the new opp, but the assign element isn’t assigning the new Opp ID, so it’s adding the products to the original opp. Any ideas/


I assgned the New Opp Id a variable, added an assignment to the loop to of Current loop ID = New Opp Id, and then added the look to the collection, and created the new from that collection.


This worked perfectly on the first try! It’s rare that I get any PB/Workflow to work correctly the first time around so it goes to show how well written these steps were. Thanks!!


Please explain how the original Account ID is being passed into the input variable! Thank you



Thank you for this great step-by-step guide! I followed your instructions and was able to create a version of the flow that works perfectly when I run it in Debug mode but does not seem to do anything when I run it for real. Do you have any idea why this might be happening?



This was such an amazing explanation and it worked perfectly, thank you so much. I’ve used it in several use cases already.
One important thing I noticed is that when you clone the record and related records it keeps the original user, owner and created date. So, in the assignment element, it is very important to mute these, otherwise you might run into some data quality issues later.


I have a similar use case. I need to clone a record with one related list (what you did) but then i need to add this newly created record to (for example) 50 accounts.

Is there a way to reference the newly created record with the related records and then add that record to multiple accounts?