Turn new spreadsheet rows into tracked Bitly links and QR codes
Add a destination link to your campaign sheet and get a tagged short link, a QR code, and the creation date written back into the same row.
Build me a workflow that turns each new row in my campaign links spreadsheet into a tracked Bitly short link, plus a QR code when the row asks for one, and writes the results back into that same row.
Trigger on a new Google Sheets row in my campaign links spreadsheet using a poll trigger. When a row fires, use the Google Sheets "Get Values" operation to read that row so I have every column: the destination URL, the campaign source, the campaign medium, the campaign name, an optional custom back half, an optional comma separated list of tags, and an optional QR code tick box.
Assemble the tracking URL first. Append the campaign columns onto the destination URL as UTM parameters (utm_source, utm_medium, utm_campaign), URL encoding each value and preserving any query string the destination URL already carries, so an existing question mark becomes an ampersand. Skip any UTM parameter whose column is empty rather than writing an empty value.
Then call the Bitly "Create a Bitlink" operation with the assembled URL. Set the link title from the campaign name, falling back to the source and medium when the campaign name is blank, and pass the campaign name together with anything in the tags column as the bitlink's tags, so every link for a campaign is grouped in Bitly reporting.
If the row supplies a custom back half, follow up with the Bitly "Add Custom Bitlink" operation to assign that keyword to the new bitlink. Custom back halves require a paid Bitly plan and return a 403 on free accounts, so treat this step as optional: log the failure, keep the standard short link, and carry on with the rest of the row instead of aborting it.
If the QR column is ticked, call the Bitly "Create a QR Code" operation for the new bitlink. Use the full featured trackable QR code operation rather than the static variant, so scans are counted in Bitly analytics, and keep the image URL it returns.
Finish with the Google Sheets "Update Values" operation to write back into the same row: the short link, the QR code image URL when one was created, and a creation timestamp in ISO 8601. Write only those specific cells so nothing else in the row is overwritten, and keep the spreadsheet as the single source of truth for the campaign.
Handle the edges. Skip any row that already has a short link so a re-run never creates a duplicate bitlink. Skip rows with a blank or malformed destination URL. If "Create a Bitlink" itself fails, write the error message into the short link column so I can see at a glance which rows need attention.
Additional information
What does this prompt do?
- Watches your campaign links spreadsheet and picks up every new row the moment someone adds one.
- Builds the full tracking link for you by adding the source, medium, and campaign name from that row onto the destination link.
- Creates a Bitly short link with the campaign title and tags already attached, plus a scannable QR code whenever the row asks for one.
- Writes the short link, the QR code image, and the creation date straight back into the same row, so your spreadsheet stays the single source of truth.
What do I need to use this?
- A Bitly account.
- A Google account with permission to edit the campaign links spreadsheet.
- A spreadsheet with columns for the destination link, campaign source, medium, and campaign name.
- Optional columns for tags, a custom link ending, and a tick box for QR codes.
- A paid Bitly plan if you want custom link endings or your own branded domain. Everything else works on a free plan.
How can I customize it?
- Rename or reorder the columns to match the sheet your team already uses, including extras like campaign content or search term.
- Change how link titles and tags are built so every campaign groups the way you report on it.
- Switch the QR code step off completely, or make it run for every row instead of only the ticked ones.
FAQs
Do I need a paid Bitly plan for this?
What happens to rows that already have a short link?
Will the QR codes be tracked?
Can I use my own branded domain instead of bit.ly?
How soon does the short link appear after I add a row?
Related templates
Every weekday at 7am, your active courses are checked for missing work, silent logins, and slipping grades, with a ranked list sent to your advising channel.
Every Monday at 8am, see exactly which assignments have work waiting, sorted worst first, posted to Slack and logged to a spreadsheet.
Every weekday morning your advising team gets a ranked list of students slipping behind in each course, plus a tracking log that shows whether outreach worked.
Every Monday at 8am, count last week's tickets and SLA results, add one row to a tracking sheet, and post the headlines to Slack.
Every weekday, each person gets one private nudge listing only their own undocumented card spend, plus an aging report for finance.
Every Monday, find the people who never turned on two-factor or never accepted their invite, message them in Slack, and track both numbers.
Stop building campaign tracking links by hand.
Add a row to your sheet and get a tagged short link, a QR code, and a timestamp back automatically.