Problem Faced:
Most UGC videos cost around $150–$500 each and can take days to get back. But if we’re trying to launch ads quickly, waiting that long simply isn’t practical.
So we built an automation that creates a UGC-style product video in a few minutes using only a product image. The entire workflow also posts the finished video to Instagram automatically. Below are all the details of how it works.
1. Collecting the Input (Lovable)
We started by creating a simple interface in Lovable where a user can enter:
- Product image URL
- Product name
- Optional description
The interface only needs the image URL to begin. When the user clicks a button, Lovable sends the data straight into Make through a webhook.
2. The Automation Behind It (Make)
The Make scenario runs in three main parts.
Part A: Receive the Submission and Track It
Modules used:
-
Webhook
-
Google Sheets
-
Lovable (response)
When the user submits the inputs, Lovable sends the data to Make.
Make generates a unique ID for the request and stores it in Google Sheets along with the product image URL, name, and a status field set to “in progress.”
Make then sends a response back to Lovable so the interface can show that the video is being generated. This gives the user immediate feedback while Sora is working in the background.
Part B: Generating the UGC Video (OpenAI Sora 2)
Module used:
- OpenAI: Generate a video
Settings used:
- Model: Sora 2 (or Sora 2 Pro)
-
Resolution: 720 × 1280
-
Reference image: the product photo provided by the user
Example prompt:
“Create a UGC-style product video with a handheld, authentic feel. Someone speaking directly to the camera while showing the product. Natural lighting, casual tone.”
Sora usually takes a few minutes to finish. Make waits for the completed file before moving to the next step.
Part C: Storing the Video and Updating the Status
Modules used:
-
Google Drive
-
Google Sheets
-
Lovable
Once Sora finishes, Make downloads the video and uploads it to Google Drive.
From there, it generates a shareable link and updates the correct row in Google Sheets using the ID created earlier.
Finally, Make sends a message back to Lovable to update the status to “completed,” along with the video URL. The UI updates immediately, so the user sees the finished result without refreshing the page.
3. Posting to Instagram Automatically
Instagram doesn’t accept Google Drive links directly, so I added a conversion step.
We used CloudConvert to generate a direct downloadable URL.
Once we have that URL, we feed it into the Instagram for Business module in Make and publish the video automatically. We also send along a caption that pulls from the product name and description provided earlier.
Here are the generated video examples:
Looking forward for all your feedback.







