# ShortStack — help documentation (full text)
> The complete text of the ShortStack help center: 194 articles covering campaign
> building, publishing and embedding, entries, emails, analytics, contest rules and
> compliance, and account management.
ShortStack is a no-code conversion platform for landing pages, website pop-ups,
lead-capture forms, quizzes, contests, and giveaways. This file exists so the
documentation can be read in one request rather than 185. The curated index of the
rest of the site is at https://www.shortstack.com/llms.txt.
Each article below gives its URL, the plan required, and the date it was last
reviewed. Every article opens with a short direct answer before the steps.
Generated from the published site.
---
## About sharing
URL: https://www.shortstack.com/help/about-sharing/
Category: Building a campaign
Plan required: All plans
Last reviewed: 2026-02-25
ShortStack offers three kinds of sharing: the whole campaign by its landing page or embed URL, an entrant's details after they submit a form, and the content of an individual entry through the Entry Display Widget. Campaign sharing uses Open Graph, so pasting your campaign URL into a post pulls in the image and text set under Campaign Settings.
### Overview
1. Sharing the entire campaign.
2. Sharing entry details post form submission.
3. Sharing the content of an entry via the Entry Display Widget.
### Sharing your campaign
#### Share the entire campaign
When sharing your campaign using a landing page or embed URL, this is the content that will be displayed.
You can share your campaign URL on platforms like Facebook or other services that support Open Graph by pasting the URL into a status update or post.
1. Click the Campaign Settings (gear icon) at the top of the Campaign Builder.
2. Go to the Sharing section.
3. Edit the Default Title, Description, and Image that appear when someone shares your campaign URL.
> Note: Changes to the title, description, or image will not update previously shared posts. You’ll need to create new posts to see the updated content.
#### Show share prompt upon form submission
Encourage participants to share content after they submit a form by enabling the share prompt. You can choose to display entry-specific content or custom content.
1. Open the Form Container settings by clicking the gear icon.
2. Click the After Submit tab in the left sidebar.
3. Select Use Action Widgets to show results.
4. Click the Refer-a-Friend & Sharing tab.
5. In the sharing section, choose a Share Widget to connect the Form to.
6. Save and exit.
7. Open and edit the Share Widget to your liking.
8. Add an Action Widget to show the Share Widget after successful form submission. WHEN the Form is successfully submitted THEN show the Share Widget
Learn more about the [Form Container](https://www.shortstack.com/help/form-container-widget/).
#### Share entries via the Entry Display Widget
Encourage voters to share entries by enabling sharing icons in the Entry Display Widget.
1. Open the Entry Display Widget settings by clicking the gear icon.
2. Click the Share tab in the left sidebar.
3. Check the box Enable sharing.
4. To share entry-specific content, click the blue word custom to switch to entry.
5. To share custom content (image and text), click the blue word entry to switch to custom.
6. Check the boxes for each platform where you want to enable sharing.
Learn more about the [Entry Display Widget](https://www.shortstack.com/help/entry-display-widget/).
### Share Widget
When in doubt, add a Share Widget to your campaign! You can place it at the top, bottom, inside an entry confirmation container, or anywhere else that makes sense for your campaign. The Share Widget allows visitors to share your campaign’s landing page across various social media platforms. You can also customize the widget to display your own content.
Learn more about the [Share Widget](https://www.shortstack.com/help/share-widget/).
### Encourage sharing with Refer-a-Friend
Available on Build plan and higher.
You can reward contest entrants with extra points (extra chances to win) when they share your promotion with their friends.
Learn more about [Refer-a-Friend](https://www.shortstack.com/help/refer-a-friend/).
### FAQs
Can I run a "Share to Win" contest?
It isn’t possible to track specific shares on the many social media channels available. Instead, we offer our Refer-a-Friend feature, which rewards individuals for sharing and then encouraging others to participate in your promotion.
Learn more about [Refer-a-Friend.](https://www.shortstack.com/help/refer-a-friend/)
Can I track shares?
No, we cannot track individual sharing. But our analytics shows Shares In and Shares Out. As an alternative to monitoring individual sharing, you can enable Refer-a-Friend.
Learn more about [Refer-a-Friend.](https://www.shortstack.com/help/refer-a-friend/)
Can I share on Instagram?
Instagram does not support the traditional sharing of external content. However, here are some alternative solutions:
1. Encourage Sharing via Stories: Ask participants to share the campaign URL through Instagram Stories or create your own post/Reel and encourage followers to share it.
2. Use Hashtags: Utilize campaign-specific hashtags to increase visibility. You can even import followers' posts from Instagram using specific hashtags. Learn more about Hashtag Feeds.
### Related resources
[Enable and Customize Share Settings (Video)](https://youtu.be/phBjCcHDWRc?si=XQWIS0af97_d9NDG)
[Can I Reward Participants for Sharing My Contest? (Blog Post)](https://www.shortstack.com/blog/can-i-reward-participants-for-sharing-my-contest-or-giveaway-on-social-media/)
[Getting Started with the Style Panel (Help Doc)](https://www.shortstack.com/help/getting-started-with-the-style-panel/)
[Refer-A-Friend (Help Doc)](https://www.shortstack.com/help/refer-a-friend/)
[Share Widget (Help Doc)](https://www.shortstack.com/help/share-widget/)
### FAQs
#### Can I run a "Share to Win" contest?
It isn’t possible to track specific shares on the many social media channels available. Instead, we offer our Refer-a-Friend feature, which rewards individuals for sharing and then encouraging others to participate in your promotion.
Learn more about [Refer-a-Friend.](https://www.shortstack.com/help/refer-a-friend/)
#### Can I track shares?
No, we cannot track individual sharing. But our analytics shows Shares In and Shares Out. As an alternative to monitoring individual sharing, you can enable Refer-a-Friend.
Learn more about [Refer-a-Friend.](https://www.shortstack.com/help/refer-a-friend/)
#### Can I share on Instagram?
Instagram does not support the traditional sharing of external content. However, here are some alternative solutions:
1. Encourage Sharing via Stories: Ask participants to share the campaign URL through Instagram Stories or create your own post/Reel and encourage followers to share it.
2. Use Hashtags: Utilize campaign-specific hashtags to increase visibility. You can even import followers' posts from Instagram using specific hashtags. Learn more about Hashtag Feeds.
---
## Action Widget
URL: https://www.shortstack.com/help/action-widget/
Category: Widgets
Plan required: All plans
Last reviewed: 2026-10-08
The Action Widget provides a simple way to configure "if this, then that" (IFTTT) scenarios in your campaigns. It enables you to create actions triggered by events from other widgets in your campaign.
### Overview
The list of events and actions available depends on the widgets already in your campaign. For this reason, it’s best to configure Action Widgets last, after all other widgets are added and configured.
[image: The Add Widgets panel with the Action Widget icon, a lightning bolt, circled in green.]
#### Adding the Action Widget
To add the Action Widget to your campaign:
1. Click the Action Widget icon in the Add Widgets Panel, or
2. Drag the icon into your preview area.
> Note: Action Widgets are invisible in your live campaign. You can place them wherever works best for organization, but if an Action Widget is in a hidden container, the action will not work unless the container is made visible.
### Widget settings
The widget settings pop-up allows you to customize your Action Widget.
Rename the Widget:
Click the pencil icon in the top-left corner (next to the name) and type your new name. Click the blue check button to confirm.
CSS ID:
The CSS ID (starting with a #) is displayed in the top-right corner of the pop-up.
Customization:
Use the Back and Next buttons at the bottom to navigate through the menu on the left side.
When you’ve finished customizing, click the blue Save and Exit button.
### Setup
The Setup section allows you to define the conditions and actions for your Action Widget.
#### Configuration components
1. WHEN: Define the primary condition that triggers the action.
2. AND IF: Add optional additional conditions that must also be true for the action to trigger.
3. THEN: Specify the action(s) to execute when the conditions are met.
#### WHEN
The WHEN section is where you configure the primary trigger for your action.
##### Adding a trigger
By default, the condition Manually triggered by another widget is set up, which allows other widgets (e.g., Buttons Widget) to trigger the Action Widget. This condition cannot be deleted.
To add a new condition:
1. Click the blue + button below the existing condition(s).
2. Use the Add WHEN window to configure the new condition.
##### Trigger configuration
Triggers are broken into three sections:
Category: Choose to trigger the action based on:
- A Widget event (e.g., when a Widget does something).
- A campaign event (e.g., when the campaign loads).
Widget: If you choose a widget event, select the widget and the specific event to trigger the action. Each widget type offers unique event options.
Advanced Options:
- For Points for Actions, specify the form and action label.
- For eToken triggers, configure validations for protected content or prevent eToken sharing.
Click Save to finalize your trigger.
#### AND IF
The AND IF section allows you to add additional conditions. All conditions in this section must be true for the action to trigger.
##### Example use case
If you want an action to fire only when:
1. A specific field is updated.
2. A specific value is selected.
Add both conditions as separate triggers in this section.
Adding conditions is identical to the process in the WHEN section.
#### THEN
The THEN section is where you configure the action(s) to execute when the conditions are met.
##### Adding an action
1. Click the blue + button to open the action configuration window.
2. Configure the action by completing these sections: Category: Specify whether the action applies to a widget or the campaign. Widget: Select the target widget from the dropdown. Action: Choose the action to perform (options vary by widget type). Effect: If applicable, customize effects like animation or visibility.
Click Save to finalize your action.
##### Opening a URL in a new tab
Use the Open URL in New Tab action to send entrants to another page without them leaving your campaign. Enter the URL in the action's settings.
For the most reliable result, trigger this action straight from a click, for example: a Buttons Widget click → Action Widget trigger → Open URL in New Tab. Browsers only allow a new tab to open as the direct result of a click. If something comes between the click and the action, such as a delay, the browser may block the new tab.
If the browser blocks the new tab, ShortStack shows a pop-up with a link to the URL, so entrants can still open it with one more click.
##### Managing multiple actions
You can add multiple actions triggered by the same condition.
Actions are executed in the order they appear in the list (top to bottom). Drag actions to reorder them as needed.
To delete an action, click the trashcan icon.
### Smart Labels
Smart Labels allow you to group and identify widgets for targeting with triggers and actions.
For more details, refer to the [Action Labels help doc](https://www.shortstack.com/help/using-action-labels-in-an-action-widget/).
### Visibility
Action Widgets are invisible in live campaigns by default. Visibility options include:
- Active: The widget is functioning.
- Inactive: The widget is disabled.
- Date/Time Restrictions: Set active periods.
- Country Restrictions: Limit visibility by location.
For more information, see the [Widget Visibility help doc](https://www.shortstack.com/help/widget-visibility/).
### Special considerations
The order of actions matters in advanced setups. For example:
- If a Rich Text Widget is set to "Starts Hidden," ensure the Action Widget first shows the widget before scrolling to it.
- If you use Open URL in New Tab, put it right after the click that triggers it. Any delay before it makes the browser more likely to block the new tab. If that happens, entrants see a link to open the page instead (see Opening a URL in a new tab).
Misordered actions may cause unexpected behavior.
### Related resources
[Widgets At A Glance (Help Doc)](https://www.shortstack.com/help/widgets-at-a-glance/)
[Using Action Labels in an Action Widget (Help Doc)](https://www.shortstack.com/help/using-action-labels-in-an-action-widget/)
[Understanding Conditional Logic (Help Doc)](https://www.shortstack.com/help/understanding-conditional-logic/)
[Custom Events Data (Help Doc)](https://www.shortstack.com/help/custom-events-data/)
---
## Adding Google Maps address lookup to a form
URL: https://www.shortstack.com/help/adding-google-maps-address-lookup-to-a-form/
Category: Building a campaign
Plan required: Max plan
Last reviewed: 2026-02-26
Improve your data integrity and make your forms easier to fill out with our address verification tool. Simply follow the steps below to integrate with Google Maps.
### Overview
Our integration works with the standard Address 1 field to show matching addresses in a dropdown as the entrant types, and if the entrant clicks an address, it will automatically fill in the rest of the address fields in your form.
### How to set up Google maps integration
1. Open your campaign in the Campaign Builder.
2. Click the edit icon to open the Form Container Widget's settings.
3. Click Advanced on the left side.
4. In the Integrations subsection, click Configure Integrations; this will open in a new pop-up.
5. Select the radio button beside Google Maps.
6. Choose a Google Maps Profile. If you don't have one pre-established, click on the Add button at the bottom. In the Google Maps Profile Details window, add the name of your new profile, a description for your profile (optional), and then your Google Maps API Key using the fields provided. Click Select at the bottom.
7. In the Integration Settings window, click Save.
8. In the Form Container's widget settings, click Save & Exit.
> Note: ShortStack does not provide Google Maps API Keys - those are available for users of the Google Maps Platform; for more information, check out [Google's Use API Keys help doc](https://developers.google.com/maps/documentation/embed/get-api-key).
As long as the API key was copied/pasted correctly, everything should be good to go! When an entrant starts typing an address into the Address 1 field, a dropdown will appear below with potential addresses for the entrant to select; when they click an option, it will use that information to fill out the rest of the address fields.
[image: animated gif showing the auto-fill drop-down popping in when an address is typed into the field]
### Related resources
[Form Integrations (Help Doc)](https://www.shortstack.com/help/form-integrations/)
[5 Ways to Humanize Your Marketing Automation (Blog Post)](https://www.shortstack.com/blog/5-ways-to-humanize-your-marketing-automation/)
[Field Widget (Help Doc)](https://www.shortstack.com/help/field-widget/)
[Form Container Widget (Help Doc)](https://www.shortstack.com/help/form-container-widget/)
---
## Adding votable entries
URL: https://www.shortstack.com/help/adding-votable-entries/
Category: Building a campaign
Plan required: Launch plan
Last reviewed: 2026-02-26
Sometimes, when you are running a contest or giveaway, you do not want people to submit their own entries to be voted on. In these instances, you will want to add your own voteable entries to the campaign.
### Overview
This video tutorial shows you how to add votable entries with a pre-existing form, and how to add a form to any template.
> Note: Photo Uploads are Available on the Build Plan and above.
### Adding votable entries
[video: https://www.youtube-nocookie.com/embed/poKLN_4wmFA]
### Related resources
[Entry Display Widget (Help Doc)](https://www.shortstack.com/help/entry-display-widget/)
[How to Set Up Voting (Help Doc)](https://www.shortstack.com/help/how-to-set-up-voting/)
---
## Additional help resources
URL: https://www.shortstack.com/help/additional-help-resources/
Category: Getting help
Last reviewed: 2026-08-18
ShortStack provides a variety of resources to assist you with your campaigns. Here’s how to access help, resources, and support when needed.
### Help links
#### Help menu
Click Help at the bottom of the navigation menu to open the Help Menu.
The Help Menu provides direct access to our support resources, including help docs, guides, and contact options.
#### Contextual help in the Campaign Builder
Click the ? icon anywhere you see it in the Campaign Builder for context-specific help.
This will open a pop-up with tips and instructions related to the widget or panel you’re using.
### Support center
#### Location
The Support Center button is located in the bottom-left corner of the site.
#### Options
Live Chat: Start a real-time conversation with our support team (available during Live Chat hours).
Email Support: If our team is offline, you can send an email through the pop-up.
### Pop-up help
Hover over most buttons throughout ShortStack to see a help dialog explaining the button's functionality.
[image: an animation showing the tooltips appearing when the cursor hovers over different parts of the Campaign Builder]
### Video help & walkthroughs
Visit the [ShortStack YouTube Channel](https://www.youtube.com/channel/UCDpyTn3xHk6Ps_5kmTwfD6Q) for platform announcements, tutorials, and walkthroughs.
### Blog
For tips on building and marketing your campaigns, check out the helpful articles on the [ShortStack Blog](https://www.shortstack.com/blog).
### Help pages
#### Support home page
Find quick links to help docs, guides, and FAQs.
### Contacting support
If you need further assistance or are experiencing an issue, our support team is here to help.
#### How to contact us
Click the Help icon in the upper-right corner of ShortStack, then select Contact Support.
Alternatively, send an email to support@shortstack.com.
We’ll get back to you as quickly as possible!
### Related resources
[ShortStack's YouTube Channel](https://www.youtube.com/c/ShortStackLab)
[How long will it take to get help?](https://www.shortstack.com/help/how-long-will-it-take-to-get-help/)
[Frequently Asked Questions](https://www.shortstack.com/help/frequently-asked-questions/)
[Resource Request (Help Doc)](https://www.shortstack.com/help/resource-request/)
---
## Advanced: autofilling form fields using query string parameters
URL: https://www.shortstack.com/help/advanced-autofilling-form-fields-using-query-string-parameters/
Category: Building a campaign
Plan required: All plans
Last reviewed: 2026-02-17
If you’d like a cleaner URL than what the Simple Query String Parameter setup provides, you can achieve this by using Action Widgets. This method allows you to set parameters without relying on the automatic labels generated by ShortStack.
### Setting up your form container and Field Widgets
1. In the Campaign Builder, add a Form Container to your campaign.
2. Add Field Widgets corresponding to the data you wish to collect (e.g., Name, Email, Country).
3. Once your form is set up, publish the campaign to generate the Campaign URL.
### Constructing your campaign URL with parameters
To pre-fill form fields, you'll need to append query string parameters to your Campaign URL. The format is as follows:
```
```
#### Steps
1. Determine the field names in your ShortStack form that you wish to pre-fill. It's advisable to use these exact names as parameters to avoid confusion.
2. Append each field name and its corresponding value as a query string parameter to your Campaign URL.
##### Example
```
https://yourcampaignurl.com?parameter1=value1¶meter2=value2
```
#### Handling multi-section fields
For fields with multiple sections (e.g., First Name and Last Name), separate the values using a pipe character (|).
##### Example
```
https://yourcampaignurl.com?email=example@example.com&country=USA
```
This will populate "John" in the First Name field and "Doe" in the Last Name field.
#### Adding Action Widgets to your campaign
To ensure the query string parameters populate the correct form fields, you'll need to set up Action Widgets for each parameter.
1. In the Campaign Builder, add a new Action Widget.
2. Click the blue + button under WHEN.
3. Select The campaign has finished loading under the Campaign category.
4. Click Save.
5. Click the blue + button under THEN.
6. In the Widget section, select the specific field you want to auto-fill (e.g., Email).
7. In the Event section, choose Set field value.
8. In the Field Value section, select Use the value from a query string parameter.
9. Enter the corresponding parameter name (e.g., email). Ensure it exactly matches the parameter used in your URL.
10. Click Save.
11. Repeat steps 1-10 for each additional field you wish to auto-fill.
Ensure that the parameter names in your URL match the ones specified in the Action Widgets to facilitate accurate data population.
### Testing your setup
After configuring your form and Action Widgets, click Publish Changes in the top right corner of the Builder:
1. Use the constructed URL with query string parameters to access your campaign.
2. Ensure that the specified form fields are pre-filled with the correct information based on the URL parameters.
3. Test the URL with various data to confirm consistent functionality.
### Related resources
[9 Ways to Leverage the Data You Collect From Your Fans (Blog Post)](https://www.shortstack.com/blog/9-ways-to-leverage-the-data-you-collect-from-your-fans-2/)
[Simple: Autofilling Form Fields Using Query String Parameters (Help Doc)](https://www.shortstack.com/help/simple-autofilling-form-fields-using-query-string-parameters/)
[Field Widget (Help Doc)](https://www.shortstack.com/help/field-widget/)
---
## After publishing your campaign checklist
URL: https://www.shortstack.com/help/after-publishing-your-campaign-checklist/
Category: Campaign checklists
Plan required: All plans
Last reviewed: 2025-11-19
Congratulations — your campaign is live and accepting entries! Before you start promoting it, take a moment to run through a few final checks to make sure everything works smoothly and is ready to go viral.
### Test a few more things
Even if you fully tested your campaign in Campaign Builder’s Preview Mode, it’s always smart to triple-check the live version. Use the checklist below to verify that your campaign will run flawlessly.
#### Technical & device testing
- [ ] Final Testing - Test the entry form from start to finish and confirm entries are submitted without errors.
- [ ] Entry Confirmation Message - Confirm that the Thank-You or confirmation message displays correctly after a successful entry.
- [ ] Check all navigation links (Home, Rules, Privacy Policy, etc.) to ensure they open the correct pages.
View the campaign on the following devices and confirm the layout, scrolling, and buttons work correctly:
- [ ] iPhone
- [ ] Android
- [ ] Desktop
- [ ] Tablet
Delete test entries - View your campaign's entries and delete any test entries submitted.
#### Entry & voting restrictions
- [ ] Confirm entry limits (for example, one entry per email, per day, or per IP) behave correctly when you submit multiple test entries.
- [ ] (Optional) Verify age restrictions.
- [ ] Verify location or country restrictions.
- [ ] Verify Voting restrictions.
Learn more about [Entry Restrictions](https://www.shortstack.com/help/entry-restrictions/) and [Voting Restrictions](https://www.shortstack.com/help/entry-display-widget/#16-voting-restrictions).
#### Sharing & Refer-a-Friend
- [ ] Test Sharing - Click each social share button (for example, Facebook, X, LinkedIn) and confirm that it opens the correct share dialog.
- [ ] (Optional) Refer-a-Friend Link - Submit a test entry and complete the Refer-a-Friend flow to ensure referral links are generated correctly.
- [ ] (Optional) Check Referral Points - Verify that referrals are tracked properly and appear as expected in your entries or reports.
Learn more about [Refer-a-Friend](https://www.shortstack.com/help/refer-a-friend/).
#### Monitoring & analytics
- [ ] (Optional) Enable Entry Notifications - Enable entry alerts in the Form Container to receive emails for every new submission. Learn more about Entry Alerts.
- [ ] 3rd Party Analytics - Confirm that Google Analytics, Meta Pixel, or other tracking codes are installed and firing correctly on the campaign page.
#### Marketing readiness
- [ ] Emails - Prepare and schedule email announcements to your list that include a link to your live campaign.
- [ ] Social Media - Draft and schedule social media posts promoting the campaign across all active platforms.
- [ ] Verify Ads - If you are running paid ads, confirm your ad creatives and targeting are set up and that all links lead to the correct campaign page.
- [ ] Set Up Tracking - Set up UTM or other tracking parameters on your links to measure which channels drive the most traffic and entries.
### Marketing tips and tricks
Learn from our experts on how to best market your campaign. [Explore our blog](https://www.shortstack.com/blog) for hundreds of articles, or check out the articles below for a great starting point.
- [Multi-Channel Marketing: What, Why & How + 3 Examples](https://www.shortstack.com/blog/multi-channel-marketing-what-why-how-3-examples)
- [40 Ways to Get the Word Out About Your Campaign](https://www.shortstack.com/blog/promote-your-contest)
- [Does Your Marketing Plan Align With Your Business Goals?](https://www.shortstack.com/blog/does-your-marketing-plan-align-with-your-business-goals)
### Related resources
[Before Publishing Your Campaign Checklist (Help Doc)](https://www.shortstack.com/help/before-publishing-your-campaign-checklist/)
[How to Select Winners (Help Doc)](https://www.shortstack.com/help/how-to-select-winners/)
[Analytics Overview (Help Doc)](https://www.shortstack.com/help/analytics-overview/)
---
## Analytics Manager
URL: https://www.shortstack.com/help/analytics-manager/
Category: Account & billing
Plan required: Full analytics access on Max
Last reviewed: 2026-08-06
The Analytics Manager is where all campaign reporting lives. Open it from the Home screen by clicking Manage and selecting Analytics. Clicking the heart icon beside the title adds a shortcut to your navigation menu, though favorites are stored in your browser, so you will set them again on another browser or computer.
### Getting there
From the Home Screen:
1. Click Manage in the main menu.
2. Select Analytics from the dropdown.
> Note: Favoriting adds a direct link to the Analytics Manager in the navigation menu. To favorite, click the heart icon next to the "Analytics" title. Favorites are stored in your browser, so you’ll need to re-establish them when using a different browser or computer.
### Analytics overview
At the top of the Analytics Manager, you will find two dropdown menus. The one on the left is for the timezone for which you want the analytics to display. The other menu is for completing Actions.
The actions available are:
- Open in a new window
- Export to PDF
Below those menus, you will see a main overview of:
- Sessions - Total number of page views across all campaigns
- Entries - Total number of entries across all campaigns
- Shares Out - Total number of shares
- Clicks - Hyperlink and button clicks within the campaigns.
Additionally, you will find a table with your most recent campaigns and the individual analytic overview for each of the following:
- Sessions
- Entries
- Shares
- Clicks
### Filtering
On the left side, you can filter by campaign, date, and device type. At the top, you can change the timezone of the analytic results you are viewing.
Once you have filtered to a specific campaign, you will see a significantly more detailed view of the data. Click on each bullet point below for its respective help document.
- [Overview](https://www.shortstack.com/help/analytics-overview/)
- [Entries](https://www.shortstack.com/help/entries-data/)
- [Traffic](https://www.shortstack.com/help/traffic-data/)
- [Shares](https://www.shortstack.com/help/shares-data/)
- [Votes](https://www.shortstack.com/help/votes-data/)
- [Clicks](https://www.shortstack.com/help/clicks-data/)
- [Points for Actions](https://www.shortstack.com/help/points-for-actions-data/)
- [Video](https://www.shortstack.com/help/video-data/)
### Related resources
[The Game-Changing Analytics and Data Collection Strategies Digital Marketers (Blog)](https://www.shortstack.com/blog/the-game-changing-analytics-and-data-collection-strategies-digital-marketers-need-in-2023)
[How to Plan and Promote a Lead Generation Contest (Blog Post)](https://www.shortstack.com/blog/lead-generation-campaign/)
[Entries Manager (Help Doc)](https://www.shortstack.com/help/entries-manager/)
[Analytics Overview (Help Doc)](https://www.shortstack.com/help/analytics-overview/)
[Entries Data (Help Doc)](https://www.shortstack.com/help/entries-data/)
---
## Analytics Overview
URL: https://www.shortstack.com/help/analytics-overview/
Category: Analytics & data
Plan required: Full analytics access on Max
Last reviewed: 2026-02-24
The Analytics Overview is the summary tab of the Analytics Manager, reached by clicking Manage → Analytics and filtering to a campaign and date range. It reports unique visitors, identified by a fingerprint of IP address and browser, along with how many were new and how many returning.
### Getting there
1. From the Home Page, click the Manage dropdown at the top and select Analytics
2. Use the Filtering section to select the specific campaign you wish to view.
3. Adjust the date range to display data for your desired timeframe.
### Visitors
This metric shows the number of unique visitors to your campaign, based on a unique fingerprint (IP address and browser). You'll also see the total number of new and returning visitors.
### Sessions
The Sessions box displays the total number of page views based on your selected filters. It also includes the average number of sessions per day.
### Entries
You can view how many total entries you have, in addition to how many unique entries and emails. This is useful when you allow multiple entries for the campaign.
### Conversions
The conversion rate is calculated by dividing the number of entries by the number of unique visitors. The result is displayed as a percentage.
### Clicks
This section shows the total number of clicks made within the campaign. This includes clicks on hyperlinks and buttons that direct visitors to external sources.
### Shares in and shares out
Shares In refers to the number of visitors who landed on the campaign page via a shared URL. This includes links shared through refer-a-friend actions, the Share Widget, or individual entries.
Shares Out tracks how often visitors shared the campaign on third-party platforms.
A pie chart displays the sources of Shares In and Shares Out, such as social media channels.
#### Graph options
Click the hamburger icon (≡) on the graph to:
- View the graph in full screen
- Print the chart
- Download the data as a CSV file
### Campaign summary
A graph is displayed with the following metrics:
- Sessions
- Entries
- Unique Visitors
The graph plots the total number on the y-axis and dates on the x-axis. Use this to identify trends, such as which days received the most entries or whether spikes are linked to external marketing campaigns or viral posts.
### Daily overview
Below the Campaign Summary graph, a daily table displays:
- Sessions
- Entries
- Unique Visitors
> If the date filter is 24 hours or less, the hour timestamps will be present.
### Exporting data
To export your campaign data:
1. Click the Actions dropdown at the top right.
2. Select Export PDF.
3. A PDF will open, then choose the file name and save location.
### Related resources
[The Game-Changing Analytics and Data Collection Strategies Digital Marketers (Blog)](https://www.shortstack.com/blog/the-game-changing-analytics-and-data-collection-strategies-digital-marketers-need-in-2023)
[How to Plan and Promote a Lead Generation Contest (Blog Post)](https://www.shortstack.com/blog/lead-generation-campaign/)
[Entries Data (Help Doc)](https://www.shortstack.com/help/entries-data/)
[Analytics Manager (Help Doc)](https://www.shortstack.com/help/analytics-manager/)
---
## Archiving & deleting your content
URL: https://www.shortstack.com/help/archiving-and-deleting-your-content/
Category: Account & billing
Plan required: All plans
Last reviewed: 2026-05-19
Whether you need to clear space for your entry allowance or keep your account organized, ShortStack provides options to archive or delete campaigns, entries, lists, custom fields, and other account content.
### Archiving content
Archiving is a great option if you don’t need to delete content permanently but want to hide it for organizational purposes. Follow these steps:
#### How to archive content
1. Open the appropriate Manager for your content (e.g., Campaigns Manager, Lists Manager).
2. Click the info pane of the item you want to archive. The selected item will be highlighted in gray.
3. A gray bar with additional options will appear at the top.
4. Click Archive to hide the selected content. It will no longer appear in your list.
#### Viewing & restoring archived content
1. Open the appropriate Manager and check the Show Archived box in the filtering options.
2. Archived content will appear on the right side of the screen.
3. To restore content: Click the info pane of the item you want to restore. Click Restore in the gray bar at the top.
4. The content will return to your regular view.
> **Important:** About archived content Archiving is available for campaigns, lists, emails, and fields. Entries in archived lists still count toward your plan's entry allowance. Archived fields cannot be restored.
### Deleting content
If you’re certain you won’t need specific content in the future, you can delete it permanently.
#### How to delete content
1. Open the appropriate Manager for your content.
2. Click the info pane of the item you want to delete. The item will be highlighted in gray.
3. A gray bar with additional options will appear at the top.
4. Click Delete, and a confirmation pop-up will appear.
5. Click Delete to permanently remove the content.
#### Alternative deletion options
1. Click the arrow icon in the upper-right corner of the info pane.
2. Select Delete from the dropdown menu.
#### Deleting entries (Entries Manager)
The Entries Manager includes a Delete All option for bulk deletion:
1. Click the Actions button in the upper-right corner.
2. Select Delete All to remove all entries currently shown in the Entries Manager.
3. Confirm the deletion in the pop-up by typing the required prompt and clicking Delete.
> **Important:** Once content is deleted, it cannot be restored. Archiving is recommended if you're unsure whether you'll need the content in the future. Deletion is not available for: - Custom Domains Manager. - Tags Manager. - Field Library.
### Accidentally delete Content?
If you accidentally delete content, contact Support at support@shortstack.com immediately. While deletions are usually permanent, our team may be able to help if contacted quickly.
### Related resources
[How to Delete Entries (Video)](https://youtu.be/aB6Qb3KEnYI)
[Entries Manager (Help Doc)](https://www.shortstack.com/help/entries-manager/)
[Campaigns Manager (Help Doc)](https://www.shortstack.com/help/campaigns-manager/)
[Manage Account (Help Doc)](https://www.shortstack.com/help/manage-account/)
[How to Unpublish (Uninstall) a Campaign (Help Doc)](https://www.shortstack.com/help/how-to-unpublish-uninstall-a-campaign/)
---
## Before publishing your campaign checklist
URL: https://www.shortstack.com/help/before-publishing-your-campaign-checklist/
Category: Campaign checklists
Plan required: All plans
Last reviewed: 2026-02-25
You've built your first campaign! Before hitting that publish button, let's review a few commonly overlooked settings to ensure your campaign launches smoothly.
### Campaign settings
At the top of the Campaign Builder, click the gear icon to open your Campaign Settings. Here, you’ll find options for HTML, sharing, and security. Review the following settings and confirm they’re configured according to your campaign’s needs:
Learn more about [Campaign Settings](https://www.shortstack.com/help/campaign-settings/).
#### General
The checkboxes are clickable and will reset when the page refreshes.
Default Time Zone – Set the campaign’s time zone. Best practice: Choose the time zone where most of your audience is located.
(Optional) Additional Subdomains – If you’ve published to a custom domain, you can add extra subdomains (e.g., www) for your custom domain. Be sure to create a CNAME record in your DNS.
Bookmark/Favicon Image (32px x 32px) – Upload a small image that appears on the browser tab and when your campaign is bookmarked.
Page Title – Set the campaign’s browser tab title, default bookmark name, and search engine result title.
Page Language – Select the campaign’s display language from the dropdown menu (the default is English).
Allow Crawlers to Index My Campaign – Choose whether you want your campaign to appear in search engine results.
Sharing Defaults – Customize the title, description, and image that appear when users share your campaign link.
#### Security
Cloudflare Turnstile Mode (Scale Plan and higher) – Prevent bots from submitting entries to your campaign.
Referrer Blacklist – Block users from accessing your campaign through specific domains (for example, giveaway aggregation sites).
Embedding Whitelist – Allow embedding only on approved domains.
#### Analytics
Available on the Max Plan
Enable Advanced Analytics – Turning this on improves tracking accuracy. Learn more about [Enabling Advanced Analytics](https://www.shortstack.com/help/campaign-settings/#24-analytics).
### Widget visibility
To automate your campaign’s flow, you can set specific start and stop times for individual widgets. This ensures that visitors see the right content at the right time.
When using widget visibility, remember to:
- Use container widgets whenever possible and control their visibility instead of setting visibility for each widget individually. This reduces redundancy and simplifies management.
- Double-check your start and stop times to make sure the year and AM/PM settings are correct.
Learn more about [Widget Visibility](https://www.shortstack.com/help/widget-visibility/).
### Testing your campaign
The final step before publishing is to test your campaign thoroughly. Make sure every feature functions as expected and all user paths work properly. To test your campaign before publishing:
1. Click on the Preview button at the top of the Campaign Builder.
2. Click on the Live Entries button to switch to "Test Entries". These entries will not be visible in the Entries Manager and do not count towards entry limits.
Use this checklist to verify that everything is ready for launch:
- [ ] All Buttons and Links – Confirm every button and hyperlink leads to the correct destination. Win/Lose Scenarios – Test all possible outcomes to ensure they display correctly. Visibility Settings – Verify time-based, hidden, pop-up, and country-specific visibility are working as intended. Form Submission – Submit test entries to confirm data collection is functioning properly. Voting/Entry Display Features – Verify that voting systems, entry displays, and randomizers are functioning correctly.
- [ ] Entry/Voting Restrictions – Verify that the form entry and voting restrictions are in place to prevent bots.
Learn more about [Testing Your Campaign](https://www.shortstack.com/help/testing-your-campaign/).
#### Instant Win settings (optional)
If you enabled Instant Win in your form, be sure to check the following settings. Additionally, after testing, do not forget to reset your prizes so all of your prizes are up for grabs by entrants!
Verify Instant Win Time Distribution – Check the Instant Win settings to ensure that your instant win is set to distribute from specific days and times.
Learn more about [resetting Instant Win settings](https://www.shortstack.com/help/instant-win/#7-making-changes).
### Related resources
[Testing Your Campaign (Help Doc)](https://www.shortstack.com/help/testing-your-campaign/)
[After Publishing Your Campaign Checklist (Help Doc)](https://www.shortstack.com/help/after-publishing-your-campaign-checklist/)
[Email Checklist (Help Doc)](https://www.shortstack.com/help/email-checklist/)
[Campaign Settings (Help Doc)](https://www.shortstack.com/help/campaign-settings/)
---
## Best Of Category Vote template
URL: https://www.shortstack.com/help/best-of-category-vote-contest/
Category: Building a campaign
Plan required: All plans
Last reviewed: 2026-02-12
The Best Of Category Vote Contest Template is designed for “Best Of” contests and works well for campaigns with multiple categories or subcategories for entry and voting. This template features Smart Containers, integrating the template wizard into the main container for a streamlined setup and robust design.
### Overview
You can find the template [here](https://builder.shortstackapp.com/apps?templateId=55835) or preview it [here.](https://m.lndg.page/D1ZTNR?embed=1)
This guide will cover template-specific features that are not included in our basic templates. If you need help adding widgets, editing forms, or styling your campaign, check out the [Building Campaigns section of our help docs.](https://www.shortstack.com/help/building-a-campaign/)
### Settings
Click the blue Settings button in the Category Assistant Container to open the template settings.
#### Checklist
The Checklist alerts you to any missing elements that may prevent the template from functioning. A red exclamation mark indicates an issue, with a message explaining the error.
#### Menu
Use the Menu section to add categories and subcategories directly to the text box:
- Add categories: Type directly or paste from an external document.
- Add subcategories: Indent to create levels. You can add unlimited levels by indenting accordingly.
[image: The Categories Menu editor on the Menu tab. Under Food and Drink, a blue arrow points to Best Fine Dining Restaurant at the first indent level and a red arrow points to Best Fast Food at a deeper indent.]
At the bottom, you can copy all list items to your clipboard by clicking on Copy categories to clipboard.
#### Details
Edit category images and descriptions in the Details section:
1. Click the pencil icon to edit a category.
2. Add a category description to the text box.
3. Add an image by clicking on the plus sign icon to open the Media Library to select an image.
4. Use the Next/Previous buttons to navigate between categories.
#### JSON
For advanced users, categories can be edited via JSON. However, support for custom code is limited.
### Edit the category field
Copy and paste the list of categories into the Category Field Widget. If not, you will see an error message in the Checklist stating that the Category Field does not have the correct categories added.
Do not remove the Category Field from the form, it is needed for this campaign to function.
### Editing the rest of the template
Modify the campaign as usual. The Entry Display Widget automatically updates based on the selected category—no extra widgets needed!
### Related resources
[How to Test a Campaign (Video)](https://youtu.be/vvCvNL7lJx0?si=zRFYehBDIvIdRzTw)
[Running a Giveaway? Why “No Purchase Necessary” is Necessary (Blog Post)](https://www.shortstack.com/blog/running-a-giveaway-why-no-purchase-necessary-is-necessary-2)
[How to Set Up Voting (Help Doc)](https://www.shortstack.com/help/how-to-set-up-voting/)
[Category Field (Help Doc)](https://www.shortstack.com/help/category-field/)
[Giveaway Calendar Template (Help Doc)](https://www.shortstack.com/help/giveaway-calendar-template/)
[All Templates (Template Gallery)](https://app.shortstack.com/manage/gallery)
---
## Billing frequently asked questions
URL: https://www.shortstack.com/help/billing-faqs/
Category: Account & billing
Last reviewed: 2026-08-18
You can either pause your payments or cancel the subscription.
### FAQs
How do I upgrade my plan?
1. From the Dashboard, click on Settings at the bottom of the navigation menu.
2. Select Plan & Billing.
3. In the Current Plan section, click Change Plan.
Learn more about [Upgrading Your Plan](https://www.shortstack.com/help/upgrading-your-plan/).
How do I downgrade my plan?
1. From the Dashboard, click on Settings at the bottom of the navigation menu.
2. Select Plan & Billing.
3. Click Change Plan.
4. Ensure you don’t exceed the entry limits of the desired plan. Exceeding limits will grey out that plan.
How do I stop billing?
Pause Account: Retain content for up to 3 months.
Cancel Subscription: This cancels all future payments but keeps your account. You can upgrade to a paid account at any time.
1. From the Dashboard, click on Settings at the bottom of the navigation menu.
2. Select Plan & Billing.
3. Click Pause or Cancel Subscription and follow the prompts.
Can I get a refund?
Per our [Terms and Conditions](https://www.shortstack.com/terms-and-conditions), payments made to Pancake for ShortStack accounts are generally non-refundable. However, we’re happy to review accidental overcharges!
- Credit Card Users: Please contact support within 30 days of the charge. Note that our system can only process refunds for payments made within the last 90 days.
- Invoice Users: Please reach out to us within 60 days of the error.
How much does ShortStack cost?
Plans are available on a monthly or annual basis, with annual subscriptions offering a 20% discount:
- Launch: $29/month or $288/year
- Build: $59/month or $588/year
- Scale: $119/month or $1,188/year
- Max: $199/month or $1,992/year
- Enterprise: Custom pricing
Learn more about our [Pricing](https://www.shortstack.com/pricing).
Where can I find a breakdown of costs?
ShortStack’s invoices show monthly or annual charges and charges for additional Team Member Seats. No hidden fees or taxes apply.
Where can I download my invoice or statement?
1. From the Dashboard, click on Settings at the bottom of the navigation menu.
2. Select Plan & Billing.
3. Click Statements at the top.
4. Click a statement's date to view or download it.
Do you offer a non-profit organization discount?
Yes, we offer vetted NPOs a 50% discount on plans. If you are a non-profit organization, please email us at support@shortstack.com.
Why can't I update my payment information?
Only the account owner can update the payment information. If you are a team member of a ShortStack account, you will not have access to update the payment information, even if you are an Admin.
To check whether you are in a team or the account owner:
1. Click on your name (or account name) in the top-right corner.
2. Select Switch Teams.
3. Verify your team/owner status.
If Switch Teams isn't available, you are the account owner.
### Related resources
[Payment (Help Doc)](https://www.shortstack.com/help/payment/)
[Statements (Help Doc)](https://www.shortstack.com/help/statements/)
[Plan & Billing (Help Doc)](https://www.shortstack.com/help/plan-and-billing/)
[Downgrading, Pausing, Cancelling your Subscription, and Deleting Your Account (Help Doc)](https://www.shortstack.com/help/downgrading-pausing-cancelling-your-subscription-and-deleting-your-account/)
### FAQs
#### How do I upgrade my plan?
1. From the Dashboard, click on Settings at the bottom of the navigation menu.
2. Select Plan & Billing.
3. In the Current Plan section, click Change Plan.
Learn more about [Upgrading Your Plan](https://www.shortstack.com/help/upgrading-your-plan/).
#### How do I downgrade my plan?
1. From the Dashboard, click on Settings at the bottom of the navigation menu.
2. Select Plan & Billing.
3. Click Change Plan.
4. Ensure you don’t exceed the entry limits of the desired plan. Exceeding limits will grey out that plan.
#### How do I stop billing?
Pause Account: Retain content for up to 3 months.
Cancel Subscription: This cancels all future payments but keeps your account. You can upgrade to a paid account at any time.
1. From the Dashboard, click on Settings at the bottom of the navigation menu.
2. Select Plan & Billing.
3. Click Pause or Cancel Subscription and follow the prompts.
#### Can I get a refund?
Per our [Terms and Conditions](https://www.shortstack.com/terms-and-conditions), payments made to Pancake for ShortStack accounts are generally non-refundable. However, we’re happy to review accidental overcharges!
- Credit Card Users: Please contact support within 30 days of the charge. Note that our system can only process refunds for payments made within the last 90 days.
- Invoice Users: Please reach out to us within 60 days of the error.
#### How much does ShortStack cost?
Plans are available on a monthly or annual basis, with annual subscriptions offering a 20% discount:
- Launch: $29/month or $288/year
- Build: $59/month or $588/year
- Scale: $119/month or $1,188/year
- Max: $199/month or $1,992/year
- Enterprise: Custom pricing
Learn more about our [Pricing](https://www.shortstack.com/pricing).
#### Where can I find a breakdown of costs?
ShortStack’s invoices show monthly or annual charges and charges for additional Team Member Seats. No hidden fees or taxes apply.
#### Where can I download my invoice or statement?
1. From the Dashboard, click on Settings at the bottom of the navigation menu.
2. Select Plan & Billing.
3. Click Statements at the top.
4. Click a statement's date to view or download it.
#### Do you offer a non-profit organization discount?
Yes, we offer vetted NPOs a 50% discount on plans. If you are a non-profit organization, please email us at support@shortstack.com.
#### Why can't I update my payment information?
Only the account owner can update the payment information. If you are a team member of a ShortStack account, you will not have access to update the payment information, even if you are an Admin.
To check whether you are in a team or the account owner:
1. Click on your name (or account name) in the top-right corner.
2. Select Switch Teams.
3. Verify your team/owner status.
If Switch Teams isn't available, you are the account owner.
---
## Bot and fraud prevention tools
URL: https://www.shortstack.com/help/bot-and-fraud-prevention-tools/
Category: Entry security & best practices
Plan required: All plans; some tools need Scale or Max
Last reviewed: 2026-10-08
ShortStack protects your campaigns at four points — when the page loads, when an entry is submitted, when a vote is cast, and after entries arrive in your list. This article lists every anti-fraud tool, what it blocks, where to find it and which plan includes it. No single tool blocks every bad actor, so the strongest setups combine several.
### Quick reference
Each tool links to its own article with the setup steps. Compare what's included at every tier on the [pricing page](https://www.shortstack.com/pricing/).
| Tool | What it blocks | Where to configure | Plan |
| [Cloudflare Turnstile](https://www.shortstack.com/help/cloudflare-turnstile/) | Bots loading the campaign page | Campaign Settings → Security | Scale |
| [Google reCAPTCHA](https://www.shortstack.com/help/restricting-entries-using-recaptcha/) | Bots submitting entries and votes | Campaign Settings → Security | Scale |
| [Rate Limiting](https://www.shortstack.com/help/campaign-settings/) | High-volume submissions from one IP | Campaign Settings → Security | All plans |
| [Referrer Blacklist](https://www.shortstack.com/help/campaign-settings/) | Traffic from giveaway/aggregator sites | Campaign Settings → Security | Max |
| [Embedding Whitelist](https://www.shortstack.com/help/campaign-settings/) | Unauthorized embedding of your campaign | Campaign Settings → Security | All plans |
| [Country-Based Visibility](https://www.shortstack.com/help/widget-visibility/) | Traffic from outside your target regions | Widget → Visibility | Max |
| [Fraud Filter](https://www.shortstack.com/help/prohibit-fraudulent-and-spam-entries-with-fraud-filter-feature/) | Entries matching known spam patterns | Form Container → Fraud Filters | Scale |
| [Entry Restrictions](https://www.shortstack.com/help/entry-restrictions/) | Repeat entries from the same person | Form Container → Entry Restrictions | All plans |
| [Email Login (entries)](https://www.shortstack.com/help/entry-restrictions/) | Entries without a verified email address | Form Container + Login Field | Max |
| [Vote Restrictions](https://www.shortstack.com/help/entry-display-widget/) | Repeat votes from the same visitor | Entry Display Widget → Voting | All plans |
| [Email Login (voting)](https://www.shortstack.com/help/setting-up-email-login-for-voting/) | Votes without a verified email address | Campaign Settings → Email Login | Max |
| Disposable Email Blocking | Throwaway email addresses | Automatic — no setup | All plans |
| [Manual Approval](https://www.shortstack.com/help/form-container-widget/) | Spam entries reaching a public gallery | Form Container → Approvals/Alerts | All plans |
| [Two-Factor Authentication](https://www.shortstack.com/help/setting-up-two-factor-authentication/) | Unauthorized access to your account | Preferences → Username & Password | All plans |
### Page-level protection
Screens visitors before they can interact with your campaign.
#### Cloudflare Turnstile
Available on Scale plan and higher.
A CAPTCHA alternative that verifies visitors are human when the page loads, with no visual puzzle to solve. Three modes: Invisible (default, best for embeds), Visible (may show a checkbox, best for landing pages), and Disable (not recommended).
Active on all landing pages by default and off for embeds — check Enable if my campaign is embedded to turn it on. Verification adds a small delay to page load.
See [Cloudflare Turnstile](https://www.shortstack.com/help/cloudflare-turnstile/).
#### Rate limiting
Caps entries accepted from one IP address per minute. Default is 20. Lower it for high-value prizes; raise it if legitimate entrants share an IP, as happens at offices, schools, and events.
See [Campaign Settings](https://www.shortstack.com/help/campaign-settings/).
#### Referrer blacklist
Available on Max plan.
Blocks visitors arriving from domains you specify. Most often used against sweepstakes aggregator sites, which drive high volumes of low-intent entries.
See [Campaign Settings](https://www.shortstack.com/help/campaign-settings/).
#### Embedding whitelist
Restricts which sites can embed your campaign. Enter root domains only, separated by spaces. If an embed stops displaying, check this first.
See [Campaign Settings](https://www.shortstack.com/help/campaign-settings/).
#### Country-based visibility
Available on Max plan.
Shows or hides individual widgets by the visitor's country, based on IP address. Limiting your form to eligible regions reduces spam and improves lead quality.
See [Widget Visibility](https://www.shortstack.com/help/widget-visibility/).
### Entry-level protection
Screens the submission itself.
#### Google reCAPTCHA
Available on Scale plan and higher.
Validates the visitor at submission and returns a risk score from 0.0 (likely bot) to 1.0 (likely legitimate). Available on the [Form Container Widget](https://www.shortstack.com/help/form-container-widget/) and [Entry Display Widget](https://www.shortstack.com/help/entry-display-widget/). Turnstile screens page loads; reCAPTCHA screens submissions.
- You supply your own keys. Google provides 10,000 free calls per month, which covers most campaigns. Usage above that is billed by Google directly to you. See [How to Create Google reCAPTCHA Keys](https://www.shortstack.com/help/how-to-create-google-recaptcha-keys/).
- Sensitivity Level sets the minimum score required for acceptance. A second slider sets the minimum score for Instant Win eligibility, so you can accept borderline entries as leads without letting them win prizes.
Manage saved keys in the [Entry Profiles Manager](https://www.shortstack.com/help/entry-profiles-manager/).
See [Restricting Entries Using reCAPTCHA](https://www.shortstack.com/help/restricting-entries-using-recaptcha/).
#### Fraud Filter
Available on Scale plan and higher.
Catches entries matching patterns you define — specific email addresses, IP addresses, street addresses — using ? for a single character and * for any number of characters. Searches Address, Email Address, and Phone fields, plus IP address automatically. Custom fields aren't searchable.
Actions available on a match: Reject Entry (discarded silently — the submitter still sees a confirmation), Label Entry, Force Instant Win Loss, and Do Not Auto Approve Entry.
See [Prohibit Fraudulent and Spam Entries with Fraud Filter Feature](https://www.shortstack.com/help/prohibit-fraudulent-and-spam-entries-with-fraud-filter-feature/).
#### Entry restrictions
Limits how often one person can enter, by Email Address or Login, with a custom error message for anyone over the limit. Also caps total entries across every Form Container connected to the same list.
See [Entry Restrictions](https://www.shortstack.com/help/entry-restrictions/).
#### Email login for entries
Available on Max plan.
The most secure entry restriction. Entrants confirm a code sent to their email address, so entries require a working inbox and bots can't retrieve the code. Set up using a Login Field in the [Field Widget](https://www.shortstack.com/help/field-widget/).
See [Entry Restrictions](https://www.shortstack.com/help/entry-restrictions/).
#### Disposable email blocking
Throwaway and temporary email domains are blocked automatically. No setting to configure.
### Vote-level protection
Configured separately from entry restrictions, in the [Entry Display Widget](https://www.shortstack.com/help/entry-display-widget/) under Voting.
#### Vote restrictions
Three options: No Restrictions, Anonymous Fingerprint (anonymized browser and IP data, all plans), and Email Address (Max plan).
See [How to Set Up Voting](https://www.shortstack.com/help/how-to-set-up-voting/).
#### Frequency limits
Set how often a visitor can vote, scoped by entry, category, or list, in days, hours, minutes, or seconds.
#### Email login for voting
Available on Max plan.
The most secure vote restriction. Voters receive a 6-digit code that expires after 15 minutes and can't be reused. Dialog text, error messages, and verification frequency are all customizable.
Email addresses are used only to verify the voter, not for promotional use. To collect voter data for marketing, see [How to Collect Voter Data](https://www.shortstack.com/help/how-to-collect-voter-data/).
See [Setting Up Email Login for Voting](https://www.shortstack.com/help/setting-up-email-login-for-voting/).
#### reCAPTCHA on votes
Available on Scale plan and higher.
Uses the same key profile and Sensitivity Level slider as entry reCAPTCHA.
#### Additional safeguards
Use Start with Vote Button Hidden plus an [Action Widget](https://www.shortstack.com/help/action-widget/) to require a form submission before voting; this sharply reduces fraudulent votes and captures leads. You can also set a wait time before the vote button reappears, and schedule the voting window.
### Reviewing entries after submission
Even a well-protected campaign benefits from a review pass before winners are announced.
- Manual approval — Uncheck Automatically approve entries in the [Form Container Widget](https://www.shortstack.com/help/form-container-widget/), and enable Hide Unapproved Entries in the Entry Display Widget to keep unreviewed entries out of a public gallery. Email Alerts can notify you on each submission.
- Filter by reCAPTCHA score — In the [Entries Manager](https://www.shortstack.com/help/entries-manager/), open the Other filter section and set a score range.
- Exclude labeled entries — Enter your fraud labels in the Exclude Labels field to hide them from view.
- Exclude entries when picking winners — Enter fraud labels in the Exclude Entries field to remove them from the drawing pool. See [How to Select Winners](https://www.shortstack.com/help/how-to-select-winners/).
### Account and integration security
- Two-Factor Authentication — Adds a second credential beyond your password, using an authenticator app. See [Setting Up Two-Factor Authentication](https://www.shortstack.com/help/setting-up-two-factor-authentication/).
- Webhook security — Add a Secret Key to your webhook integration; ShortStack signs each request in the X-Ss-Signature header for your server to verify. You can also restrict your endpoint to ShortStack's IP address. See [Securing Webhook Form Integrations](https://www.shortstack.com/help/securing-webhook-form-integrations/).
### Recommended combinations
Low-value prize — Turnstile on Invisible, entry restriction by email address, Rate Limiting at default.
High-value prize or public voting — Turnstile plus reCAPTCHA, Email Login, Fraud Filter patterns, Country-Based Visibility, Referrer Blacklist, and manual approval with a review pass before picking winners.
Embedded campaign — Check Enable if my campaign is embedded, confirm your root domain is in the Embedding Whitelist, and add your ShortStack publishing domain to your reCAPTCHA key rather than your website's domain.
Before you launch, run through [Testing Your Campaign](https://www.shortstack.com/help/testing-your-campaign/) and [Campaign Best Practices](https://www.shortstack.com/help/campaign-best-practices/).
### Limitations
No bot prevention method is completely effective. Determined bad actors adapt, and CAPTCHA services are third-party products whose detection logic ShortStack does not control. These tools reduce fraudulent traffic substantially; they do not eliminate it.
Combine several layers, and set contest rules that reserve your right to disqualify entries at your sole discretion. See the [Sweepstakes and Contest Rules Guide](https://www.shortstack.com/help/sweepstakes-and-contest-rules-guide/).
ShortStack engineers continue to develop and improve bot prevention.
### FAQs
Do I need both Cloudflare Turnstile and Google reCAPTCHA?
They cover different moments — Turnstile at page load, reCAPTCHA at submission. For high-value campaigns, use both.
Do I have to supply my own reCAPTCHA keys?
Yes, for new campaigns. Google introduced API fees for reCAPTCHA, and rather than raise plan prices, ShortStack now requires your own keys. Existing published campaigns already using reCAPTCHA continue to work unchanged.
Does any of this cost extra?
Not from ShortStack. Google includes 10,000 free reCAPTCHA calls per month; usage above that is billed by Google directly to you.
What's the single most effective tool?
Email Login (Max plan). A verified email address blocks bots and makes duplicate entries and votes substantially harder.
Why does my campaign load more slowly with Turnstile enabled?
Turnstile verifies each visitor before the campaign renders. If the delay is a problem, change the mode in Campaign Settings → Security.
### Related resources
[How to Select Winners (Help Doc)](https://www.shortstack.com/help/how-to-select-winners/)
[Setting up Email Login for Voting (Help Doc)](https://www.shortstack.com/help/setting-up-email-login-for-voting/)
[7 Essential Security Features to Prevent Cheating (Blog)](https://www.shortstack.com/blog/7-essential-security-features-you-need-to-prevent-cheating-in-your-next-contest-or-giveaway/)
[Rules Generator (Free Tool)](https://www.shortstack.com/rules-generator/)
[Campaign Checker (Free Tool)](https://www.shortstack.com/campaign-checker/)
### FAQs
#### Do I need both Cloudflare Turnstile and Google reCAPTCHA?
They cover different moments — Turnstile at page load, reCAPTCHA at submission. For high-value campaigns, use both.
#### Do I have to supply my own reCAPTCHA keys?
Yes, for new campaigns. Google introduced API fees for reCAPTCHA, and rather than raise plan prices, ShortStack now requires your own keys. Existing published campaigns already using reCAPTCHA continue to work unchanged.
#### Does any of this cost extra?
Not from ShortStack. Google includes 10,000 free reCAPTCHA calls per month; usage above that is billed by Google directly to you.
#### What's the single most effective tool?
Email Login (Max plan). A verified email address blocks bots and makes duplicate entries and votes substantially harder.
#### Why does my campaign load more slowly with Turnstile enabled?
Turnstile verifies each visitor before the campaign renders. If the delay is a problem, change the mode in Campaign Settings → Security.
---
## Buttons Widget
URL: https://www.shortstack.com/help/buttons-widget/
Category: Widgets
Plan required: All plans
Last reviewed: 2026-02-25
The Buttons Widget adds customizable buttons to your campaign. They can link out to external sites such as your social channels, trigger actions that move visitors through the campaign, open pop-ups, or award points to entrants. Add one by clicking its icon in the Add Widgets Panel or dragging it into the preview area.
### Overview
- Link to external websites, such as social media channels.
- Trigger actions to help visitors navigate your campaign.
- Display pop-ups or award points to entrants.
[image: The Add Widgets panel with the Buttons Widget icon, a rounded pill shape, circled in green.]
#### Adding the Buttons Widget
To add the Buttons Widget to your campaign:
1. Click the Buttons Widget icon in the Add Widgets Panel, or
2. Drag the icon into your preview area.
### Widget settings
The widget settings pop-up allows you to customize the Buttons Widget.
#### Renaming the widget
1. Click the pencil icon in the top-left corner (next to the widget name).
2. Enter a new name and press Enter.
#### CSS ID
The CSS ID (starting with a #) is displayed in the top-right corner of the pop-up.
#### Customization
Navigate through the left-side menu to configure the widget. Use the Back and Next buttons to move between sections. When finished, click the blue Save and Exit button.
### Setup (adding links)
The Setup section is where you add and organize the links that form your buttons.
#### Adding a button
1. Click the Add New Link button to open the Link pop-up.
2. Configure the button: Text or Image: Add text using the Link text field. Or click the + icon under Link image to open the Media Library and select an image for the button. Action Type: Go to URL: Enter the URL and specify whether it opens in a new window or the same window. Take Action: Select a widget to trigger using the Widget dropdown, and choose an action (Show, Hide, or Scroll to) from the Choose an action... dropdown. Points for Actions (Available on Launch plan and higher): Use the Form Widget dropdown to select the form associated with the entry. Enter the points awarded for clicking the button in the Points to award field. Add an Action label to track the action in the entrant's entry data.
3. Click Save Link to add the button.
#### Managing buttons
Reordering Buttons: Click and hold the three lines icon (☰), then drag the button to adjust its position in the widget.
Editing Buttons: Click the pencil icon to modify the button settings.
Deleting Buttons: Click the X icon to remove the button.
### Visibility
Control when and where the widget appears using the Visibility section.
Options include:
- Setting specific dates and times for visibility.
- Displaying the widget only in the Builder.
- Limiting visibility to certain countries.
Learn more about [Widget Visibility.](https://www.shortstack.com/help/widget-visibility/)
### Extras
[Learn about the Main Tag, CSS Classes, and Smart Labels settings here.](https://www.shortstack.com/help/widget-extras/)
### Button styling options
When the Widget is selected, you can customize the styling of the specific widget. Some of the options include changing the button color, button font, and widget alignment. You will see the following areas of styling available in the [Style Panel](https://www.shortstack.com/help/getting-started-with-the-style-panel/):
- Layout
- Button
- Button Border
- Button Text
- Button Image
- Button Hover
- Widget
### Related resources
[Navbar Widget (Help Docs)](https://www.shortstack.com/help/navbar-widget/)
[Action Widget (Help Doc)](https://www.shortstack.com/help/action-widget/)
[Using Action Labels in an Action Widget (Help Doc)](https://www.shortstack.com/help/using-action-labels-in-an-action-widget/)
---
## Campaign best practices
URL: https://www.shortstack.com/help/campaign-best-practices/
Category: Entry security & best practices
Last reviewed: 2026-03-05
ShortStack has been around for over 11 years, and we have a wealth of experience in running successful campaigns. Below are our top best practices to help ensure your campaign's success.
### Where to put the rules
Watch this video to learn how to display rules in one of the following ways:
- Display rules on your landing page with a scroll-to action
- Display rules in a pop-up
- Display rules directly within your entry form
- Display rules as a downloadable PDF
[video: https://www.youtube-nocookie.com/embed/Xnn8fj1PJ1g]
### Use widget scheduling
If your contest needs to begin or end at a specific time, use the widget visibility settings to control when Widget(s) are shown or hidden. You can use the parent Container to set visibility settings for all widgets nested within it. This allows for fewer visibility settings to configure and fewer mistakes from happening.
Learn more about [Widget Visibility.](https://www.shortstack.com/help/widget-visibility/)
### Have separate entry and voting phases
To keep your voting contest fair—especially for late entries—consider dividing the contest into entry and voting phases:
1. During the entry phase, users can submit entries, but voting is disabled.
2. During the voting phase, no new entries are accepted, and users can vote.
### Bot prevention
Contests, sweepstakes, and giveaways often attract bots and fraudulent entries. ShortStack provides tools to help prevent them.
#### Google reCAPTCHA
Available on the Scale Plan.
Google reCAPTCHA protects your campaign by analyzing user behavior and other factors to detect bots. You can enable reCAPTCHA in both the Form Container Widget and the Entry Display Widget.
Learn more about [Google reCAPTCHA](https://www.shortstack.com/help/restricting-entries-using-recaptcha/).
#### Cloudflare Turnstile
Available on the Scale Plan.
Cloudflare Turnstile is a smart CAPTCHA alternative that helps block bots from accessing your campaign. While it may cause a slight delay in page loading, it effectively reduces the number of fraudulent entries. We recommend using the visible option so visitors see a loading screen while verification occurs.
Learn more about [Cloudflare Turnstile](https://www.shortstack.com/help/cloudflare-turnstile/).
#### Fraud Filter
Available on the Scale Plan.
The Fraud Filter helps identify and manage suspicious or repeated patterns by labeling, filtering, and preventing unwanted entries. You can use Entry Filters to stop flagged users or bots from submitting entries or winning prizes.
Learn more about the [Fraud Filter.](https://www.shortstack.com/help/prohibit-fraudulent-and-spam-entries-with-fraud-filter-feature/)
### Entry and voting restrictions
The most secure method for restricting entries and votes is the Email Login. Users will need to enter a verification code sent to their email before proceeding.
You can enable this feature in your form and as a voting restriction.
#### Form set-up
1. Open the Form Container Settings.
2. Select the Entry Restrictions tab.
3. Enable Entry Restrictions by Login.
4. Select the frequency. Save and exit.
5. Add a Field Widget to the Form Container.
6. Select Login as a Standard Field type.
7. Configure the Email Settings.
#### Entry Display Widget set-up
1. Open the Entry Display Widget Settings.
2. Select the Voting tab.
3. Enable Voting Restrictions.
4. Restrict voting by Email Address.
5. Edit the frequency.
6. Configure the Email Settings.
> Note: Email Login is used solely for verification. You will not collect the email addresses of voters who log in this way.
Learn more about [Entry Restrictions](https://www.shortstack.com/help/entry-restrictions/) and [Voting Restrictions](https://www.shortstack.com/help/setting-up-email-login-for-voting/).
### Collecting Voters’ information
If you want to collect information from voters, you'll need to use a form. The recommended method is to restrict voting until after the voter completes the form.
#### Steps to collect voter info
1. Add a new Form Container to your campaign.
2. Create a new List to store voter information separately from your entries.
3. Adjust the new Form Container’s settings as needed.
4. Add Field Widgets such as Name and Email to the Form Container.
5. Open the Entry Display Widget settings.
6. Go to the Voting tab.
7. In the Advanced section, enable Start with vote button hidden. Save and exit.
8. Add an Action Widget.
9. In the WHEN section, click the blue + button, select the second Form Container, and set "form is successfully submitted".
10. In the THEN section, click the blue + button, select the Entry Display Widget, and set "show voting button".
11. Save and exit.
12. Test your campaign to ensure it works as expected!
### Related resources
[7 Ways to Protect Your Contest From Entry & Voter Fraud (Blog)](https://www.shortstack.com/blog/8-ways-to-protect-your-contest-from-entry-voter-fraud)
[Entry Restrictions (Help Doc)](https://www.shortstack.com/help/entry-restrictions/)
[Testing Your Campaign (Help Doc)](https://www.shortstack.com/help/testing-your-campaign/)
[Cloudflare Turnstile (Help Doc)](https://www.shortstack.com/help/cloudflare-turnstile/)
---
## Campaign Builder tips and tricks
URL: https://www.shortstack.com/help/campaign-builder-tips-and-tricks/
Category: Entry security & best practices
Plan required: All plans
Last reviewed: 2026-03-05
The Campaign Builder has many features that can streamline the creation of your campaigns. Whether you’re new to ShortStack or already skilled with WYSIWYG builders, these tips and tricks will help you build campaigns faster and more efficiently.
### Editing
#### Copy and paste widgets
You can copy and paste widgets between campaigns, saving time when reusing elements.
##### Steps to copy and paste widgets
1. Select the widget you wish to copy by clicking on it.
2. Press Cmd + C (Mac), Ctrl + C (PC), or click the Copy Icon at the bottom of the Edit Widgets Panel.
3. Paste the widget by pressing Cmd + V or Ctrl + V or clicking the Paste Icon . The widget will appear at the top of the Edit Widgets Panel.
4. Drag and drop the copied widget to your desired location.
##### Copying between campaigns
1. Open two tabs: one with Campaign A (source) and another with Campaign B (destination).
2. Copy the widget from Campaign A and paste it into Campaign B.
> Note: Avoid copying widgets from interactive templates (e.g., quiz templates) to a new campaign, as it may break functionality. Instead, copy other widgets into the interactive template to retain functionality.
#### Undo/redo
ShortStack provides undo/redo buttons for quick adjustments:
- Widget Settings: Located at the bottom of the Edit Widgets Panel (left side).
- Style Settings: Located at the bottom of the Style Panel (right side).
To reset all Style Settings for a specific widget:
1. Select the widget for which you want to reset the style settings.
2. In the Style Panel, ensure you are on the This Widget tab.
3. At the bottom of the Style Panel, click Clear settings for this widget to remove all customizations except for the theme.
#### Create a template or copy a campaign
Save time by creating templates or duplicating campaigns.
##### Steps to create a template or copy a campaign
1. Open the campaign in the Campaign Builder.
2. Click the campaign name in the top-left corner.
3. Select Make template from campaign or Make copy of campaign.
4. Follow the steps in the wizard. For copies, the Campaign Builder will refresh with the duplicated campaign.
> Note: Creating a template is available on Max Plans.
### Finding and using custom templates
##### Steps to access and use custom templates
1. From the Home Page, click Manage > Templates.
2. In the Templates Manager, locate your custom templates.
3. Use the buttons on the right to: Create a new campaign using the template. Edit the template in the Campaign Builder.
Learn more about the [Templates Manager](https://www.shortstack.com/help/templates-manager/).
> Note: Access to the Templates Manager is available on Max Plans.
### Styling
#### Creating a theme
Save your campaign’s design as a reusable theme.
1. Open the Style Panel.
2. Click the three-dot menu at the bottom-right.
3. Select Add to My Themes.
Changes made to a theme apply only to the campaign it’s saved with. To override a theme across all campaigns, save it with the exact same name.
#### Adding CSS
Customize your campaign further using the CSS Editor.
1. Open the Style Panel.
2. Click CSS (blue text at the top-right).
3. Add your custom CSS code in the pop-up editor.
> Tip: Use tools like ChatGPT to generate CSS code if you're unfamiliar with writing it.
### Related resources
[Tips and Recipes (Help Doc)](https://www.shortstack.com/help/tips-and-recipes/)
[Using the Campaign Builder (Help Doc)](https://www.shortstack.com/help/using-the-campaign-builder/)
[Keyboard Shortcuts (Help Doc)](https://www.shortstack.com/help/keyboard-shortcuts/)
---
## How to use the Campaign Checker
URL: https://www.shortstack.com/help/campaign-checker/
Category: Free tools
Last reviewed: 2026-09-22
The Campaign Checker tells you whether a campaign idea can actually be built and run before you invest in it. Select the entry actions you want and the platforms you'd run them on, and it returns a verdict for each — will work, depends on the details, or won't work — with a workable alternative for anything blocked.
### What it does and who it's for
Most failed promotions fail at the idea stage, built around an action no platform will let you collect. The [Campaign Checker](https://www.shortstack.com/campaign-checker/) catches that first. You pick the actions your idea relies on, tick the platforms, and get back what's possible.
Verdicts reflect what each platform's API and promotion policies allow — not what ShortStack can build. It's a planning tool, not a compliance or legal guarantee.
### Before you start
- No account needed. It runs in your browser with JavaScript enabled.
- Know which platforms you'd run on and what you want people to do to enter. Don't filter yourself in advance — pick what you want, even if you suspect it isn't allowed. Checking that is the point.
### Step by step
#### 1. Pick the actions your idea relies on
Select every action you want people to take to enter. Choose what you actually want rather than what you think is permitted.
#### 2. Choose the platforms for each social action
For each social action, tick the platforms you'd run it on. The same action can be possible on one platform and impossible on another — likes are the clearest case.
#### 3. Add a note about your idea
Optional, and just for your own reference. Anything you write here appears alongside your results, and won't affect the verdict your selections produce.
#### 4. Read your verdict
Results come back in three groups: won't work, depends on the details, and will work. Blocked actions come with a "do this instead" alternative.
#### 5. Reshape anything that hit a wall
Swap each blocked mechanic for the nearest workable one. In most cases that means capturing the real entry through a form and offering a bonus entry for a comment.
### Limits and what it can't do
- It is not legal advice or a compliance guarantee. It reflects how platform APIs and promotion policies generally worked when last reviewed, and those change.
- Likes can only be collected on Facebook. Instagram, TikTok, YouTube, LinkedIn and Pinterest don't release who liked a post.
- Follows can't be collected automatically anywhere — no platform exposes your follower list to a third-party tool. YouTube returns a partial subscriber list that excludes anyone keeping subscriptions private, so it isn't reliable either. The only workaround is checking a captured username by hand.
- Shares aren't verifiable anywhere, and Facebook's Pages policies prohibit requiring a share to enter.
- Tagging friends is against Facebook's rules. Other platforms do allow it, and it can widen your reach — but no tool can verify a tag, so you'd need to check your winner's entry by hand against your own rules.
- It checks mechanics, not your rules, your prize value or your tax obligations.
### Troubleshooting
#### It says my idea won't work. Now what?
Every blocked action comes with an alternative. The reliable pattern is a form for the real entry, with a comment as a bonus entry. Comments on Facebook Page posts, Instagram Business or Creator posts, and YouTube videos are collectible and verifiable.
#### Why can't I do follow-to-enter when other tools advertise it?
You can ask people to follow, and plenty of campaigns do. What no tool can do is confirm it, because no platform releases your follower list — so expect some people to enter without following. If following is a condition in your rules, check the winner you draw by hand before you award the prize, and draw again if they don't qualify.
#### I got a different answer than last time
Platforms revise their APIs and promotion policies fairly often. Something that was allowed last year may not be now, so a changed verdict usually means the tool is up to date rather than wrong.
#### Can I require a purchase to enter?
That depends on whether your winner is chosen at random or on skill, and it's a legal question rather than a technical one. Use the [Rules Generator](https://www.shortstack.com/rules-generator/).
#### The tool won't load
It needs JavaScript enabled. Turn it on and refresh.
### Privacy and what happens to your data
Everything runs in your browser. Your selections and any note you write are not sent to a ShortStack server. Your answers are saved on your own device so you can come back to them, and Start over clears them.
### FAQs
Why can't I require a like to enter?
On Facebook you can — the Graph API exposes who reacted to a Page post. Instagram, TikTok, YouTube, LinkedIn and Pinterest don't release that data, so entrants can't be retrieved or a winner verified. Use a form instead.
Can I make people follow my account to enter?
You can ask, but no platform exposes your follower list to a third-party tool, so it can't be collected automatically — you'd need to check your winner by hand. The safe pattern is a form for the entry and a bonus entry for a comment.
Which social actions actually work?
Comments are the most reliable — on a Facebook Page post, an Instagram Business or Creator post, or a YouTube video. Beyond that, a simple entry form works everywhere and you keep the lead.
Why is share-to-enter against the rules?
Shares aren't verifiable, and Facebook's Pages policies specifically prohibit requiring a share to enter. For word of mouth, use a refer-a-friend mechanic with a tracked link.
Is requiring a purchase legal?
It depends on random versus skill. For a random draw, requiring a purchase generally makes it an illegal lottery unless you offer a free alternate method of entry. The Rules Generator builds the correct structure.
Does a green verdict guarantee my campaign is allowed?
No. Treat it as expert guidance to plan around, not a legal or compliance guarantee.
### Related resources
[How to use the Rules Generator (Help Doc)](https://www.shortstack.com/help/rules-generator/)
[Refer-A-Friend (Help Doc)](https://www.shortstack.com/help/refer-a-friend/)
[How To Import Comments From An Instagram Post (Help Doc)](https://www.shortstack.com/help/how-to-import-comments-from-an-instagram-post/)
[Before Publishing Your Campaign Checklist (Help Doc)](https://www.shortstack.com/help/before-publishing-your-campaign-checklist/)
### FAQs
#### Why can't I require a like to enter?
On Facebook you can — the Graph API exposes who reacted to a Page post. Instagram, TikTok, YouTube, LinkedIn and Pinterest don't release that data, so entrants can't be retrieved or a winner verified. Use a form instead.
#### Can I make people follow my account to enter?
You can ask, but no platform exposes your follower list to a third-party tool, so it can't be collected automatically — you'd need to check your winner by hand. The safe pattern is a form for the entry and a bonus entry for a comment.
#### Which social actions actually work?
Comments are the most reliable — on a Facebook Page post, an Instagram Business or Creator post, or a YouTube video. Beyond that, a simple entry form works everywhere and you keep the lead.
#### Why is share-to-enter against the rules?
Shares aren't verifiable, and Facebook's Pages policies specifically prohibit requiring a share to enter. For word of mouth, use a refer-a-friend mechanic with a tracked link.
#### Is requiring a purchase legal?
It depends on random versus skill. For a random draw, requiring a purchase generally makes it an illegal lottery unless you offer a free alternate method of entry. The Rules Generator builds the correct structure.
#### Does a green verdict guarantee my campaign is allowed?
No. Treat it as expert guidance to plan around, not a legal or compliance guarantee.
---
## Campaign Menu
URL: https://www.shortstack.com/help/campaign-menu/
Category: Building a campaign
Plan required: All plans
Last reviewed: 2026-02-25
The Campaign Menu is a dropdown menu in the Campaign Builder that provides quick links to navigate to other campaigns and manage the current campaign.
### Getting there
To access the Campaign Menu:
1. Open a campaign in the Campaign Builder.
2. Click on the campaign name in the top-left corner of the Campaign Builder.
### About
The Campaign Menu allows you to perform the following actions:
#### Access the campaign ID number
This ID is useful when submitting a support ticket, as a ShortStack agent may request it. Click the number to automatically copy it to your clipboard.
#### View the template name
See which template was used to build the campaign. This is helpful if you've made significant changes and want to reference the original template.
#### View campaign analytics
Available for Scale Plan and higher.
Click on Analytics to open a pop-up displaying campaign performance data.
Learn more about [Analytics.](https://www.shortstack.com/help/)
#### Make a copy of the campaign
Duplicates the campaign and automatically opens the copy in the Campaign Builder.
Learn more about [Copying a Campaign](https://www.shortstack.com/help/copying-a-campaign/).
#### Make a template from the campaign
Available for Max Plan and higher.
Converts the campaign into a reusable template.
Learn more about [Copying a Campaign](https://www.shortstack.com/help/copying-a-campaign/).
#### Create a new campaign
Click Create New Campaign to open the Templates Gallery and start building a new campaign.
#### Recent campaigns
A list of your recently opened and updated campaigns appears here in descending order. Click a campaign to open it in the same tab.
### Related resources
[Campaigns Manager (Help Doc)](https://www.shortstack.com/help/campaigns-manager/)
[How to Set Up A Template (Video)](https://youtu.be/fSi-iQSlXQY)
[Copying a Campaign (Help Doc)](https://www.shortstack.com/help/copying-a-campaign/)
[Campaign Settings (Help Doc)](https://www.shortstack.com/help/campaign-settings/)
---
## Campaign Settings
URL: https://www.shortstack.com/help/campaign-settings/
Category: Building a campaign
Plan required: All plans
Last reviewed: 2026-02-24
The Campaign Settings menu allows you to adjust a campaign's HTML, sharing, embedding, and security settings.
### Getting there
To access Campaign Settings:
1. Open a campaign in the Campaign Builder.
2. Click the Settings icon (gear icon) located on the top-left, next to the campaign name.
### About
The Campaign Settings menu contains the following sections, accessible from the left-hand menu:
- General
- Security
- Analytics
### General
#### Campaign name
Enter the name of your campaign as it will appear in your ShortStack account.
#### Default time zone
Set the campaign's time zone. Best practice: use the time zone where most of your audience is located.
#### Default builder width (in pixels)
Set the width of the Campaign Builder preview (not the campaign itself). You can adjust the campaign's maximum width in the Theme section of the Style Panel.
#### Start in Live Entries mode
Toggle to enable or disable starting in Live Entries Mode when the campaign is loaded.
#### Start in edit off mode
Toggle to enable or disable starting in Edit Off Mode when the campaign is loaded.
#### Additional subdomains
Enter additional subdomains (e.g., www) for custom domains. This does not affect campaigns published on ShortStack domains. You must create a CNAME record in your DNS.
#### Bookmark/favicon image (32px x 32px)
Upload a small image to serve as the icon displayed on the browser tab and when bookmarking the campaign.
#### Page title
Set the campaign's browser title, default bookmark name, and search engine result title.
#### Page language
Select the campaign’s language using the dropdown (the default is English).
#### Page language direction
Specify text flow direction:
- left-to-right, default
- right-to-left
- auto, browser-determined
#### Fixed navigation bar height
Add padding at the top of the campaign for embedded campaigns with fixed navigation bars to prevent content from being cut off.
#### Allow crawlers to index my campaign
Using the dropdown, select either:
- Landing Pages only
- Yes: Index both embeds and landing pages.
- No: Prevent indexing for both. (default)
#### Sharing defaults
When your campaign is shared on social platforms like Facebook or LinkedIn, it uses Open Graph tags to include metadata:
- Title: Enter a title (default is the campaign name, max 255 characters).
- Description: Add a brief description (max 1000 characters).
- Image: Use a 1200x630px image for best results.
Learn more [About Sharing](https://www.shortstack.com/help/about-sharing/).
### Security
#### Cloudflare Turnstile mode
Available on Scale Plan and higher.
Prevent bots from entering your campaign. Options:
- Invisible (default): No user interaction required; best for embedded campaigns.
- Visible: Visitors may need to complete an interactive challenge; best for landing pages.
- Disable: Disables Cloudflare Turnstile (not recommended).
Enable for embedded campaigns by checking the Enable if my campaign is embedded box.
#### Google reCaptcha
Available on Scale Plan and higher.
Site Key: Enter your public reCaptcha key.
Secret Key: Enter your private reCaptcha key.
Learn [How to Create Google reCAPTCHA Keys](https://www.shortstack.com/help/how-to-create-google-recaptcha-keys/).
#### Rate limiting
Set the number of entries allowed per IP address per minute (default is 20).
#### Referrer blacklist
Block users from entering your campaign via specific domains (e.g., giveaway sites).
#### Embedding whitelist
Restrict embedding to specific domains. Enter root domains only (e.g., example.com). For multiple domains, separate with spaces.
### Analytics
#### Advanced data analytics
Available on Max Plan.
When enabled, your campaign analytics will reflect more accurate identification of visitors and entrants by collecting additional data about them. When not enabled, unique visitor data and return user data may not be as accurate. Per [GDPR](https://gdpr-info.eu/) and [CCPA](https://oag.ca.gov/privacy/ccpa) privacy laws, you are required to disclose to visitors and entrants to the campaign that you are collecting the information listed below. ShortStack is not held liable if you do not disclose this information; it is your responsibility.
Data ShortStack is collecting for Analytics:
- Screen resolution and color depth
- System memory
- System CPU core count
- Browser language
- OS platform
- Timezone
- Timezone Offset
- Graphics vendor and renderer info
This information is not attached to personally identifiable information such as an email address, name, address, etc. It is solely used to provide accurate analytics for the performance of your ShortStack campaign.
If Advanced Data Analytics is not enabled, the identification of visitors and entrants is not as accurate. Specifically, the accuracy can be affected by:
- Organizations/campuses/households where multiple users share the same IP address and might use the same browsers.
- Entrants who use VPNs that change their external IP addresses.
### Related resources
[Enable and Customize Share Settings (Video)](https://youtu.be/phBjCcHDWRc)
[Share Widget (Help Doc)](https://www.shortstack.com/help/share-widget/)
[Open Graph Meta Tags (Help Doc)](https://www.shortstack.com/help/open-graph-meta-tags/)
---
## Campaigns Manager
URL: https://www.shortstack.com/help/campaigns-manager/
Category: Account & billing
Plan required: All plans
Last reviewed: 2026-08-14
The Campaigns Manager allows you to create, edit, manage, archive, and delete your campaigns with ease. This guide covers everything you need to know about navigating and using this tool effectively.
### Getting there
From the Dashboard:
1. Click Manage in the navigation menu.
2. Select Campaigns from the options.
If Favorited, simply click Campaigns in the side navigation menu.
> **Note:** Favoriting adds a direct link to the Campaigns Manager to the navigation menu. To favorite, click the heart icon next to the "Campaigns" title. Favorites are stored in your browser, so you’ll need to re-establish them when using a different browser or computer.
### Campaigns Manager layout
New Campaign Button: Use this button in the top-right corner to create a new campaign.
List or Thumbnail View: To the left of the New Campaign Buttons, select either the List View or Thumbnail View.
Campaign List: All your previously created campaigns appear on the right and are displayed in info panes.
Each info pane provides:
- A preview thumbnail of the campaign.
- The campaign name.
- The number of installs (or places where the campaign is published). Clicking Installs opens the Publications Manager, where you can view and manage the campaign's publication URLs.
- Updated X Days Ago shows when the campaign was last edited. Hovering your cursor over this text reveals the exact day the campaign was last updated.
- The Campaign ID is visible when you hover your cursor over the campaign. Clicking the number automatically copies it to your clipboard.
### Managing campaigns
#### Editing and renaming campaigns
Open Campaign: Click the campaign name or the Edit icon on the right to open it in the Campaign Builder.
Rename Campaign: Hover over the name, click the edit icon, type the new name, and click the blue checkmark to save.
#### Additional campaign options
Access additional options by clicking on the dropdown arrow at the top right of the info plane.
Permissions (Available on Max Plan): Grant access to specific campaigns for team members.
Learn more about [ShortStack for Teams](https://www.shortstack.com/help/shortstack-for-teams/).
Archive: This allows you to hide a campaign without deleting it. Archived campaigns appear only when the Show Archived checkbox is selected in the filtering options.
Delete: Permanently remove campaigns that are unpublished/uninstalled.
> **Note:** Deletion is irreversible, so make templates or copies beforehand if needed.
The Campaign ID is at the bottom right corner of the info pane when your cursor is placed over it.
To access Campaign Analytics, click on the pie chart icon.
Learn more about [Campaign Analytics.](https://www.shortstack.com/help/)
### Filtering, searching, and sorting
#### Filtering options
Filter by... Landing Page, Embedded, or Unpublished.
Show Archived: Check this box to display archived campaigns.
Review Status (Available on Max): Check this box to show any campaigns that need to be reviewed for publishing.
#### Search campaigns
Use the Search field in the top-left corner to search by campaign name. Additionally, use the Tag field to search for all campaigns with that specific tag.
#### Sorting options
Click the sorting button next to the campaign count at the top to organize campaigns by:
- Recently Edited.
- Newest.
- Oldest.
### Bulk actions
Click and drag your cursor across the screen to quickly select multiple campaigns. When selecting one or more campaigns, the top bar displays additional options:
Tag (Available on the Max Plan): Add tags to campaigns or view/edit existing tags. Enter tags separated by commas, press Enter, then click Save.
Archive: Archive selected campaigns. Use Show Archived to view and restore them.
Delete: Permanently delete multiple campaigns. Confirm by typing the required phrase in the prompt.
> **Note:** Deletion is irreversible, so make templates or copies beforehand if needed.
### Related resources
[How to Unpublish a Campaign (Video)](https://youtu.be/xuSAnIbDk1s)
[The Essential Guide to Online Contest Marketing (Blog Post)](https://www.shortstack.com/blog/the-essential-guide-to-online-contest-marketing-what-why-how-10-examples/)
[Emails Manager (Help Doc)](https://www.shortstack.com/help/emails-manager/)
[How to Unpublish (Uninstall) a Campaign (Help Doc)](https://www.shortstack.com/help/how-to-unpublish-uninstall-a-campaign/)
[Copying a Campaign (Help Doc)](https://www.shortstack.com/help/copying-a-campaign/)
---
## CAN-SPAM Act information
URL: https://www.shortstack.com/help/can-spam-act-information/
Category: Creating emails
Last reviewed: 2026-06-30
The CAN-SPAM Act was enacted in 2003 to prevent unsolicited marketing emails.
### Overview
> This Act establishes requirements for those who send unsolicited commercial email. The Act bans false or misleading header information and prohibits deceptive subject lines. It also requires that unsolicited commercial email be identified as advertising and provide recipients with a method for opting out of receiving any such email in the future.
The [CAN-SPAM Act](https://www.ftc.gov/legal-library/browse/statutes/controlling-assault-non-solicited-pornography-marketing-act-2003-can-spam-act) requires commercial emails to include:
- A valid business name and address (via the Company Profile).
- An Unsubscribe link for recipients.
### FAQs
#### Can I disable the unsubscribe footer required by the CAN-SPAM Act?
Yes, if your emails are viewed as transactional, you can disable this footer. This feature is available on Enterprise.
### Related resources
[New Accounts & Protecting Deliverability (Help Doc)](https://www.shortstack.com/help/new-accounts-and-protecting-deliverability/)
[How to Create Double Opt-In Emails (Help Doc)](https://www.shortstack.com/help/how-to-create-double-opt-in-emails/)
[Creating and Managing Company Profiles (Help Doc)](https://www.shortstack.com/help/creating-and-managing-company-profiles/)
[Creating Autoresponder Emails (Help Doc)](https://www.shortstack.com/help/creating-autoresponder-emails/)
---
## Category Field
URL: https://www.shortstack.com/help/category-field/
Category: Widgets
Plan required: All plans
Last reviewed: 2026-02-09
The Category Field is a custom field with unique properties that enhance form functionality. This guide outlines all the features and settings available for the Category Field.
### Getting there
1. In the Campaign Builder, drag and drop the Field Widget into a Form Container.
2. In the pop-up, select Category from the Custom Field list.
3. Click Next to proceed.
### Field settings
#### Layout
##### Allow multiple selections
If entrants can select more than one category, check the Allow Multiple Selections box. Layout options include:
- List: Displays all categories; entrants click to select their choices.
- Checkboxes: Categories appear with checkboxes for selection.
- Tiles: Categories appear as tiles, which are suitable for adding images.
> Note: When multiple categories are allowed, vote counts reflect the total votes across all selected categories for an entry.
##### Single-selection layout options
If multiple selections are not allowed, layout options include:
- Dropdown: A classic dropdown menu for single selection.
- Radio Buttons: Categories are displayed with radio buttons for selection.
- Tiles: Displays categories as tiles with image support.
- Text: A blank text field where entrants manually enter a category. (Case-sensitive when using Text Layout)
#### Text
Assign Labels or Prompts (for dropdown layouts only) in this section to guide entrants.
#### Validation
Select one of the following options:
- Always: Field is always mandatory.
- When Visible: Field is mandatory only when visible.
- Never: Field is not required.
#### Error messages
Customize error messages by entering your desired text in the appropriate fields.
#### Content
Define your categories in this section.
##### Input modes
Text Input Mode:
- Type each category on a separate line.
- Capitalization matters when using the Text Layout.
Prompted Input Mode:
- Enter choice text, add a value (e.g., monetary value for certain templates), and optionally add an image.
- Use the + icon to upload an image via the Media Library.
- Add a new choice with the Add Choice button.
- Delete choices with the trash can icon.
##### Default value
Select a default category or leave it blank to keep the field unselected initially.
#### Field points
Assign a point value to the field to award entrants additional points for completing this field.
### Other
#### Instructions field
Add text to the Instructions field to display below the field when it is focused (selected).
#### CSS classes
Add custom CSS classes to the Extra CSS classes field for styling via the CSS Editor.
### Visibility
Control field visibility by:
- Date and Time: Limit field visibility to a specific period.
- Pop-Up Display: Show the field as a pop-up.
- Builder Only: Limit field visibility to the Campaign Builder.
- Country Restrictions: Show the field only in specific countries.
Learn more about [Widget Visibility](https://www.shortstack.com/help/widget-visibility/)
### Extras
Learn more about the Main Tag, CSS Classes, and Smart Labels settings in [Widget Extras](https://www.shortstack.com/help/widget-extras/).
### Category field styling options
When the Widget is selected, you can customize the styling of the specific widget. Some of the options include changing the radio button color, the maximum width of the widget, font type, and widget alignment. You will see the following areas of styling available in the [Style Panel](https://www.shortstack.com/help/getting-started-with-the-style-panel/):
- Labels
- Radios & Checkboxes
- List Items
- Help Text
- Widget
### Related resources
[How to Build a Form (Video)](https://youtu.be/PU_x-2IIVrs)
[Image Widget (Help Doc)](https://www.shortstack.com/help/image-widget/)
[List Field (Help Doc)](https://www.shortstack.com/help/list-field/)
[Best Of Category Vote Contest (Help Doc)](https://www.shortstack.com/help/best-of-category-vote-contest/)
---
## Changelog
URL: https://www.shortstack.com/help/changelog/
Category: Getting help
Last reviewed: 2026-08-18
Every change we ship to ShortStack, newest first — new features, updates to existing ones, and changes to our policies. This log covers 249 releases from 2020 to today, each with its release date and a link to the relevant guide.
Every change we ship to ShortStack, newest first — new features, updates to existing ones, and changes to our policies. Dates are release dates.
### 2026
#### Stronger Password Requirements
October 8, 2026
ShortStack passwords now need to be at least 12 characters long. They can't include simple sequences, repeated characters, your name or other common weak parts, or any password exposed in a known data breach. If your current password doesn't meet the new rules, you'll see a banner asking you to update it. You'll need to change it within a few logins, or by December 1, 2026 at the latest. If your password appears in a breach, you'll need to change it right away.
[Learn more](https://www.shortstack.com/help/updating-your-login-information/#password-requirements)
#### Klaviyo Integration: SMS Marketing Opt-In
October 8, 2026
The Klaviyo integration can now subscribe entrants to SMS marketing as well as email. In your Klaviyo profile, choose a form field for SMS consent, or reuse your email consent field so one checkbox covers both. Phone numbers are also now sent in the format Klaviyo requires, so they import correctly. Existing Klaviyo profiles stay at None until you edit them.
[Learn more](https://www.shortstack.com/help/form-integrations/#klaviyo-integration)
#### New Action: Open URL in New Tab
October 6, 2026
The Action Widget can now open a URL in a new tab, so you can send entrants to another page without taking them away from your campaign. For example, set a button click to open your website or a product page. If the browser blocks the new tab, entrants see a pop-up with a link they can click instead.
[Learn more](https://www.shortstack.com/help/action-widget/#opening-a-url-in-a-new-tab)
#### Improved Email Login Voting/Entry Restrictions
August 25, 2026
We've leveled up Email Login security: verification codes are now 6 digits (up from 4) and expire after 15 minutes. Once a code's used, it's done — no reuse allowed.
#### Smarter Voting Triggers
August 19, 2026
Set up an Action Widget trigger that fires the moment a voter casts their final vote — perfect for showing a "come back tomorrow" message. Plus, trigger names and tooltips across the Action Widget are clearer, and the builder now warns you if a trigger (or action) won't work with your current setup.
[Learn more](https://www.shortstack.com/help/setting-up-an-end-of-voting-action/)
#### Share Widget Update: System Sharing Now Available
August 13, 2026
Campaigns can now offer a share option that opens your device's built-in share menu, so entrants can share straight to any app they have installed — with the title, description, and image filled in automatically, not just a link. This also fixes Facebook sharing on mobile, which previously just opened the Facebook app to the entrant's feed without sharing anything.
[Learn more about System Sharing](https://www.shortstack.com/help/share-widget/)
#### Field Library Update: Usage & Archiving, Clarified
August 12, 2026
Archiving a field now comes with a full breakdown of what it affects before you confirm. And the Campaigns tab shows field usage grouped by campaign, complete with publishing status and created/updated dates.
[Learn more about the Field Library](https://www.shortstack.com/help/field-library/)
#### Instant Filter Clearing in Managers
August 11, 2026
You can now clear all active filters in one click. A "clear all" button appears in the Filters sidebar in Managers such as Entries Manager, Campaign Manager, Lists Manager, and more!
#### Redesigned Instagram Feeds Wizard
July 27, 2026
Creating a hashtag feed is now a streamlined four-step wizard — Connect, Add Hashtags, Timing & Filtering, and Review & Launch. And if you have a single eligible Instagram Business account, we automatically connect it for you! We also generate a feed name automatically, which you can rename at any time.
[Learn more](https://www.shortstack.com/help/creating-and-managing-an-instagram-hashtag-feed/)
#### New Filter for Scheduled and Follow-Up Emails
July 22, 2026
You can now send Scheduled and Follow-Up emails based on the Label applied to entries. To access this feature, create or edit a Scheduled or Follow-Up email. On the main email content preview page, select "Filters". Here, you can add the Label you wish to include or exclude for email recipients.
[Learn more about Follow-Up Emails](https://www.shortstack.com/help/creating-follow-up-emails/#15-step-9--review-and-schedule)
[Learn more about Scheduled Emails](https://www.shortstack.com/help/creating-scheduled-emails/#14-step-8--review-and-schedule)
#### Entries Manager Filter Update: Per Round Votes/Points
June 24, 2026
Filtering entries based on vote/point counts is now more flexible. Instead of a single filter for Round 2 or Round 3 votes, you now get individual ranged filters for each round — mix and match across rounds to find exactly the entries you need. Ranges are inclusive (2 to 5 returns entries with 2–5 votes), and setting both From and To to 0 returns entries with exactly zero votes for that round.
#### Improved UI for the Media Selector
June 9, 2026
The Media Selector got a UX overhaul. You can now paste images straight from your clipboard, mark Favorites, filter by aspect ratio, and browse by tag. Pexels has also been added as a second stock photo library alongside Pixabay.
[Learn more](https://www.shortstack.com/help/media-selector/)
#### New Form Integration: Klaviyo!
June 9, 2026
Connect your Klaviyo account with OAuth (no API keys required!), then automatically create, update, or upsert Klaviyo profiles on every form submission. Optionally add entrants to a list, subscribe them to email marketing, or both!
[Learn more](https://www.shortstack.com/help/form-integrations/#16-klaviyo-integration)
#### HubSpot Integration Now Available!
June 4, 2026
HubSpot has been added to our list of form integrations. Easily import entries received in ShortStack to your HubSpot Account. This integration also has three modes for updating your HubSpot contacts:
- Create new contacts only
- Update existing contacts only
- Create new and update existing contacts
[Learn More](https://www.shortstack.com/help/form-integrations/#11-hubspot-integration)
#### Mailchimp Integration Update: Update Existing Contacts
June 4, 2026
You can now update existing Mailchimp contact information via the "Contact Mode" setting. This setting has three ways to update/create contacts:
- Create new contacts only
- Update existing contacts only
- Create new and update existing contacts
[Learn more](https://www.shortstack.com/help/form-integrations/#8-mailchimp-integration)
#### New Feature: Exports Manager
May 15, 2026
Track export status, monitor progress, and download your files within the Exports Manager.
[Learn more](https://www.shortstack.com/help/exports-manager/)
#### Improved UI for Code & Rich Text Snippets
May 15, 2026
We've redesigned the Snippets experience to make saving, inserting, and managing reusable content faster and more intuitive — in both Code Widgets and Rich Text Widgets. When you add a new widget, you'll see a prompt inviting you to Browse Snippet Library — just start typing to dismiss it, or click through to explore your saved snippets. The Snippets dropdown also lives in the toolbar for easy access anytime. Open the dropdown and click "Update Snippet" to save your changes back to the library. To rename or delete snippets, head to the new Library tab in the sidebar menu.
#### New Image Blur Feature
May 4, 2026
Prevent entry images from being fully visible in the Entries Manager with the new Image Blur Feature. This setting is located in the List Manager, under List Settings.
#### Automated Cleanup of Legacy Entry Media (>3 Years Old)
May 4, 2026
Starting June 3, 2026, we will begin removing media assets (images and videos) associated with entries that are three years old or older. If you see a clock icon on an entry in the Entries Manager, the media associated with that entry is flagged for removal. To preserve any media you'd like to keep, please navigate to the Entries Manager and export those assets before the June 3rd deadline.
#### Enhanced Filtering for Archived Items
April 23, 2026
We have updated the "archived" state filters across the platform (Campaigns, Lists, Emails, etc.) to provide more flexibility in how you view your data. While the default setting remains to exclude archived items, you now have the following options:
- Only Archived: Displays only your archived items
- Include Archived: Displays all items, regardless of their archived status
#### Export Profiles Required for Large Lists
April 14, 2026
To optimize performance and reduce export times, Export Profiles are now required for all lists with 1,000 or more entries. Export Profiles improve efficiency by allowing you to select only the specific data points you need, eliminating oversized CSV files and unnecessary empty columns.
[Learn how to create an Export Profile](https://www.shortstack.com/help/exporting-data-using-export-profiles/)
#### Automatically Play Videos
April 9, 2026
The Video Widget now supports automatic playback when a campaign loads. To ensure consistent performance across all environments, you can also configure videos to start on mute. Most modern browsers restrict autoplay for videos with sound; enabling the "Mute" option ensures your video plays immediately without being blocked. These settings are located under the Options tab in your Video Widget settings.
#### New Navigation and Manager Views
April 2, 2026
We’ve overhauled the ShortStack dashboard and manager views to provide a more flexible, modern experience, including a customizable table-based layout in the Entries Manager and a card layout in the Campaigns Manager. You can also try the new "paint-to-select" tool for rapid item management by clicking and dragging your mouse across rows or cards.
#### Minor Google reCAPTCHA Updates
March 26, 2026
We’ve updated the Form Container Widget with clearer labels and tooltips to help you easily manage your reCAPTCHA sensitivity settings. To help reduce your API costs, you can now choose to skip verification for auto-duplicated entries and benefit from optimized verification timing that only triggers after a form passes initial validation. These changes ensure you pay only for successful, necessary reCAPTCHA requests while maintaining robust fraud-protection tools.
#### Form Integrations Got a New Home!
March 24, 2026
We’ve given Form Integrations their very own tab in the Form Container settings! Along with a shiny new UX, we’ve made some major backend improvements to smooth things out. These changes lay the groundwork for even more integrations coming your way soon, so keep an eye out!
[Learn more](https://www.shortstack.com/help/form-integrations/)
#### Publishing Wizard & Visual Picker Updates
March 17, 2026
The Publish Wizard now supports a no-script iframe embed option for users who cannot install the global embed script on their site. Manual Install sites are remembered and handled with a smoother wizard flow, skipping the embed code validation step. The Visual Picker Tool has also been improved with better arrow key and skip logic, an on-screen d-pad, and a new Advanced Settings panel with a width slider.
#### Publications Manager Makeover
March 9, 2026
We’ve redesigned the Publications Manager for a better user experience. While the interface is now much easier to navigate, the core publishing functions remain the same.
#### Field Widget Update: Invisible Fields
March 3, 2026
We’ve renamed the "Make this field hidden" setting to"Make this field invisible" to better distinguish it from standard visibility settings. To improve security, any invisible field that fails server-side validation will now result in a silent rejection—mirroring how our fraud filter operates. Additionally, a new "Silently reject entry if value is missing" setting ensures invisible fields remain valid without triggering user-facing errors.
#### New Dashboard Design
February 28, 2026
The ShortStack Dashboard has been completely overhauled! You can now view high-level analytics, access your recent campaigns, and monitor account usage—all from one central location.
#### New Template Gallery
February 25, 2026
The Template Gallery has a new layout and design! You can now search for templates by selecting one or more keywords at the top or by using the search bar to find specific designs instantly.
#### Updated Privacy Policy
February 20, 2026
We have updated our privacy policy which includes: Faster data deletion, New user rights for California residents, Subprocessor transparency, and more.
[Review the changes here](https://www.shortstack.com/privacy-policy/)
#### Updated Terms and Conditions
February 20, 2026
We updated our terms and conditions, which include: Usage Limits and Overage Charges as well as Legacy Plan protections.
[Review the changes here](https://www.shortstack.com/terms-and-conditions/)
#### Updated Data Processing Agreement (DPA)
February 20, 2026
We have updated our Data Processing Agreement (DPA), which includes an addendum to formalize how ShortStack handles your personal data and your customers' data when you use the platform.
[Review the changes here](https://www.shortstack.com/data-processing/)
#### Edit Widgets Panel UX Update
February 9, 2026
We’ve streamlined the Edit Widgets Panel to give you more flexibility and speed when building campaigns. We've added new keyboard shortcuts such as L (Lock), V (Visibility), and Shift + Arrows to manage widgets instantly.
[Learn more](https://www.shortstack.com/help/edit-widgets-panel/)
#### Custom Google reCAPTCHA Keys Now Required
January 26, 2026
To maintain stable plan pricing while providing robust fraud protection, ShortStack now requires users to provide their own Google reCAPTCHA API keys for bot prevention. This update applies to new campaigns published starting the week of January 26, 2026. Google provides up to 10,000 free reCAPTCHA uses per month, and existing published campaigns will continue to function without interruption.
[Learn more](https://www.shortstack.com/help/how-to-create-google-recaptcha-keys/)
### 2025
#### Click to Embed: Inline Embedding 2.0
December 9, 2025
This update to inline embedding streamlines the process of embedding campaigns directly within your website's content. The new Visual Picker Tool allows you to select your campaign's placement interactively, eliminating the need for manual coding or CSS knowledge.
[Learn more](https://www.shortstack.com/help/how-to-embed-a-campaign-inline-2-0/)
#### Publishing Wizard 2.0: Updated Embedding and Pop-Up Controls
October 15, 2025
Publishing 2.0 introduces a simplified embedding process and enhanced pop-up configuration. The embed code now only needs to be installed once in your CMS, enabling faster, more consistent campaign deployment. The pop-up builder has been upgraded with finer control over display timing and triggers for improved customization.
[Learn more](https://www.shortstack.com/help/how-to-install-our-global-embed-code-2-0/)
#### Automatic Form Field Copying is Now Available!
September 3, 2025
New Form Containers will automatically copy values from matching fields in other forms or lists. For example, if someone enters their email in one form, it will be pre-filled in another within the same campaign—no extra setup required. The most recent submission value is used, and you can disable this option in Advanced settings. Existing Form Containers will keep the old behavior (no auto-copying).
[Learn more](https://www.shortstack.com/help/form-container-widget/#26-advanced)
#### New and Expanded Analytics are Here!
August 26, 2025
You’ll now see more charts, graphs, and data points to give you deeper insight into your campaign performance.
[Learn more](https://www.shortstack.com/help/analytics-manager/)
#### Sharing Entries and Referral URLs is Now Simpler
August 25, 2025
Instead of setting up sharing inside the Form Container, you can now connect it directly to a Share Widget and manage all your settings there.
[Learn more](https://www.shortstack.com/help/form-container-widget/#19-redirect-to-another-url)
#### New Features for the Rich Text Widget
July 25, 2025
Liquid syntax, which helps you create conditional messaging, and SVG images are now supported in our Rich Text widget..
[Learn more here](https://www.shortstack.com/help/rich-text-widget/)
#### Email Login: Time-Based Verification Now Available
July 9, 2025
You can now customize how often users need to verify their email when using the Email Login feature for voting or entry restrictions. This new option lets you set a time-based grace period. Once verified, users can skip re-verification for a set duration. This setting is located in Campaign Settings, at the bottom of the Email Login section. Note: The default behavior remains "verify every time" unless changed.
#### Social Import Tool Now Supports Facebook Reels
May 15, 2025
You can now import comments and reactions from Facebook Reels using the Social Import Tool! When selecting a post type in the Import Wizard, you'll see Facebook Reels as a new option.
#### New Voting Action Widget Triggers
May 1, 2025
We've added two new Action Widget triggers to enhance your voting campaigns: 1. “A vote is rejected” triggers when a vote violates set restrictions as defined in your Entry Widget’s "Voting Restrictions” (e.g., exceeding allowed votes per day or per entry). 2. “Has reached the maximum number of votes” triggers when a voter exceeds the campaign's maximum total votes.
#### Improved Field Widget Validation
April 28, 2025
We've enhanced Field Widget validation to prevent common errors. When a Field Widget is set to "Require Always" but is hidden (either itself or via a parent container), you'll now see a warning icon in the Edit Widgets Panel. Click this warning to automatically switch the requirement to "Required when visible", helping you avoid validation issues. Additionally, newly added Field Widgets in hidden states will automatically default to "Required when visible" to streamline your setup and testing process.
#### Instant Win Improvements
March 26, 2025
We've consolidated all Instant Win settings into one page, enhanced the prize distribution chart, and now automatically determine the number of prizes when using a code list.
[For more details, please see our Instant Win Help doc](https://www.shortstack.com/help/instant-win/)
#### Updating Account Themes
March 17, 2025
When ShortStack engineers make updates to the Style Panel, you will now see a prompt to update your theme. Updating the Theme will not affect your campaign styling, but it ensures your Style Panel is up-to-date.
[For more information](https://www.shortstack.com/help/update-theme-prompt/)
#### Style Panel Update: New Fonts and More!
March 13, 2025
The Style Panel has been updated with additional Google Fonts. The date field now defaults to full width. A new alignment setting is available for the Upload Field. Lastly, Theme colors are now defined as CSS variables. If you have questions about the CSS variables, please reach out to us.
#### Import Comments from Boosted Instagram Posts
March 3, 2025
You can now import comments from Boosted posts on Instagram. To do so, select the Normal post type option. Boosted posts will be labeled as such.
#### Updated Layout to Boolean Field
February 11, 2025
We’ve added a new ‘Radio Buttons‘ layout option for custom boolean fields. You can also customize the labels for the yes/no radio buttons.
#### Smart Labels: Improved Targeting Logic
January 27, 2025
Smart Labels are now smarter, making it easier to build complex campaigns with fewer Action Widgets. For single-widget actions (e.g., "Pop up") targeting by Smart Label, we now intelligently select the best target widget when multiple widgets match. Selection is based on: 1. Relevance to the action (e.g., "Popup" actions prioritize widgets configured for popup visibility). 2. Visibility of the widget's parent. 3. Proximity to the Action Widget.
### 2024
#### Vote Button Reset Feature
December 31, 2024
We've updated the Entry Widget's vote button resetting feature. This feature, which temporarily resets vote buttons after a vote, is now configurable. You can enable or disable it and adjust the reset delay time in the Advanced section of the Voting panel. By default, the feature is disabled.
[Read details here](https://www.shortstack.com/help/entry-display-widget/#9-voting)
#### New Feature: Embed Validation Tool
December 16, 2024
In the Publications Manager, you can now validate your embed code directly on your website. Just click "Click to Validate Embed Code" to ensure everything is set up correctly. If not, more information will display to help you troubleshoot the issue.
[Learn more here](https://www.shortstack.com/help/how-to-install-our-global-embed-code-2-0/#after-installation)
#### New Voting Restriction Available
December 6, 2024
When “per entry” vote restrictions are in place, you can also limit the total votes per campaign. This allows you to have a campaign where users can vote once per entry with 5 votes total, for example.
[Read more in the Entry Display Widget Help Doc](https://www.shortstack.com/help/entry-display-widget/)
#### Sample Error Text for Forms Updated
November 30, 2024
The "Sending message..." and "Error message..." will only appear when the Form Container is selected, to aid with style changes. Otherwise these messages will be hidden.
#### “Allow crawlers” Setting Updated
November 28, 2024
The “Allow crawlers” checkbox is now a dropdown in the HTML section of the Campaign Settings, supporting landing pages with new options: YES, Landing pages only, and NO. Old settings are automatically converted for compatibility.
[Learn more here](https://www.shortstack.com/help/campaign-settings/)
#### New Feature: Cancel Subscription
November 27, 2024
You can now cancel your ShortStack subscription without deleting your account. Cancellation takes effect at the end of your billing cycle, after which you’ll be downgraded to the Free Plan.
[Learn more](https://www.shortstack.com/help/downgrading-pausing-cancelling-your-subscription-and-deleting-your-account/)
#### Refer-a-Friend Update
November 7, 2024
When enabling a maximum points per entry in the Refer-a-Friend feature points will be awarded to the referring entry up until the value entered is reached. Points from other sources (like votes) are not factored in.
#### Small Entry Display Widget Update
November 4, 2024
You can configure which round of votes to display, even when voting is disabled.
#### Share Widget: Email Sharing
September 26, 2024
The Email share button will open your computer’s default email program/website and populate the subject and body. This feature can be used with the Refer-a-Friend feature.
[Learn more](https://www.shortstack.com/help/share-widget/)
#### Navigation Arrows for Entry Popups
September 23, 2024
In addition to the navigation dots for entries, you can use arrows instead. The settings for the navigation icons can be found in the Style Panel.
#### Campaign Settings: When Builder Loads
September 9, 2024
There are two new settings that affect how the Campaign Builder loads. 1. Start in Live Entries when campaign loaded 2. Start in Edit Off mode when campaign loaded Both settings can be toggled on or off depending on your preferences and needs.
[Learn more](https://www.shortstack.com/help/campaign-settings/)
#### Collapsed Container Memory
August 28, 2024
Collapsed containers are now automatically memorized on a per browser, per campaign basis.
#### Entry Label Exclusion Filter
August 22, 2024
Located in the the Entries Manager, you can now filter entries by excluding specific labels. For example, you can remove all previous winners by excluding the winner label.
#### Introducing: Fraud Filter
August 20, 2024
The Form Container can check submissions for specific patterns. If a pattern is matched, additional actions will take place, such as the entry being denied.
[Full details on using the Fraud Filter found here](https://www.shortstack.com/help/prohibit-fraudulent-and-spam-entries-with-fraud-filter-feature/)
#### New Campaign Setting: Additional Subdomains
August 2, 2024
Enter additional subdomains being used, such as www, for custom domains.
[For more information](https://www.shortstack.com/help/campaign-settings/)
#### Category-Based Voting Restrictions
July 11, 2024
You can now restrict voting in the Entry Display Widget based on category. You can find this setting in the Voting Restriction section.
[To learn more](https://www.shortstack.com/help/entry-display-widget/)
#### New Action: Set Category
July 11, 2024
When an Entry Display Widget has the “Filter by category” setting enabled and no category is pre-selected, the category can be chosen/changed via an Action Widget. This lets you set up a menu system for changing the category being displayed using a single Entry Display Widget. Previously, you had to use one Entry Display Widget for every category you wanted to display.
#### Introducing: Smart Labels
June 24, 2024
Smart Labels are a new way to label and target widgets for actions. When you need to perform an action that targets multiple widgets, you can use the same Smart Label. The action will target any widget with that Smart Label, thus saving time and creating a more succinct Action Widget.
[For more information on using Smart Labels, please go here](https://www.shortstack.com/help/using-action-labels-in-an-action-widget/)
#### List Field Update
May 27, 2024
The List Field can now support images via the Tiles Layout. The Tile Layout allows for entrants to choose their favorite option, as in the Win Your Wishlist Template, or provides additional context when selecting a list item.
#### New Entries Manager Filters
May 7, 2024
You can now filter entries based on Feeds in the Entries Manager. Additionally, you can exclude entries from feeds. This is useful when you have a list that contains entries from a form and a Feed but want to sort/filter the entries.
#### Disable CAN-SPAM for Autoresponders
March 12, 2024
You can now disable the CAN-SPAM Footer for Autoresponder emails if the email is primarily transactional.
[Learn more](https://www.shortstack.com/help/creating-autoresponder-emails/)
#### Import Comments from YouTube
March 5, 2024
You can now import comments from a Youtube Video. Open the Lists Manager and select "Import From" to get started. Once the pop-up is open, select YouTube and follow the wizard.
[For in-depth details please go here](https://www.shortstack.com/help/how-to-import-comments-from-a-youtube-video/)
#### Introducing: Cloudflare Turnstile
February 20, 2024
Cloudflare Turnstile is automatically active for all Pro Plan users and above. This feature prevents bots from accessing your campaign landing page. You can edit the turnstile settings in the Security Tab in the Campaign Settings.
[For additional information please go here](https://www.shortstack.com/help/cloudflare-turnstile/)
#### Email System Enhancements
January 10, 2024
There are three new updates to the Email Builder. 1. There are three new email addresses available for use in the From Email Address field in the email wizard: no-reply@shortstack.page, no-reply@lndg.page and no-reply@cmpgn.page. Using any of these will ensure emails pass SPF, DKIM and DMARC. 2. In the email wizard, the From Name and From Email Address fields are optional. If left blank, From Email Address defaults to the Default From Email in the company profile, and if that’s blank, it will use no-reply@campaign-mail-1.com (the placeholder shown in the field informs the user what the default will be). From Name defaults to the value of Default From Name in the company profile, and if that’s blank, the Business Name in the company profile. 3. In the email wizard summary page, a warning will be displayed in the FROM section if a non-ShortStack From email is used and either SPF is not properly configured or any DMARC policy is found. Clicking the red warning shows a dialog with more information.
### 2023
#### Simulated Errors
November 29, 2023
Because of some issues in the past with troubleshooting forms (and errors being hidden because of some alternative form logic), we've added a simulated error option to the Preview mode of the Campaign Builder. This should allow you to build complicated form flows a little bit easier, since you'll now be able to see when/where errors are occurring.
#### Mobile Login Goes Away
November 28, 2023
Mobile login has now been completely deprecated for the Login field; it has been completely shut off and will no longer function. We recommend using Email login instead!
#### Login Field Changes
November 10, 2023
The Login field now supports login via email; the Mobile option has been deprecated and is only available to folks who currently have it in use in an active campaign. This option sends a code to the email provided, and then the visitor has to submit that code to the campaign for the email address to be verified. Repeat visitor rules have also been tweaked to allow for a less confusing experience.
#### Everyone's a Winner!
October 25, 2023
The Instant Win feature has been tweaked so that if you want everyone who enters to be a winner - you can do just that! Find the new settings under "Prize distribution strategy" (under "Advanced") in the Schedule section of the Instant Win wizard.
#### New Entry Restrictions Setting
October 17, 2023
You can now specify how many entries can be submitted to a campaign in a specific time period. We used to only support one entry; for example: "one entry per hour" or "one entry per calendar day." Now, you can allow things like "2 entries every hour" or "6 entries per calendar day."
#### New File Types Supported in Media Manager
October 16, 2023
We've added a TON of new file type support in the Media Manager! You can now upload fonts using the eot, ttf, woff, woff2 and otf file types. You can upload mpeg and mp3 audio file types, and when it comes to web assets, you can now upload js, css, pdf, xml, svg, and csv files.
#### Display Vote Counts as Percentages
September 28, 2023
In the Entry Display Widget, we've added a new setting that allows you to display the vote count as a percentage of total votes. This setting only works when *all* entries are visible on the same page; so if you have enough entries to need pagination (more than 30), this setting will not work.
#### New Video Widget Actions
September 11, 2023
Now in the Action Widget, you can configure a Video Widget to play, stop, rewind, or toggle play (play/pause)!
#### Action Widget Improvements
August 16, 2023
Now when configuring an Action Widget, the IFs and WHENs are now configured in separate sections – this should make it a bit more clear that they serve different purposes. We’ve also added in some actions that can apply to the entire campaign: Refresh, Redirect Campaign, and Wait.
#### Voting/Action Widget Updates
July 24, 2023
The wording in the Voting Restrictions section of the Entry Widget was changed to help alleviate some confusion. We replaced "only" with "add an interval" and "disable interval." In the Action Widget, to help folks avoid misconfiguring things during setup, we now provide warnings when we detect anti-patterns (a.k.a. bad practices). At the moment, only one anti-pattern is detected: Submitting a form and hiding it in the same Action Widget. This is a bad practice because it will hide any server-side error message (such as failing ReCAPTCHA or failing entry restrictions).
#### Self-Serve List Import
July 3, 2023
We've added a do-it-yourself list import feature, for folks on Enterprise plans. If you have access to this feature, you'll see a new dialogue when clicking the "Import List" button in the Lists Manager. You can only import into a new list, but you can name and tag it along with uploading your CSV file. Once you agree to the terms, the file will be processed and entries imported - you'll receive an in-app notification when it's finished (or if there was an error).
#### New Entry Filters
June 12, 2023
A few new filters have been added to the Entries Manager. You can now filter on City, State/Province, and Zip/Postal Code.
#### Entries Manager - Bulk Actions
June 7, 2023
New bulk actions are now available in the Entries Manager. These changes will apply to all entries matching the current filter set in the Entries Manager. These new menu items are available in the "Actions" drop-down.
#### Entries Manager - Select All
May 31, 2023
The way to select/deselect entries in the Entries Manager has been given a powerful little tweak. Now, instead of a "Select/Unselect All" button, we have a checkbox that you can use to toggle through selection states. Select some entries and you'll see it list the number of selected entries. Click it once to deselect all selected entries, then click it again to select *all* currently loaded entries in the Entries Manager.
#### Widget Visibility and Validation
May 16, 2023
Prevously, if a Field Widget was hidden via that widget's timed visibility settings, we would still try to validate it on our server. Now, when a form is submitted to our server, we won't attempt to validate such widgets.
#### Suspending Twitter Hashtag Feeds
April 22, 2023
We have indefinitely suspended X (formerly known as Twitter) hashtag feeds and retweet feeds. As you may have heard, Elon Musk recently announced new API pricing for X, which has made it considerably more expensive to use the X API for our business. After careful consideration, we decided that the added cost was far too high – the level of access we need starts at $42,000/month – and we don’t want to pass the cost on to our customers. Additionally, the new X API won’t provide the same functionality as the current version, which limits our ability to offer the same quality of service you rely on. We know many customers use X hashtag and retweet feeds for contests planned well in advance, and this change may be frustrating. We apologize for any inconvenience it may cause, and we’re happy to work with you to get these contests over the finish line.
#### New ReCAPTCHA Features
April 17, 2023
Rather than outright rejecting entries with lower reCaptcha scores, which can prevent legitimate entries as well as make it easier for bots to fine-tune their submissions to bypass ReCAPTCHA, we wanted to make it easier to accept entries with lower scores, but reject them for Instant Win or when picking winners after the campaign is over.
#### Builder Form Messages
April 17, 2023
In a normal Form Container widget, the default Submit button and the sending/error messages appear at the bottom of the widget, so they are always going to appear together. To help prevent any potential confusion when building complex forms, the “Sending” and “Error” messages now appear in the builder. They only appear in “build” mode. As soon as you click the Preview button, they will disappear.
#### Embedded Campaign Query Parameters
April 5, 2023
All query parameters in the parent page URL are now passed to the embedded campaign and can be used in action widgets exactly the same as if those parameters were part of the campaign URL.
#### Forms With Hidden Submit Buttons
April 5, 2023
You can now submit forms with a hidden submit button by pressing the Enter key. In order to work, the Action Widget responsible for submitting the form must have a "visible fields are valid" trigger. This is the trigger we commonly use to advance to the next set of fields in multi-step forms.
#### New Email Filters
March 31, 2023
Follow-up and Autoresponders have a new State/Province filter. When enabled, you can choose to “Include” or “Exclude” entries where the state/province value is in the list of values you enter. Follow-up emails have access to the same Instant Win filter that was previously made available to autoresponders. Follow-up emails have a new setting that will allow you to include duplicate entries. The default behavior for follow-up emails is to exclude duplicates, which is great when you want to target a specific email only one time, but when you want to target each entry regardless if it’s a duplicate or not, then this setting solves that problem.
#### Full IP Addresses
March 27, 2023
We’ve added an option for the Form Container Widget to allow collecting an entry’s full (non-anonymized) IP address. This is for customers/campaigns that aren’t obligated to fulfill GDPR requirements. Since this is not GDPR compliant, we show a warning when the setting is enabled. You can find this setting in the “Advanced” tab. This feature is available for Brand and Enterprise plans.
#### New Address Lookup Feature
February 17, 2023
We now have an address lookup feature, courtesy of Google Maps. It does require the Entry Profiles feature, meaning that you'll need to be on an Pro Plan or higher to have access. This is something that requires an API Key, which you much purchase from Google - then you'd just add the key when configuring the integration in your Form Container.
#### Label Filter in Entry Widget
February 17, 2023
You can now filter entries using one or more labels in the Entry Display Widget. This makes it pretty easy to use it as a "Winner Widget" for displaying your contest winners!
#### New Settings for Autoresponders
February 2, 2023
The humble autoresponder email now has multiple new settings! There is now a checkbox on the Company Profile step for disabling the "Unsubscribe" footer - this is only available if you are on an Enterprise Plan. Available to everyone are new filters for autoresponders; these are available via the summary section of the Email Wizard. These include the abilities to exclude repeat entries and include only instant winners.
#### New Form Container Trigger
January 19, 2023
A new trigger has been added to the Action Widget; it allows you to connect a Buttons Widget that moves an entrant to the next step of a multi-step form - and also prevents moving to the next step if any of the fields in the current step are invalid.
#### Text Layout for List Fields
January 19, 2023
The List type of custom field now has a new layout option: Text. This displays the field as a regular input field - not a drop-down. The input provided by the entrant must match a value in the list, or they'll get an error message (and yes, the message is able to be customized).
#### Separate City, State & Zip Fields
January 18, 2023
The combined City/State/Zip field has been removed from the Field Widget options, and has been replaced with individual City, State/Province, and Zip/Postal Code field types. This allows for more customization and flexibility with the design of your form, as well as the data you can collect.
### 2022
#### Company Name Upon Signup
December 6, 2022
We want to help you as best we can when it comes to providing support for whatever campaigns you're building, of any type. For this reason, we now collect your Company Name as part of the new account sign up!
#### First Name/Last Name Fields
December 5, 2022
You may notice something slightly different when signing up for a new ShortStack account - you'll now be asked to provide your first and last name in separate fields, whereas before there was a single "name" field. This allows us to keep slightly better/more accurate user records - thanks!
#### New Action Widget Actions
November 30, 2022
We've added support for a couple of new actions in the Action Widget. First - "Close Pop-Up" allows you to close a popped-up widget; this is limited to widget set to pop-up visibility. Finally, "Change Page" allows you to load a particular page of your choosing in a Paging Widget - obviously, this is limited to Paging Widgets.
#### Embedded Pop-Up Changes
November 29, 2022
Embedded pop-ups used to be a little finicky with borders and whitespace. No more! Now, embedded pop-ups will render without any border or whitespace, and will also auto-resize as the content changes. The closes button has also been moved to the upper-right corner of the screen. If you're currently using an embedded pop-up on your site, you'll need to go into your Campaign Builder and click "Publish Changes" to see the new behavior.
#### Hiding Custom Fields
November 17, 2022
Back in the old times, right before we launched Field Widgets, we had removed the ability to make a custom field "hidden" after the Field Widget was created - you could only hide a custom field when initially creating it. Once you saved, that option was out the window. The ability to hide/unhide has been re-added! This option will show in the bottom-right corner (a handy lil' checkbox) for all custom field types.
#### Rich Text Widget Update
November 9, 2022
If you've ever created an email in ShortStack or used one of our gamified templates, you know that merge codes can be pretty handy - but sometimes it isn't super clear what merge code needs to be used where. A new change has been put in place to make this easier - the text editor in our Rich Text Widgets now includes a button named "Add Merge Code." Click this button to include any merge codes relevant to the Field Widgets in your campaign (without having to memorize a dang thing)!
#### Delete Entries with Any Filter
October 26, 2022
A small change, but powerful! You can now delete entries from the Entries Manager based on all the filters that have been set - this used to only be allowed if you were filtered to a single list.
#### Entry Profiles for Exporting
October 24, 2022
An entry profile is a list of field mappings that give you control over what fields are selected, in what order they appear, and how they are named. These have been integrated into our export feature - this allows you to control what information is included with your entries when you export them, what each column is named, and the order in which the columns appear.
#### Fortune Wheel Template
October 12, 2022
The new templates keep on coming - now introducing the Fortune Wheel template! If you're looking to run a campaign that captures the essence of that popular wheel-based game show (that we won't mention by name, for fear of lawyers), this is the template for you!
#### Campaign S2 Upgrade Tool
October 4, 2022
At long last we have a user-accessible tool to convert S1 campaigns to S2! You’ll now see an “Upgrade campaign to S2” option in the dropdown menu for your S1 campaigns. Clicking it opens a new tab that explains what’s going to happen and gives you the same options you’d normally have when copying a campaign. Do note: themes and custom CSS will not be carried over to the copy, and any widgets that are no longer supported in S2 will not be copied to the new campaign.
#### Support for Mailchimp Tags
September 29, 2022
Mailchimp users - we got you. Mailchimp has a tagging system that allows its users to add tags to any contacts. Our Mailchimp integration now supports this. You'll see a "Tags" option in the Standard Fields section of the integration setup where you can map a field to collect the tags. Then set up a Field Widget to add a default tag value (or values) to each collected entry.
#### Page View Allowances are NO MORE!
September 29, 2022
All of our plans now get UNLIMITED page views. This is reflected in the Account Summary in your ShortStack account. This means that the branded header (that gave a reminder of remaining page views in the allowance) has been removed from free trial campaigns - but the branded footer still appears.
#### Accessibility Improvements
September 29, 2022
We've got a massive, awesome update regarding campaign accessibility - buckle in! The following improvements have been made to improve the campaign experience for visually impaired users who use screen readers: When an error occurs in a form, we scroll to the first error (we’ve always done this) and focus the control (this is new). Error messages and field instructions are now associated (via the aria-describedby attribute) with the control. This helps screen readers understand when to read these messages when they appear. The status messages that appear above the Submit button (e.g., “Sending, please wait…”) are rendered using an output HTML tag instead of a div. Again, this is for the benefit of screen readers. The CSS Classes section shown in most widget config dialogs has been renamed to Advanced HTML. (The one exception is the Rich Text Widget, which will be updated soon.) In the Advanced HTML section, there is a new Main Tag setting available in most widgets (form and form containers always use the form tag, which can’t be changed) where you can change the HTML tag that is rendered for that widget. The default is the div tag, which is what we’ve always used in the past, but this new option lets you change it to tags like header, footer, main, section, etc. This helps users who need to create accessible campaigns to use semantic markup. For example, header should be used when creating the header for a campaign, footer for the footer section and main for the main content area. When you change the order of date parts (year, month, day) in a Custom Date field, the tab order will be correct. Previously, it wouldn’t necessarily correspond to the visual arrangement of the date parts. The Upload field can have it’s focus style changed in the style panel). This makes it easier to style the Upload field so it looks the same as the other fields when you use the Tab key to navigate between fields.
#### Twitter Cards Appearing Like Magic
September 22, 2022
Now when sharing a campaign to Twitter, it will share as a Twitter card if there is a share image in place. This will share the same image that'd appear if shared to Facebook or LinkedIn (set up in the Share section of the Campaign Settings).
#### cmpgn.page is the New Default
September 21, 2022
We have a new domain available! cmpgn.page will be the default domain shown to users on paid plans when first installing a campaign. lndg.page and shortstack.page are still available, if you prefer to use those instead.
#### Going Worldwide With Our IPs
September 21, 2022
We have an additional IP address (13.211.199.127) that can be used for S2 custom domains. It’s located in Australia - so if you're in that part of the world you will benefit from using that IP address for custom domains, as campaigns will load a bit faster. The Publish Wizard will show all available IP addresses and recommend one based on your location (we test the response times to each IP address from the user’s browser and recommend the one that has the shortest time). However, you're free to choose any IP address - it doesn’t have to be the recommended one. For example, an Australian agency configuring a campaign for a USA customer would still want to use the N. Virginia IP address. Domain validation is instantaneous and will notify you if your domain doesn’t resolve to one of our IP addresses.
#### Downloadable QR Codes - They're Back!
September 15, 2022
Back by popular demand, you can download your campaign QR code by clicking on it in the Publications Panel! It downloads as a 600×600px png image. Note that this is different from the mobile preview QR code, which is for previewing your campaign on your phone while designing your campaign.
#### Getting Nerdy with Query String Parameters
September 14, 2022
Are you looking to auto-fill a field (or fields) on your ShortStack form based on parameters you've set in a modified version of your campaign URL? We've got you covered (and if you have no idea what that means - don't worry about it)! We've added a new action that allows you to set a field's value using a query string parameter.
#### Archive Fields In Batches
August 30, 2022
We’ve added a batch action for archiving custom fields in the Field Library to be more consistent with other resource manager views that support archiving. Unlike other similar resources, it has an interactive prompt to warn that archiving can’t be reversed for custom fields.
#### Time Zone Selector Added to Entries Manager
August 30, 2022
The title really says it all - a time zone selector has now been added to the Entries Manager, so that you can view entry data based on the time zone you've selected. By default, the time zone will be set to the one selected in your user settings. Take that, potential time zone-based confusion!
#### Analytics & Time Zones
August 30, 2022
When viewing the analytics for campaigns or emails, you now have the option to select the time zone that the data will be viewed in. Another blow to potential time zone-based confusion!
#### The Entry Widget Gets a Makeover
August 29, 2022
The Entry Widget has a new look, so don’t be alarmed when you edit one and it looks different! It’s been updated to use our newer UI framework. No new functionality and all the same settings are still there, just in a different presentation. The sole exception is a new preview pane that reflects your settings such as enabling/disabling voting, showing/hiding certain fields, etc.
#### Press Play For Action
August 29, 2022
Sometimes updates aren't massive - sometimes tiny tweaks deserve mentioning. This time: The play icon for the Action Widget will now only appear in the Edit Widgets Panel when in Preview mode.
#### Entry Exports - Now 4.8% Clearer
August 23, 2022
In the never-ending fight against time zone-based confusion, we've tweaked entry exports so that the "created_at" time listed in the export is using the time zone selected by you in the Entries Manager.
#### The Template Gallery Gets Its Own Space
August 22, 2022
The template gallery will appear in a pop-up (instead of redirecting you to the builder) when you click any of the following: The Campaign button from the Getting Started dialog The Campaign button in the Dashboard The New Campaign button and Legacy Templates link in both the Campaigns Manager and the Templates Manager The template gallery also uses more of your available screen real estate!
#### New Help Diagnostics
August 11, 2022
There is a new diagnostics option in the main help dialog accessible from app2 or the S2 builder. It allows users to submit a one-field form that has a bunch of hidden fields attached that will be super helpful to us in Support (or for sending over to the development team).
#### Show Original Image in Entry Widget
July 25, 2022
We've added a new option in the Entry Display Widget - to see it, go to the Default Fields section and click the arrow next to Photo/Video(s). The default setting is Open zoomed image in same window. This opens an image that is scaled to fit inside a 2000x2000 pixel box. If you change the setting to Open original image in new window, then clicking an image in the pop-up will open the original, non-scaled image in a new browser window. Most browsers will scale the image to fit the window initially, but clicking on the image will show it full size, including scroll bars if needed.
#### Time Zone Selector Makes Its Way to Entries Manager
July 21, 2022
A new dropdown has been added to the Entries Manager that allows you to change what time zone the entries are displayed in - this should help with folks running contents in multiple timezones, or running contests in a timezone different from where they are located.
#### New Help Menu
July 19, 2022
The Help menu option has been updated for all users! Instead of showing a dropdown menu with links, it now opens a pop-up with more in-depth explanations for the various help options.
#### Hourly Follow-Up Emails
July 7, 2022
We've added the ability to schedule follow-up emails by hours, in addition to days. If you choose hours, then entries will be checked every hour (it doesn't matter what number of hours you choose - the system will still check each hour). If you choose days, then entries will be checked once per day, just as before.
#### Custom Field Entry Filters
July 7, 2022
You can now filter entries in the Entries Manager based on custom field values (for users that have access to Field Widgets and Form Containers). To get started, you'd simply click the "Choose Custom Filters" link at the bottom of the Filters section of the Entries Manager, then use the resource picker dialog to page through and pick the custom fields you want to filter on.
#### Deleting Notifications One at a Time
July 1, 2022
When viewing a notification message from ShortStack, there's now a trashcan icon available to delete that message. You can also delete individual messages from the dropdown at the top of the Dashboard.
#### Random Entry Picker Tweaks
June 29, 2022
"The same entry can be chosen more than once" has been removed from the picker, and the algorithm for picking entries has been updated. The picker will now show an estimated time for how long the system will take to pick the entries. The default number of entries to pick has been changed from 3 to 1. "Give extra weight..." is now checked by default. Finally, you can't submit the picker unless there's at least 1 entry being picked and one label entered.
#### Widget Position: Now Lockable!
June 29, 2022
When you hover over a widget in the Edit Widgets Panel, you can now lock a widget's position using the lock icon. This will keep the widget from being accidentally moved up or down in the campaign.
#### Context-Sensitive Help
June 27, 2022
An update to the Builder has been pushed to show context-sensitive help icons. These icons, when clicked, will open a pop-up showing support documentation specific to the area the user has open.
#### New Field Triggers & Integrations/Alert Settings
June 21, 2022
An update has been made to the Action Widget that allows users to trigger actions based on field values! Some updates to the Form Container have been made as well. APfA was moved into the "Advanced" tab, where Integrations will now also be found. An Alert settings tab was also added.
#### Widget Refresh!
June 8, 2022
Some S2 widgets have been updated in the Builder to use our newer UI framework. While light on functional changes, these widgets will have a bit of a new look and some small quality of life improvements.
#### Submit Form (Container) = New Action
June 8, 2022
We've added "Submit form" as an action in the Action Widget. The Buttons, Image, and Navbar Widget updates were completed in part to help with this feature. You can use this wherever you can configure an action. Do note that this is only available for the Form Container, and not for existing Form Widgets.
#### Custom File Types
April 28, 2022
In the Field Widget version of the Upload field, there is now a "Custom file extensions" field. This will allow any file with the given extension(s) to be uploaded via the form. These files won't be displayed in the Entry Display Widget, but they can be individually downloaded in the Entries Manager and they will be included when exporting entries to a .zip file.
#### Revised Code Widget
April 19, 2022
The Code Widget's settings have gotten a pretty substantial overhaul, thanks to the framework needed to make Advanced Points for Actions work. When adding a new Code Widget, you'll start in the Library section, so you can more easily start with a pre-saved snippet. The Library now shows private and public snippets together, but also provides methods to easily filter snippets. New snippets are now created from the Library section instead of from the text editor. When previewing a snippet in the library, there are new buttons for updating the snippet. When creating a new snippet, we support just about any character in the snippet's name. The Setup tab (where the editor lived) has now been renamed to "Content." The editor now has a menu bar that makes commands (and their keyboard shortcuts) more discoverable. The "Show content to bots only" setting has been moved to the Visibility tab, in the Advanced section. There is also a new Points for Actions tab that will only be displayed to users who have access to Advanced PfA.
#### Improved Teams Invite Flow
April 4, 2022
Jumping into a ShortStack team is now a smoother process, in a few different ways! First; if you click on an expired Accept Invite link, you'll now get a clearer error message letting you know what needs to be done to move forward. When you click a valid link, you'll now see the team name you're being invited to and your email address will be pre-populated - alleviating any possible confusion. Then, once the sign-up process is completed, the new team member will automatically be logged in to the team account (instead of having to switch teams). We hope you enjoy the new, less headache-inducing process!
#### Advanced Points for Actions
March 21, 2022
Advanced Points for Actions (APfA) tracks actions/points across multiple entries to the same list using the same email address. Our existing Points for Actions feature will heretofore be known as "Basic Points for Actions." Currently, you can only earn points for a particular action once per email address, no matter how many times you enter. The only change to Basic PfA is that we no longer support recording actions before a form entry is submitted. A form entry must be submitted *first* for PfA to work.
#### Style Panel: Reorganized!
February 3, 2022
The Style Panel has been reorganized to put more emphasis on styling individual widgets. When you select a widget in the Builder, the "This" tab will be displayed in the Style Panel. Almost all the settings that are available in the "All" tabs are available now in the "This" tabs. There is also a new link that appears at the bottom (if any changes have been made) that allows you to clear all the settings for a particular widget. The "All" tabs have been consolidated with the General tab into a single "Theme" tab. When you click on the Theme tab, there is a blue dropdown for changing which widget type you want to work with.
#### S2 Builder Optimization
January 31, 2022
An attempt has been made to ease the pain points for big campaigns, or campaigns where multiple users are editing at once - trying to reduce the lag/wait times when loading or changing campaigns. It will be most noticeable when two people are working on the same massive campaign. Before, a user would notice heavy lag times when another user updated the campaign. It would just pause and not allow input from the user for up to several long seconds - with no visual indication of why. Now, this pause will be much shorter and hopefully less painful. Also, when a pause does end up being longer, a loading screen will display.
#### S2 Builder Update - Timezones
January 28, 2022
We are simplifying how the Campaign Builder deals with timezones! For new campaigns, a new campaign timezone will be configured automatically. The ability to change a specific widget's timezone has been removed - in its place, you can change the campaign's timezone. When the campaign's timezone is changed within a widget - if you are editing an existing widget - you will see the time change appropriately in real time. This should remove any doubt on what time a container hides/shows or when an Entry Display Widget starts/stops their voting process. Note: The Instant Win feature is unaffected by these changes and will still have the ability to changes its timezone separate from the campaign. This will be updated at some point in the future.
#### Action to Show/Hide Vote Button
January 28, 2022
The Action Widget now has a new action! You can now show or hide an Entry Display Widget's vote button through an action. It won't let a user get a vote through using an Entry Display Widget that doesn't have voting enabled, or is outside its voting date range - so there's a tooltip to communicate that.
#### Social Import: Ability to Filter by Date Range
January 17, 2022
The Social Importer now has the option to only grab comments if they were posted within a specific date range. This is only for comments (on FB and IG), not reactions. Also, this won't be required; it's just an additional option now available for importing comments. Reactions are not available for this filtering because Facebook's API does not provide a timestamp on reactions with which to filter them.
### 2021
#### Minor Bug Fix/S2 Builder Setting
December 10, 2021
A bug was found where a form being submitted would close any pop-up it was in - even if the user didn't want it to. (For example, playing a video in the pop-up after the form is hidden.) In order to not break any current campaigns that want this behavior, a new Form Widget setting has been introduced: "Close/Do Not Close any pop-up in which form is being displayed." It defaults to "Close" - the user can switch this to "Do not close," if they desire. This can be found in the "After Submit" section of the Form Widget's settings.
#### Emails Dashboard Change
December 9, 2021
The emails dashboard for some users (like our Team ShortStack account) were taking forever to return values because they were counting every email ever sent. These metrics now go back only four weeks, which will render much faster.
#### We Encrypt At Rest!
November 30, 2021
We've been encrypting our data at rest all along! We use Amazon EC2 instance types which both use NVMe SSDs for storage. In the notes for that type of storage, it mentions that there is a different and unique key for each instance, and once the instance shuts down, all data is lost. In other words, it's not possible to steal a disk and view its contents because the moment it loses power, that data is gone.
#### S1/S2 Template Gallery Changes
November 30, 2021
Now that we have split our builder into two versions (one for S1 and one for S2), some changes have been made to the Template Gallery to align it with this vision. Users with access to one version only will see the Template Gallery that corresponds to the version to which they have access. Users with access to both will see some changes; the "Create Campaign" button in the Dashboard will open to the S2 Template Gallery by default. This is the same case for the "Create New" button in the Campaigns Manager - though they will now see a "Legacy Templates" link to the left of the button, to access the S1 Template Gallery. With the gallery open, there will be a link in the bottom-right corner to switch between the different gallerys.
#### [S2] IG Uploads, Lists
November 3, 2021
Instagram uploading is now restored for S2 campaigns. The ability to view IG thumbnails from Feeds is also restored (for S2). The new app set up to accomplish this has a really low rate limit, but S2 should be fine. Mike will continue to monitor.
#### Another Google Analytics Fix
October 26, 2021
Fixed issue where form submissions were not being tracked in Google Analytics or Facebook Pixel. This was mainly happening when the parent container hides after the form was submitted.
#### Google Analytics Fix
October 23, 2021
Fixed issue where Google Analytics would not fire off for embedded campaigns and campaigns published to custom domains. Also - if something is funky on a campaign, double-check that your Code Widgets are crapping out (using the console). If something is crapping out, and that Code Widget has "synchronous: true" in there - it may prevent the campaign from booting correctly, or doing things like reacting to events, clicks, or send GA data.
#### Instagram Export Fix
October 21, 2021
Minor bug fix - when a user tried exporting images from a list (which happened to be from an Instagram Feed), sometimes only a few would show up in the .zip file. This has been fixed!
#### Image Editor Widget
October 14, 2021
The new Image Editor Widget is live! This initial version includes the following actions: Crop, Flip, Rotate, Undo, and Frame. These actions can be arranged/enabled in the widget settings. The library we're using to achieve these effects support other actions - we may include those in the future! For more information on the new widget, check out our Image Editor Widget help doc.
#### Builder Update
September 23, 2021
Minor update: When a campaign loads, it will not longer attempt to load ALL THE LISTS - only the ones needed for the campaign. Most people are not going to notice this - only people with a ton of lists. This should also help when more than one person is working on a campaign - it wont reload all those lists. When you go to the List Selector, it will load 50 at a time to prevent timeouts. This is updated for both S1 and S2!
#### More Instant Win QR Code Enhancements
August 28, 2021
There are two additional ways (besides in an autoresponder) to show a QR code for the prize code won via Instant Win. First, when displaying the Instant Win results using our default pop-up, you can enable the QR code in the Instant Win tab of the Form Widget's widget settings. It will appear below the text message. Second, when using Action Widgets to display Instant Win results, there is a new merge code, {{form.response.prize_code_qr}}, that works exactly the same as the existing {{form.response.prize_code}} merge code for Rich Text widgets, except it will be replaced with the QR code representation of the prize code. A best practice would be to include one of the methods above in addition to including the QR code link in the autoresponder, in case the user navigates away from the campaign.
#### QR Code in Email for Instant Win
August 27, 2021
We've added a new merge code (entry.prize_code_qrcode_url) to emails. This merge field generates a URL that will display the prize code as a QR code. This will typically be used with an autoresponder for an Instant Win campaign, or when sending codes to a list. The new merge code will appear in all the same cases as the {{entry.prize_codes}} merge code. For example, if the list selected for the email has Instant Win enabled and configured to distribute prize codes. You would typically paste the merge code into the URL field when adding a link to the email. When the customer receives the email and clicks the link, they'll see a page appear with only the QR code, ready to be scanned by a POS scanner.
#### Email Scheduling Improvements
August 27, 2021
Entry counts for each selected list are shown in the summary for scheduled emails. Previously configured lists are shown at the top when editing an email. They used to just be ordered by last modified time, regardless of being selected or not. Hovering over a list shows its ID and created date. A notification now appears if there are any emails scheduled to start sending within the next 24 hours. Clicking "View Now" will change the sort to show the emails sending soonest at the top of the list.
#### Custom Domain Validation
August 17, 2021
Just a heads up that we will NOT generate a certificate for SSL (so that https works) for custom domains until that domain appears in our database. For example, if a user points their custom domain to our S2 IP address (52.73.46.134) and tries to test it in their browser before using it for a published campaign, they'll see an error in their browser. This is because the validation check will fail since we don't have the domain in our database. Once the user adds the domain to their account, for example, by assigning it to a campaign in the publish wizard, then tries to test again, it will work this time because the validation will succeed and a certificate will be issued. Prior to today, a user could point a custom domain to our IP address and we would issue a certificate for it as soon as a browser request came in, even if it wasn't assigned to a campaign.
#### Time Zones and Analytics - Fixed!
August 12, 2021
Our analytics have been fixed so that the data correctly accounts for Daylight Savings Time, even across time periods that include a clock change. In addition, analytics charts always showed times in UTC and ignored the user's default time zone. This has also been fixed. For example, if you viewed a campaign at 11AM PDT (and your default time zone was set to "Pacific"), a data point would appear at 6PM prior to the fix. Now, that same point will appear at 11AM, as expected.
#### Bulk Vote Reset
July 29, 2021
We now have a new "Reset Votes" button in the Entries Manager - this allows you to quickly reset the vote totals to zero for whatever entries are currently showing.
#### Bots Only Setting for Code Widget
July 27, 2021
When a bot/spider attempts to crawl a live campaign, we normally include only Open Graph meta tags in the output sent to the bot. Until now, there was no way send custom content to the bot. Code Widgets now have a new setting, "Show content to bots only", in the Placement section of the Code Widget's widget settings. This setting only appears for Code Widgets that are NOT inside any containers -- that is, they must be root widgets. When this setting is enabled, the Code Widget will only be included in the HTML sent to the bot. It will not be included in the live campaign when viewed by a human. The placement setting is still respected (i.e., after https://yourcampaignurl.com?name=John|Doe
curl -i -H "Authorization: Token token=$API_KEY" \
"https://entries.shortstack.com/entries?per_page=25"
```
Sample response:
```
{
"data": [
{
"id": 12345,
"campaign_id": 678,
"list_id": 91011
}
]
}
```
### Paging through results
1. Run your request with -i so headers are shown: curl -i -H "Authorization: Token token=$API_KEY" \ "https://entries.shortstack.com/entries?sort=received&direction=descending&per_page=50"
2. Look in the output for a header named Link:. Copy the web address inside <> that ends with rel="next".
3. Call that address to load the next page: curl -i -H "Authorization: Token token=$API_KEY" \ "https://entries.shortstack.com/entries?sort=received&direction=descending&per_page=50&last_id=45678&last_sort=2024-04-10T16:45:00Z"
4. Repeat until the header no longer shows rel="next".
5. To jump back to the beginning with the same filters, copy the address that ends with rel="first" and call it: curl -i -H "Authorization: Token token=$API_KEY" \ "https://entries.shortstack.com/entries?sort=received&direction=descending&per_page=50"
### Paging & sorting parameters
- per_page – how many entries to return (default 100, max 5000).
- sort – the field to order results by (defaults to id).
- direction – ascending or descending order.
- last_id – the final id from the previous page when you follow a next link.
- last_sort – the last value of your sort field when sorting by something other than id.
### Filtering parameters
- campaign – one or more campaign IDs, passed as campaign=1,2.
- list – one or more list IDs.
- feed – one or more social media feed IDs.
- list_tag – one or more tag names that map to list IDs.
- category – one or more category names.
- city – one or more city names.
- country – one or more country codes or names.
- province – one or more state or province names.
- postal_code – one or more postal or ZIP codes (dashes are ignored).
- label – one or more label values.
- email – exact email address to match.
- received – date range in the form start,end (ISO8601).
- age – age range in the form min,max.
- id – ID range in the form min,max.
- votes1, votes2, votes3 – vote count ranges in the form min,max.
- image_width, image_height – image dimension ranges in the form min,max.
- recaptcha_score – decimal score range in the form min,max.
- approved – true, false, 1, or 0 to filter by approval status.
- exclude_feeds – set to true/1 to include only entries without a feed unless feed is also sent.
- image – true/false to require an image.
- test – true/false to find test entries.
- video – true/false to require a video.
- profile – export profile ID that controls which fields appear.
- es_boolean_X – filters on a custom boolean field defined in your profile (X is the number shown in the profile).
- es_date_X – filters on a custom date range for profile field X.
- es_number_X – filters on a custom numeric range for profile field X.
- es_list_X – filters on a custom list field for profile field X; pass multiple values as a list.
### Filter examples by parameter type
- Text match: add country=US to find entries from the United States.
- Boolean switch: add approved=true to find only approved entries (true, false, 1, or 0 are accepted).
- List of IDs: add list=12,34 to pull entries from those two lists.
- Date range: add received=2024-01-01,2024-01-31 for entries received in January 2024 (leave a side blank for open-ended ranges, e.g., received=,2024-01-31).
- Number range: add age=18, to find ages 18 and higher, or votes1=10,20 for a specific span.
- Search term: add search=winner to look across indexed text fields; emails like name@example.com are matched exactly.
- Profile output: add profile=42 if you have an export profile that maps fields for download.
- Custom profile field: add es_list_2=VIP,Priority to filter on a mapped list-type custom field.
Combine filters by joining them with &, for example:
```
curl -i -H "Authorization: Token token=$API_KEY" \
"https://entries.shortstack.com/entries?per_page=50&country=US&approved=true&received=2024-01-01,2024-03-31"
```
### Get a single entry
Provide the entry ID, and optionally a profile to shape the response:
```
curl -i -H "Authorization: Token token=$API_KEY" \
"https://entries.shortstack.com/entries/12345?profile=42"
```
If the entry belongs to another account or does not exist you will receive a 404 response.
### Other options for form integrations
ShortStack also supports form integrations to enhance your campaign functionality. These include:
- MailChimp
- Google Maps
- Webhooks
Learn more about [Form Integrations](https://www.shortstack.com/help/form-integrations/).
### Related resources
[Securing Webhook Form Integrations (Help Doc)](https://www.shortstack.com/help/securing-webhook-form-integrations/)
[Adding Google Maps Address Lookup to a Form (Help Doc)](https://www.shortstack.com/help/adding-google-maps-address-lookup-to-a-form/)
[Form Integrations (Help Doc)](https://www.shortstack.com/help/form-integrations/)
---
## Entries data
URL: https://www.shortstack.com/help/entries-data/
Category: Analytics & data
Plan required: Max plan
Last reviewed: 2026-02-24
The Entries tab of the Analytics Manager reports four metrics for the campaign and date range you have filtered to, beginning with the total number of entries collected. Reach it by clicking Manage → Analytics, selecting your campaign and timeframe, then opening the Entries tab.
### Getting there
To access the Entries data, you will need to start in the Analytics Manager.
1. From the Home Page, click the Manage dropdown at the top and select Analytics.
2. Use the Filtering section to select the specific campaign you wish to view.
3. Adjust the date range to display data for your desired timeframe.
4. Click on the Entries tab.
### Data Boxes
- Entries: The total number of entries collected, based on the selected filters.
- Unique Entries: The number of unique entries. If your campaign allows multiple entries, this number will be lower than the total entries. Otherwise, it will match the total entries.
> Note: To ensure accurate data collection, enable the appropriate fingerprinting setting in the Campaign Settings. [Learn more here.](https://www.shortstack.com/help/campaign-settings/#6-analytics)
- Conversion Rate: The conversion rate is calculated by dividing total entries by total views. The result is shown as a percentage.
- Unique Entries %: This percentage is calculated by dividing the number of unique entries by the total number of entries.
### Charts & graphs
#### Entries summary
This graph displays the number of unique and total entries received each day within the selected date range. If the campaign doesn't allow multiple entries, only one line (for unique entries) will appear.
> You can toggle data series by clicking on the labels. Click again to re-enable them.
#### Entries by device
A pie chart shows the percentage of participants by device type: mobile, tablet, or desktop.
#### Time to submit entry
This graph illustrates the exact time it takes for users to complete and submit the form. If the time is unusually high or low, consider:
- Low times: Review your bot prevention settings.
- High times: Review your form length, as longer forms tend to increase abandonment rates.
#### Graph options
Click the hamburger icon (≡) on the graph to:
- View the graph in full screen
- Print the chart
- Download the data as a CSV file
### Exporting data
To export your campaign data:
1. Click the Actions dropdown at the top right.
2. Select Export PDF.
3. A PDF will open, then choose the file name and save location.
### Related resources
[The Game-Changing Analytics and Data Collection Strategies Digital Marketers (Blog)](https://www.shortstack.com/blog/the-game-changing-analytics-and-data-collection-strategies-digital-marketers-need-in-2023)
[How to Plan and Promote a Lead Generation Contest (Blog Post)](https://www.shortstack.com/blog/lead-generation-campaign/)
[Analytics Overview (Help Doc)](https://www.shortstack.com/help/analytics-overview/)
[Analytics Manager (Help Doc)](https://www.shortstack.com/help/analytics-manager/)
[Entries Manager (Help Doc)](https://www.shortstack.com/help/entries-manager/)
---
## Entries Manager
URL: https://www.shortstack.com/help/entries-manager/
Category: Account & billing
Plan required: All plans
Last reviewed: 2026-08-14
The Entries Manager stores all data collected via a form, whether it includes only names and emails or media uploads, such as photos and videos. All collected data can be exported as a .csv or .zip file.
### Getting there
From the Dashboard:
1. Click Manage in the navigation menu.
2. Select Entries from the options.
#### From the Campaign Builder
1. Click the inbox icon for the Form Container or Entry Display Widget, which displays the number of entries.
If Favorited, simply click Entries in the side navigation menu.
> **Note:** Favoriting adds a direct link to the Entries Manager in the navigation menu. To favorite, click the heart icon next to the "Entries" title. Favorites are stored in your browser, so you’ll need to re-establish them when using a different browser or computer.
### Tile layout
#### Entries section
Entries appear in the middle of the screen, regardless of filters or sorting. Each entry displays the following:
- Attached image or still frame from a video (if any).
- Approval status (approved = green checkmark in the right corner below image).
- Number of votes/points (next to thumbs up icon).
- Submitted name and email address.
- Submission date and time.
- Tags and Labels
Hover over an entry to reveal the View Details button.
Learn more about [Entry Details](https://www.shortstack.com/help/entry-details/).
#### Entry selection
Select an entry by clicking it. Click and drag your cursor across the screen to quickly select multiple entries. Clear selections by clicking X Clear next to the counter.
### List layout
#### Entries section
Similar to the Tile Layout, each entry displays the following in editable columns:
- Attached image or still frame from a video (if any).
- Approval status (approved = green checkmark in the right corner below the image).
- Number of votes/points (next to thumbs up icon).
- Submitted name and email address.
- Submission date and time.
- Tags and Labels
Click an entry to access the Entry Details.
##### Columns
Click on the Columns button to edit the shown columns. Access Standard and Custom Fields for easy viewing.
Click on the Default Menu to save a custom view, import a view as an Export Profile, or reset the custom view to default.
#### Entry selection
Select an entry by clicking it. Click and drag your cursor across the screen to quickly select multiple entries. Clear selections by clicking X Clear next to the counter.
### Search and filtering
#### Search
Use the Search field (top-left) to locate entries using keywords or phrases. For labels, type the label name into the Label field.
#### Filters
Filters appear on the right-hand side. Selected entries update in real-time. Click Clear all in the Filters sidebar to remove all active filters at once. Options include:
- Approved: Show only approved, unapproved, or both.
- Date: Filter by a date range (use From and To fields).
- Lists: Add entries from other lists using the Select Lists option.
- Campaigns: Filter entries by campaign name via Select Campaigns.
- Hashtag Feeds: Filter entries from specific feeds using Select Feeds.
- Category: Filter entries by category name.
- City, State/Province, Zip/Postal Code, Country: Filter by geographical data (if applicable).
- Image: Filter by entries with or without images.
- Video: Filter by entries with or without videos.
- Votes/Points: Show entries based on vote counts for specific rounds.
- reCaptcha Score: Filter by reCaptcha score range (if enabled).
- Test Entries: Display test entries only.
- Hide Entries from Hashtag Feeds: Exclude entries from hashtag feeds.
- Custom Filters (Available on Max Plan): Filter using custom fields from the Field Library.
### Sorting
Sort entries by:
- Newest
- Oldest
- Most Votes
- Least Votes
Adjust the time zone in the Time Zone dropdown menu.
### Entry functions
Located in the top-right Actions menu, these options affect all filtered entries:
#### Approve or unapprove entries
Manually approve or unapprove entries. Select Approve or Unapprove in the pop-up, then click Submit & Close.
#### Label entries
Add labels to entries by typing them (comma-separated) in the label field. Press Enter/Return and click Submit & Close.
#### Copy entries to new list
Combine entries into a new list by naming it in the New List field. Add tags (Available on Max Plan), reset vote counts, or copy attached media via advanced options.
#### Export entries
Export entries as:
- Entries: A .csv file containing entry data.
- Uploaded Files: A .zip file of submitted media.
- Entries & Uploaded Files: Both formats.
Enter the recipient email, configure export profiles, and click Export & Close.
#### Pick random entries/winnerS
Use the Random Entry Picker to select winners. Add labels, adjust the weight by vote count, and filter by custom fields if needed.
#### Reset votes/points to 0
Reset votes for specific rounds by selecting them, entering the confirmation message, and clicking Reset Votes & Close.
#### Delete all entries
Delete all displayed entries permanently. Type the confirmation prompt and click Delete.
> **Note:** Deleted entries are not recoverable.
### Working with entries
When selecting entries, these options appear at the top:
#### Approve
Approve or unapprove selected entries via the Approve dropdown menu.
#### Label
Add labels to selected entries by typing them in the label field, pressing Enter/Return, and clicking Save.
#### Copy
Copy selected entries to a new list.
#### Delete
Delete selected entries. Confirm the selection in the pop-up, then click Delete to permanently remove them.
> **Note:** Deleted entries cannot be recovered.
### Related resources
[How to Collect Consumer Data Without Upsetting Customers (Blog)](https://www.shortstack.com/blog/how-to-collect-valuable-consumer-data-without-upsetting-customers/)
[Working With Entries (Help Doc)](https://www.shortstack.com/help/managing-entries/)
[Entry Details (Help Doc)](https://www.shortstack.com/help/entry-details/)
[Exporting Entry Data (Help Doc)](https://www.shortstack.com/help/exporting-entry-data/)
[How to Select Winners (Help Doc)](https://www.shortstack.com/help/how-to-select-winners/)
---
## Entry Count Widget
URL: https://www.shortstack.com/help/entry-count-widget/
Category: Widgets
Plan required: All plans
Last reviewed: 2026-02-24
The Entry Count Widget displays the number of entries collected in a specific list on your campaign. You can style and format the count using the Style Panel.
### Overview
[image: The Add Widgets panel with the Entry Count Widget icon, showing the numeral 42, circled in green.]
#### Adding the Entry Count Widget
To add the Entry Count Widget to your campaign:
1. Click the Entry Count Widget icon in the Add Widgets Panel, or
2. Drag the icon into your preview area.
### Widget settings
The widget settings pop-up allows you to configure the Entry Count Widget.
#### Renaming the widget
1. Click the pencil icon in the top-left corner (next to the widget name).
2. Enter a new name and press Enter.
#### CSS ID
The CSS ID (starting with a #) is displayed in the top-right corner of the pop-up.
#### Customization
Navigate through the menu on the left side to adjust settings. Use the Back and Next buttons to move between sections.
When finished, click the blue Save and Exit button.
### Entry Source
The Entry Source section lets you select the list from which the widget will display the entry count.
#### Selecting an existing list
1. Click Connect to Existing Source.
2. In the pop-up, scroll through the lists or use the Search field to find the desired list.
3. Click the list name to select it.
#### Creating a new list
1. Click the Create List button.
2. In the pop-up, provide the following: List name Number of test entries Tags (optional)
3. Click Create to finalize.
After creating a new list, add a [Form Container](https://www.shortstack.com/help/form-container-widget/) and select the list you just created. Then, build out your form using [Field Widgets](https://www.shortstack.com/help/field-widget/).
### Filtering
The Filtering section lets you control which entries are included in the entry count.
- Include both approved and unapproved: Displays all submitted entries.
- Only include approved: Displays only approved entries.
Click between these options to toggle your preference.
### Text
The Entry Count Widget includes minimal text, but you can customize it in the Text section:
- Modify the wording for multiple entries received (plural).
- Modify the wording for a single entry received (singular).
Enter your custom text in the provided fields.
### Visibility
Control when and where the widget appears using the Visibility section.
Options include:
- Setting specific dates and times for visibility.
- Displaying the widget only in the Builder.
- Limiting visibility to certain countries.
Learn more about [Widget Visibility.](https://www.shortstack.com/help/widget-visibility/)
### Extras
[Learn about the Main Tag, CSS Classes, and Smart Labels settings here.](https://www.shortstack.com/help/widget-extras/)
### Entry count styling options
When the Widget is selected, you can customize the styling of the specific widget. Some of the options include changing the text color, the maximum width of the widget, and widget alignment. You will see the following areas of styling available in the [Style Panel](https://www.shortstack.com/help/getting-started-with-the-style-panel/):
- General
- Value Text
- Label Text
- Widget
### Related resources
[How to View and Manage Entries (Video)](https://youtu.be/7OWSM5E8NDY?si=iW8bZleL1cvdqpro)
[Creating Segmented Lists (Help Docs)](https://www.shortstack.com/help/creating-segmented-lists/)
[Entry Display Widget (Help Doc)](https://www.shortstack.com/help/entry-display-widget/)
[Entry Search Widget (Help Doc)](https://www.shortstack.com/help/entry-search-widget/)
---
## Entry Details
URL: https://www.shortstack.com/help/entry-details/
Category: Managing entries
Plan required: All plans
Last reviewed: 2026-06-02
The Entry Details feature displays all the information a user submitted in their entry.
### Getting there
To view the details for a single entry:
1. Navigate to the Entries Manager through either the Dashboard or the Campaign Builder.
2. Hover over the desired entry.
3. Click the View Details button for that entry.
Learn more about the [Entries Manager](https://www.shortstack.com/help/entries-manager/).
### Layout
The Entry Details screen gives you easy access to view, approve, delete, and modify any information associated with an entry.
#### Navigation bar
At the top of the screen, the Navigation Bar includes four buttons:
- Back: Takes you back to the previous page (usually the Entries Manager).
- Prev: Takes you to the previous entry in the list.
- Next: Takes you to the next entry in the list.
- Edit: Allows you to edit the entry's information. (Details below.)
#### Entry data
This section provides details about the entry’s origin and submission, such as:
1. Name and Email
2. Location and IP Address
3. Entry Information
4. Other Entry Data
#### Additional information
Filtering: Click the filter icon next to any line to find entries using the same information (e.g., all entries from "US").
Campaign Editing: Click the Edit Campaign icon next to the campaign name to access the Campaign Builder.
Referral Link: If your campaign is live, clicking the Referral Link URL generates the Refer-A-Friend URL for the entry.
Labels: Add labels to the entry in the provided field. Labels can be used to differentiate winning entries, approved entries from judges, or for list segmentation.
Delete Entry: Remove the entry by clicking the Delete Entry button.
### Preview area
The Preview Area provides a snapshot of the image, video, or file submitted with the entry. Click the View Original link below the thumbnail to see the file in its original size. The file size is displayed to the left of the link, and the image dimensions (in pixels) to the right.
If the source image is located in Instagram, TikTok, Vimeo, or YouTube, click on the blue text View Original Post to see the source post.
#### Approval and votes
In the top-right corner, check (or uncheck) the box to approve or unapprove the entry.
The number of points/votes is displayed in the top-left corner. Clicking this number takes you to the Points/Votes page for that entry.
### Points/votes
Clicking the vote count at the top left of the Preview Area opens the Points/Votes page, which displays the details on each vote or point added to the entry. This area will show Votes, Additional points received for actions or fields, and referrals.
For votes or points, you will see the date the vote or point was made, along with the points/votes awarded.
For referrals, you will see the Entry ID, point(s), and the date.
#### Adjusting votes
To make a vote adjustment:
1. Click the New Adjustment button.
2. In the pop-up, enter the number of votes to add or remove (use a negative number to remove votes).
3. (Optional) Add a note explaining the reason for the adjustment.
4. Click Save.
### Editing an entry
Clicking the Edit button brings you to the entry editing screen, where you can update almost all aspects of an entry. You can edit the title, description, first/last name, email, address, phone number, and age. You can also edit
#### Managing files
Available on the Business Plan and higher.
To remove an uploaded file, click the trashcan icon in the top-right corner of the file preview. To add or replace a file, click the Add File button below the file preview, then choose a new file. A new preview will appear.
> Note: This feature allows you to correct small mistakes in an entry. No validation is performed, so use this feature cautiously.
### FAQs
Why can't a Team Member see a Custom Field's label?
A Team Member’s ability to view Custom Field labels depends on their access level. If they don’t have permission to see Custom Fields, labels such as “Store Location” will instead appear as “Custom_text_1.”
To fix this, open the Field Library and tag the Custom Fields with the Team Member’s name. This ensures the proper label is displayed for them.
Learn more about the [Field Library](https://www.shortstack.com/help/field-library/).
### Related resources
[Entries Manager (Help Doc)](https://www.shortstack.com/help/entries-manager/)
[How to View and Manage Entries (Video)](https://youtu.be/7OWSM5E8NDY?si=GjlqrZ4U59zkPgyd)
[Voting History (Help Doc)](https://www.shortstack.com/help/voting-history/)
[Manually Add Entries (Help Doc)](https://www.shortstack.com/help/manually-add-entries/)
### FAQs
#### Why can't a Team Member see a Custom Field's label?
A Team Member’s ability to view Custom Field labels depends on their access level. If they don’t have permission to see Custom Fields, labels such as “Store Location” will instead appear as “Custom_text_1.”
To fix this, open the Field Library and tag the Custom Fields with the Team Member’s name. This ensures the proper label is displayed for them.
Learn more about the [Field Library](https://www.shortstack.com/help/field-library/).
---
## Entry Display Widget
URL: https://www.shortstack.com/help/entry-display-widget/
Category: Widgets
Plan required: Launch plan
Last reviewed: 2026-10-08
The Entry Display Widget is used to showcase entries submitted via a Form Container Widget or through Feeds. It also allows you to enable voting for voting contests.
### Overview
[image: The Add Widgets panel with the Entry Display Widget icon, four squares in a grid, circled in green.]
#### Adding the widget
To add the widget to your campaign:
1. Click the Entry Display Widget icon in the Add Widgets Panel.
2. Drag and drop the icon into your preview area or the Edit Widgets Panel.
### Widget settings
The Widget Settings pop-up allows you to customize the Entry Display Widget.
#### Key settings information
##### Widget name
Click the pencil icon in the top-left to rename the widget.
##### CSS ID
View the widget’s CSS ID (starting with a #) in the top-right corner.
##### Navigation
Use the menu on the left to configure each section of the widget.
Use the Back and Next buttons at the bottom to navigate through settings.
##### Saving changes
Click the blue Save and Exit button to save your changes.
### List display
The List Display section connects your widget to an entry source.
#### Connect to an existing source
Click the link after Connect to Existing Source and select your list from the pop-up.
#### Create a new Entry Source
1. Click Create New Entry Source.
2. In the pop-up, enter a name, the number of test entries, and tags.
3. Click Create.
4. Once you have finished setting up the Entry Display Widget, create a Form Container and connect it to the list you just created.
Learn more about the [Form Container.](https://www.shortstack.com/help/form-container-widget/)
#### Display options
Control how entries are shown in the widget:
##### Sorting
Use the Sort entries from to sort entries by:
- Newest to oldest
- Least to most votes
- Most to least votes
##### Entries per page
Specify the number of entries displayed per page (maximum: 30). If you need to display more, please contact support.
#### Filtering
The Filtering section offers options to display specific entries:
- Hide Unapproved Entries: Only display entries verified by your team.
- Filter by Votes/Points: Show top entries based on votes. Select the voting round and number of top entries to display.
- Filter by Category: Display entries by category. Leaving the category field blank allows dynamic filtering via [Action Widgets](https://www.shortstack.com/help/action-widget/).
- Filter by Label: Showcase entries with specific labels (e.g., for winners).
#### Advanced options
Disable pop-up showing referred/shared entry.
### Voting
Enable public voting on entries through the Voting section:
#### Enable voting
Check the Enable Voting box.
##### Display options
Choose to show total votes, percentage of total votes, or hide vote counts.
##### Voting Rounds
Configure voting rounds for multi-round contests in the Filtering section.
##### Schedule voting
Set the voting start and end dates
When you schedule voting to begin and end at specific times, the vote button will only appear during that period. Use this setting to show entries before or after voting if needed.
Adjust the campaign’s time zone for accuracy.
#### Voting restrictions
Enforce rules for voting in the Restriction section:
- No Restrictions: Unlimited votes per visitor.
- Anonymous Fingerprint: Restricts votes using anonymized browser and IP data.
- Email Address: (Available on Max plan) Voters submit and verify an email to vote.
##### Frequency limits
Specify how often users can vote by entry, category, or list.
Define restrictions by days, hours, minutes, or seconds.[image: The Voting Restrictions section with Restrict voting ticked, set to allow one vote per entry every ten seconds with unlimited votes per campaign, and an error message field reading You already voted!]
##### Google reCAPTCHA
Available on Scale Plan and higher.
Enable Google reCAPTCHA to reduce spam and illegitimate votes:
1. Click the link labeled Configure in Campaign Settings → Security.
2. Click the Choose Profile button.
3. Select an existing profile, or click the Add button to connect a new set of keys.
4. Check the box for Enable Google reCAPTCHA.
5. Use the Sensitivity Level slider to adjust the strictness of the verification.
Learn more about [How to Create Google reCaptcha Keys](https://www.shortstack.com/help/how-to-create-google-recaptcha-keys/).
#### Advanced settings
Depending on your user-flow for your campaign, you may want to:
- Start with Vote Button Hidden- Hide the vote button until an action occurs (think Form Submission). See the [Action Widget](https://www.shortstack.com/help/action-widget/) for more details.
- Re-enable Vote Button after voting- You can determine the wait time between when the vote button reappears.
### Fields
Control the fields shown in the entry tile and pop-up view.
#### Standard fields
The following fields can be shown in the Entry Display Tile:
- Entrant Name
- Entry Title
- Entry Description
- Entry Category
- Media
#### Custom fields
If you have additional custom fields, such as a text field, this can only be viewed in the pop-up view of the tile. All custom fields will be displayed in this tab, and you can check to enable them in the pop-up view or not.
### Share
Fine-tune sharing settings in the Sharing section.
#### Enable sharing
Check the box to allow sharing.
#### Custom settings
Toggle between entry and custom settings for titles, descriptions, and images.
#### Social media channels
Drag and drop to arrange channel order. Customize each channel’s settings individually.
### Visibility
Control when and where the widget is visible:
- Limit visibility by date, time, or geographical location.
- Make the widget a pop-up.
Learn more about [Widget Visibility](https://www.shortstack.com/help/widget-visibility/).
### Extras
[Learn about the Main Tag, CSS Classes, and Smart Labels settings here.](https://www.shortstack.com/help/widget-extras/)
### Multi-round voting
You can create up to 3 rounds of voting, in each round narrowing down the entries to vote on. Here's how:
#### 1. Add and rename Entry Display Widgets
1. Add three Entry Display Widgets to your campaign.
2. Rename each widget: Round 1, Round 2, Round 3.
3. Connect each widget to the same List for the contest.
#### 2. Configure round 1
1. Open the Round 1 Entry Display Widget settings.
2. Open the voting section and enable voting.
3. Set the voting round to Round 1 and specify the timeframe.
4. Save and exit.
#### 3. Configure round 2
1. Open the Round 2 Entry Display Widget settings.
2. Expand the filtering section and check "Filter by votes/points."
3. Select voting round 1.
4. Enter the number of top entries to display in the field. Click Next.
5. Enable voting.
6. Set the voting round to Round 2 and update the timeframe.
#### 4. Configure round 3
Repeat the steps above as listed in Configure Round 2, however, remember:
- Change step 3 to voting Round 2
- Change step 6 to voting Round 3
#### 5. Update visibility
Adjust the visibility settings for all widgets to show only during their respective voting rounds.
### Entry display styling options
When the Widget is selected, you can customize the styling of the specific widget. Some of the options include changing the number of columns, tile color, media navigation icons, the maximum width of the widget, and widget alignment. You will see the following areas of styling available in the [Style Panel](https://www.shortstack.com/help/getting-started-with-the-style-panel/):
- Columns
- Entry Tile
- Entrant Name
- Vote Count
- Category
- Title
- Description
- Custom Fields
- Vote Button
- Sharing
- Load More
- Pop-Up: General
- Pop-Up: Media
- Widget
### FAQs
Can a voter undo a vote?
No, once the voter clicks on the vote button, the vote has been cast. The voter can email you, and you can manually update the vote count for the entry in the Entries Manager.
Learn more about [Adjusting Votes](https://www.shortstack.com/help/entries-manager/).
How can I prevent bots or fraudulent votes?
The most secure method of vote restrictions is the Email Login option. This is available on the Max Plan. Additionally, requiring voters to enter their name and email address into a form drastically reduces the likelihood of fraudulent votes. As a bonus, when using a form, you will collect more leads!
How do I set up voting restrictions?
Let's look at the following example: You can vote a maximum of 10 times a day, with one vote per entry.
1. Open the Entry Display Widget settings and access the Voting tab.
2. Enable Voting Restrictions.
3. Change the total number of votes to 10.
4. Click on the blue text entry or category to change it to list.
5. Click on add interval...
6. Change the interval number to 1.
7. Click on hour and select day.
8. Save and exit.
### Related resources
[3 Types of Video Contests for Instagram and Facebook (Blog)](https://www.shortstack.com/blog/types-of-video-contests-for-instagram-and-facebook/)
[Lists Manager (Help Docs)](https://www.shortstack.com/help/lists-manager/)
[How to Set Up Voting (Help Doc)](https://www.shortstack.com/help/how-to-set-up-voting/)
[Using the Label Filter to Display Specific Entries (Help Doc)](https://www.shortstack.com/help/using-the-label-filter-to-display-specific-entries/)
### FAQs
#### Can a voter undo a vote?
No, once the voter clicks on the vote button, the vote has been cast. The voter can email you, and you can manually update the vote count for the entry in the Entries Manager.
Learn more about [Adjusting Votes](https://www.shortstack.com/help/entries-manager/).
#### How can I prevent bots or fraudulent votes?
The most secure method of vote restrictions is the Email Login option. This is available on the Max Plan. Additionally, requiring voters to enter their name and email address into a form drastically reduces the likelihood of fraudulent votes. As a bonus, when using a form, you will collect more leads!
#### How do I set up voting restrictions?
Let's look at the following example: You can vote a maximum of 10 times a day, with one vote per entry.
1. Open the Entry Display Widget settings and access the Voting tab.
2. Enable Voting Restrictions.
3. Change the total number of votes to 10.
4. Click on the blue text entry or category to change it to list.
5. Click on add interval...
6. Change the interval number to 1.
7. Click on hour and select day.
8. Save and exit.
---
## Entry Profiles Manager
URL: https://www.shortstack.com/help/entry-profiles-manager/
Category: Account & billing
Plan required: All plans
Last reviewed: 2026-08-13
The Entry Profiles Manager allows you to view all saved entry profiles, which are created using the export wizard or settings in the Entries Manager.
### Getting there
From the Dashboard:
1. Click Manage in the navigation menu.
2. Select Entry Profiles from the options.
If Favorited, simply click Entry Profiles in the side navigation menu.
> **Note:** Favoriting adds a direct link to the Entry Profiles Manager to your navigation menu. To favorite, click the heart icon next to the "Entry Profiles" title. Favorites are stored in your browser, so you’ll need to re-establish them when using a different browser or computer.
### Profile information
Your profiles appear on the right-hand side. Each info pane includes:
- Profile Name
- Description (if added)
- Last Edited: The date/time the profile was last edited.
- Created Date: The date the profile was created.
Hover over a profile’s name to reveal a pencil icon for renaming. Type the new name and click the blue checkmark to save it.
To edit a profile, click its icon to open the profile editor. Additional management options are available via the dropdown menu (arrow on the right).
### Additional profile options
#### Permissions
For [ShortStack for Teams](https://www.shortstack.com/help/shortstack-for-teams/) users, click Permissions to set access levels for your team members.
#### Delete
Delete the profile to remove it from your account.
> **Note:** Deleting profiles is permanent and does not affect any entries or lists associated with the profile. Ensure you no longer need a profile before deleting it.
### Search & tag
#### Search
Use the Search field (top-left) to locate profiles by keywords or phrases.
#### Tag
Available on Max Plan.
Search profiles by tags attached to them. Results appear automatically on the right.
### Filtering
Filters appear on the left-hand side, allowing you to filter profiles by:
- Profile Type: Export or Integration.
- Archived Status
Clear filters by clicking the x icon next to the filter name.
### Sorting
Sort profiles by:
- Recently Edited
- Newest
- Oldest
- Alphabetically (A–Z)
- Reverse Alphabetically (Z–A)
### Working with entry profiles
Click and drag your cursor across the screen to quickly select multiple Entry Profiles.
#### Tag
Available on Max Plan
Add tags to selected profiles by:
1. Clicking the Tag button.
2. Write the tag(s), separate by commas..
3. Pressing Enter/Return, then clicking the blue Save button.
#### Archive
Archive selected profiles by clicking Archive. Archived profiles disappear from view unless the Show Archived option is enabled in the filters.
To restore archived profiles:
1. Enable Show Archived.
2. Select the profiles to restore.
3. Click Restore at the top of the screen.
#### Delete
Delete multiple profiles by:
1. Selecting the profiles to highlight them.
2. Clicking the Delete button.
3. Typing the confirmation phrase and clicking the red Delete button.
> **Note:** Deleting profiles is permanent. Ensure profiles are no longer needed before deleting.
### Related resources
[How to Export Entries (Video)](https://youtu.be/sJ2swokDn-M)
[Exporting Data Using Export Profiles (Help Doc)](https://www.shortstack.com/help/exporting-data-using-export-profiles/)
[Exporting Entry Data (Help Doc)](https://www.shortstack.com/help/exporting-entry-data/)
[Exports Manager (Help Doc)](https://www.shortstack.com/help/exports-manager/)
---
## Entry Restrictions
URL: https://www.shortstack.com/help/entry-restrictions/
Category: Entry security & best practices
Plan required: All plans
Last reviewed: 2026-10-08
Contests, giveaways, sweepstakes, and digital marketing campaigns often involve enticing prizes, ranging from fun swag to high-value makeovers. However, without proper entry restrictions, you risk poor-quality leads, spam, bot entries, and dissatisfied clients.
### Overview
This document outlines methods to restrict and manage entries effectively.
### Restrict via email address
Restrict entries based on a specific email address:
1. Open the Form Container settings.
2. Navigate to the Entry Restrictions section.
3. Select Email Address and specify the time frame for entries. Example: Restrict entries to 1 every 24 hours.
### Email Login
Available on Max Plan.
The Email Login method is the most secure way to prevent fraudulent entries. It requires entrants to verify their email via a unique code, ensuring only valid email addresses are used.
#### Steps to set up Email Login
1. Add a Field Widget to your Form Container.
2. Select Login Field from the list of fields.
3. In the Layout section, click the red Email Configuration Required button.
4. Create a new email campaign in the wizard to configure the verification email. Save and activate the campaign.
5. Customize the email campaign text.
6. (Optional) Configure how often an entrant must verify their email in the Verification frequency section. The default is Verify every 30 days, and any longer interval is available. Always verify, or an interval shorter than 30 days, requires your own [SendGrid account connected to ShortStack](https://www.shortstack.com/help/setting-up-and-connecting-sendgrid-to-shortstack/). Codes are 6 digits, expire after 15 minutes, and work only once.
7. Close the Login Field Widget by clicking Save and Exit.
8. Open the Form Container settings.
9. Ensure the container is set to restrict entries by login.
10. Adjust the number of allowable entries per time frame, then save and exit.
### Country-based visibility
Available on the Max Plan.
Restrict or display content based on the visitor’s country, using their IP address to determine location. This helps reduce spam and improve lead quality.
#### Steps to set country-based visibility
1. Open the visibility settings for the widget you want to configure.
2. Click All Countries to access the country picker.
3. Select specific countries from the dropdown: Click a country to add it to the Visible Countries column. Use the Select All button for all countries, and move selected countries as needed.
### Bot prevention
#### Google reCaptcha
Available on Scale Plan and higher.
Enable Google reCaptcha to add a CAPTCHA to your forms or voting widgets.
1. Locate the Google reCaptcha setting in the Form Container or Entry Display Widget settings.
2. In the Restrictions section, check the box to Enable Google reCaptcha.
3. Adjust the Sensitivity Level slider to determine CAPTCHA strictness. If entrants encounter issues, move the slider left to make the CAPTCHA more lenient.
Learn [How to Create Google reCaptcha Keys](https://www.shortstack.com/help/how-to-create-google-recaptcha-keys/).
#### Cloudflare Turnstile
Available on Scale Plan and higher.
Cloudflare Turnstile creates a turnstile to verify whether visitors are human before they access your campaign.
##### Adjusting Cloudflare Turnstile settings
1. Access the Campaign Builder Settings (gear icon at the top of the builder).
2. Click the Security section.
3. Select one of the following options from the dropdown: Invisible (default): Best for embedded campaigns. Uses an invisible challenge with no interaction. Visible: Prompts visitors with an interactive challenge if necessary. Ideal for stand-alone landing pages. Disable: Turns off Turnstile (not recommended due to increased fraud risk).
4. For embedded campaigns, check the box to Enable if my campaign is embedded to activate Cloudflare Turnstile.
#### Key notes
- Both Google reCaptcha and Cloudflare Turnstile are valuable tools for reducing bot entries, though no method is completely foolproof.
- ShortStack engineers are continuously improving bot prevention solutions.
- For best results, combine multiple restriction methods to secure your campaigns effectively.
### Related resources
[7 Essential Security Features You Need to Prevent Cheating in Your Next Contest or Giveaway (Blog)](https://www.shortstack.com/blog/7-essential-security-features-you-need-to-prevent-cheating-in-your-next-contest-or-giveaway)
[Setting up Email Login for Voting (Help Doc)](https://www.shortstack.com/help/setting-up-email-login-for-voting/)
[Prohibit Fraudulent and Spam Entries with Fraud Filter Feature (Help Doc)](https://www.shortstack.com/help/prohibit-fraudulent-and-spam-entries-with-fraud-filter-feature/)
[Cloudflare Turnstile (Help Doc)](https://www.shortstack.com/help/cloudflare-turnstile/)
[Bot and Fraud Prevention Tools (Help Doc)](https://www.shortstack.com/help/bot-and-fraud-prevention-tools/)
---
## Entry Search Widget
URL: https://www.shortstack.com/help/entry-search-widget/
Category: Widgets
Plan required: Max plan
Last reviewed: 2026-03-16
The Entry Search Widget allows entrants to search through campaign entries using variables such as email or name. This eliminates the need to manually browse through each page, making it especially useful for campaigns with a large number of entries and campaigns with voting.
### Overview
[image: The Add Widgets panel with the Entry Search Widget icon, a magnifying glass, circled in green.]
#### Adding the Entry Search Widget
To add the Entry Search Widget to your campaign:
1. Click the Entry Search Widget icon in the Add Widgets Panel, or
2. Drag the icon into your preview area.
### Widget settings
The widget settings pop-up allows you to customize the Entry Search Widget.
#### Renaming the widget
1. Click the pencil icon in the top-left corner (next to the widget name).
2. Enter a new name and press Enter.
#### CSS ID
The CSS ID (starting with a #) is displayed in the top-right corner of the pop-up.
#### Customization
Navigate through the left-side menu to configure the widget. Use the Back and Next buttons to move between sections.
When finished, click the blue Save and Exit button.
### Setup
The Setup section is where most of the Entry Search Widget configuration occurs.
#### Entry Display Widget connection
Use the Entry Display Widget to be searched dropdown to select the Entry Display Widget containing the entries you want to make searchable.
#### Searchable fields
In the Searchable fields area, check the boxes next to the fields that entrants can use to search.
For example, check the Email box to allow entrants to find entries by typing an email address.
#### Customizing the search field
Use the Input label field to add text that appears above the search field (e.g., "Search for an entry").
Use the Placeholder field to add text that appears inside the search field before a term is entered (e.g., "Enter name or email").
### Visibility
Control when and where the widget appears using the Visibility section.
Options include:
- Setting specific dates and times for visibility.
- Displaying the widget only in the Builder.
- Limiting visibility to certain countries.
Learn more about [Widget Visibility.](https://www.shortstack.com/help/widget-visibility/)
### Extras
[Learn about the Main Tag, CSS Classes, and Smart Labels settings here.](https://www.shortstack.com/help/widget-extras/)
### Entry search styling options
When the Widget is selected, you can customize the styling of the specific widget. Some of the options include changing the background color, the maximum width of the widget, and widget alignment. You will see the following areas of styling available in the [Style Panel](https://www.shortstack.com/help/getting-started-with-the-style-panel/):
- Label
- Input Box
- Widget
### Related resources
[Entry Display Widget (Help Docs)](https://www.shortstack.com/help/entry-display-widget/)
[Using the Label Filter to Display Specific Entries (Help Doc)](https://www.shortstack.com/help/using-the-label-filter-to-display-specific-entries/)
---
## Error messages and what they mean
URL: https://www.shortstack.com/help/error-messages/
Category: Getting help
Plan required: All plans
Last reviewed: 2026-10-13
Look up a ShortStack error message by its exact wording to see what it means and how to fix it. Most come from a setting, not a bug: a domain missing from a connected site or reCAPTCHA key, a widget your plan doesn't include, or a form with no list. Each entry links to the full article.
Search this page for the exact words you see: press Cmd+F (Mac) or Ctrl+F (Windows) and type a few distinctive words from the message. Every heading quotes the message exactly as ShortStack, your browser, Google or Meta shows it, including any typos.
> **Tip:** If the message mentions a web address or an account name, search for the words around it instead. For example, search "refused to connect" rather than your own domain.
### Embedding and publishing
#### "m.cmpgn.page refused to connect." / "This site can't be reached"
What it means: the page showing your embedded campaign isn't on the campaign's connected site, so the campaign won't load there. You may see lndg.page, shortstack.page or your own domain in place of m.cmpgn.page. A common case is a staging site or a second domain that was never added.
How to fix it:
- Add the page's domain to the connected site for that publication. One connected site can cover both your staging and live domains, so you don't need a second embed.
- Use only one set of ShortStack embed code on the page. Two copies of the code on one page can cause this error.
- If it loads for you but not for colleagues or a client, their company firewall is probably blocking it. Ask them to try on a phone using mobile data, then send their IT team [Whitelisting ShortStack's domains](https://www.shortstack.com/help/whitelisting-shortstacks-domains/).
Full steps are in [Troubleshooting embed issues](https://www.shortstack.com/help/troubleshooting-embed-issues/).
#### "m.cmpgn.page's server IP address could not be found."
What it means: the browser couldn't look up ShortStack's campaign domain. It's almost always the viewer's network, such as an office firewall. It can also happen briefly during an outage at our hosting provider.
How to fix it:
- Open the page on a phone using mobile data, not office Wi-Fi. If it loads there, ask your IT team to allow ShortStack's domains ([Whitelisting ShortStack's domains](https://www.shortstack.com/help/whitelisting-shortstacks-domains/)).
- If it fails on every network and browser, wait a few minutes and refresh, then contact support if it continues.
#### "embed code is pending"
What it means: while you publish an inline embed, ShortStack doesn't yet see the global embed script on your website.
How to fix it:
- Install the global embed code on your site ([How to install our global embed code (2.0)](https://www.shortstack.com/help/how-to-install-our-global-embed-code-2-0/)), then go back to the publish step.
- Check the Publications Manager. Your campaign may already be published even while the message shows. A firewall or a browser extension on your side can block the check.
#### "Publishing timed out -- please close this dialog and try again. If this problem continues, please contact support."
What it means: the publish request didn't finish in time. Both cases on record were a temporary problem on ShortStack's side, not a campaign setting.
How to fix it:
- Close the dialog and publish again.
- If it times out again, contact support with the campaign link. Don't keep changing your campaign to work around it.
#### "Campaign not found"
What it means: the campaign isn't published at that address. It shows on every ShortStack campaign that has been unpublished. A new campaign can also show it briefly while support reviews it (see "flagged for a brief review").
How to fix it:
- If you unpublished the campaign by mistake, publish it again.
- If the campaign has ended and you don't want visitors to see this message, see [Visitors see "Campaign not found"](https://www.shortstack.com/help/troubleshooting-embed-issues/#visitors-see-campaign-not-found) for your options.
#### A 404 page when someone opens a share link
What it means: share links point to the page address saved in the publication's settings. If that address is wrong or the page has moved, people who open a shared link get a 404.
How to fix it:
1. Open the Publications Manager in the Campaign Builder.
2. Open the publication's settings (gear icon).
3. Change the address to the page where the campaign actually lives, and save.
### Voting
#### "An error occurred with your vote. Please refresh the page and try again." (widgets.entry.voting_error)
What it means: the vote was rejected. The voter sees the message (this is the default wording; it can be changed on the widget's Text tab, and older campaigns may show "Please try again."), and the browser console shows {"errors":{"base":"widgets.entry.voting_error"}}. It can be caused by the widget's visibility dates, a vote outside the voting schedule, voting disabled on the widget, a failed reCAPTCHA check, or a voting limit that's been used up.
How to fix it:
- Check the [widget visibility](https://www.shortstack.com/help/widget-visibility/) dates on every Entry Display Widget that should accept votes, and on any container around it.
- Check the voting schedule on the widget's Voting tab, and that voting is turned on for the widget.
- If the campaign uses reCAPTCHA, check that the key works ([How to create Google reCAPTCHA keys](https://www.shortstack.com/help/how-to-create-google-recaptcha-keys/)).
- Check the voting restrictions. A voter who has used up their limit can't vote again until the restriction period has passed.
- Publish changes, then test again.
See [Troubleshooting voting](https://www.shortstack.com/help/troubleshooting-voting/) for more causes.
#### "We could not verify that you are human. Please refresh the page and try again."
What it means: the vote was blocked because the voter looked like a bot, for example when the Google reCAPTCHA check on the Entry Display Widget fails.
How to fix it:
- Ask the voter to refresh the page and vote again.
- If many real voters see it, check that the campaign's reCAPTCHA keys work ([How to create Google reCAPTCHA keys](https://www.shortstack.com/help/how-to-create-google-recaptcha-keys/)).
#### "You already voted!"
What it means: the voter has reached the limit set in the Entry Display Widget's voting restrictions. This is the default message. You can change its wording in the restriction settings, so your campaign may show different text.
How to fix it:
- If voters share a household, an office or a device, the Anonymous Fingerprint restriction can treat them as one voter. Switch to a different restriction type, or tell voters to use a different network or browser.
- If a voter is still blocked after the restriction period has passed, ask them to clear their browser cache and cookies for the past 24 hours and try again.
- To check what was recorded, click the vote total at the top left of the entry's details in the Entries Manager.
See [Troubleshooting voting](https://www.shortstack.com/help/troubleshooting-voting/) and the voting restrictions in [Entry Display Widget](https://www.shortstack.com/help/entry-display-widget/).
### Google reCAPTCHA
#### "ERROR for site owner: Invalid domain for site key"
What it means: Google rejected your reCAPTCHA key because the campaign's domain isn't on the key's domain list. It can block voting, email verification codes and form entries.
How to fix it:
1. Open your key in Google's reCAPTCHA admin console.
2. Add the domain the campaign is served from. For an embed, that's usually ShortStack's domain (cmpgn.page, lndg.page or shortstack.page), not only your own website.
3. Enter domains only, such as shortstack.page, with no page paths.
Also check you didn't paste the same value into both the Site Key and Secret Key fields. Full steps are in [How to create Google reCAPTCHA keys](https://www.shortstack.com/help/how-to-create-google-recaptcha-keys/).
### Forms and entries
#### A 404 page after clicking Enter
What it means: the form submitted, but the after-submit redirect sends people to a page that doesn't exist.
How to fix it:
1. Open the Form Container settings and select the After submit tab.
2. Change the after-submission action to Use Action Widgets, then save.
3. In the Action Widget that runs after submission, remove the old actions and add a Campaign → Redirect action with the correct address.
4. Publish changes and test.
Support recommends Action Widgets for anything that happens after submission ([Action Widget](https://www.shortstack.com/help/action-widget/)).
#### "An error occurred while importing entries. Please try again later"
What it means: the List Importer couldn't process your CSV file.
How to fix it:
- Put each value in its own column and save the file as .csv.
- Try the import again.
- If it still fails, send the file to support.
> **Important:** Wrong column headers don't show an error. The list still uploads, but any field whose header doesn't match comes in empty. Before importing, compare your headers with the standard headers in [Using the List Importer](https://www.shortstack.com/help/using-the-list-importer/), or start from the template there.
Importing always creates a new list. It doesn't update an existing one, so reconnect any widget, such as a leaderboard, to the new list.
#### "Too many requests"
What it means: the campaign's Rate limiting setting caps how many entries it accepts from one IP address per minute, to stop bots flooding the form. People on the same network, such as an office, a school or an event's Wi-Fi, share an IP address, so a busy moment can hit the cap.
How to fix it:
- Ask entrants to wait a minute and try again.
- If many people will enter from one place at once, raise the limit under Rate limiting in [Campaign settings](https://www.shortstack.com/help/campaign-settings/#rate-limiting). A higher limit lets more bot entries through, so raise it only as far as you need.
### Account and plan
#### "Your plan does not include the use of this widget."
What it means: the campaign contains a widget your plan doesn't include. The message shows inside that widget in the Campaign Builder. The usual one is the [Entry Search Widget](https://www.shortstack.com/help/entry-search-widget/), which is a Max plan feature and comes with some voting templates.
How to fix it:
- Select the widget that shows the message and delete it. The message disappears and the rest of the campaign is unaffected.
- To keep the widget, [upgrade your plan](https://www.shortstack.com/help/upgrading-your-plan/).
> **Note:** If the widget used to work, your plan may have changed. A feature added to your account as a one-off extra doesn't carry over when you change plans. Contact support if you think you should still have it.
#### "Your session has expired -- please log in again"
What it means: ShortStack signed you out in the middle of a task, such as uploading or choosing an image. This usually happens when two people use the same login at the same time.
How to fix it:
- Don't share one login. Give each person their own seat ([ShortStack for Teams](https://www.shortstack.com/help/shortstack-for-teams/)).
- Log out, log back in, and try again.
- If it keeps happening and nobody else uses your login, contact support. It has also been caused by a bug that we fixed.
#### "Unknown Error"
What it means: the Campaign Builder hit an error it couldn't name. When many of these appear together, ShortStack is usually having a temporary slowdown.
How to fix it: wait a few minutes and refresh. If it continues, contact support.
#### "flagged for a brief review"
What it means: ShortStack holds emails that contain links, and campaigns that look suspicious, for a quick check by our support team before they go out. During normal business hours, support usually verifies them within minutes; on weekends, within 24 hours. Until the review is finished, a campaign's published address can show "campaign not found".
How to fix it: wait for support to finish the review. If it's taking longer than that, contact support.
See [New accounts and protecting deliverability](https://www.shortstack.com/help/new-accounts-and-protecting-deliverability/).
### Emails
#### "DMARC policy found with p=quarantine."
What it means: the Email Builder found that your From Address's domain has a strict DMARC policy. Emails sent from it through ShortStack are likely to land in spam, or be rejected by the recipient's mail server.
How to fix it:
- Ask whoever manages your domain to change its DMARC policy to p=none, or
- Send from one of ShortStack's default From Addresses.
See [Troubleshooting emails](https://www.shortstack.com/help/troubleshooting-emails/).
#### "Your account must be manually reviewed before including links in your emails"
What it means: to keep spam and fraud off ShortStack, emails with links from a new account are held until support reviews the account. During normal business hours, support usually reviews them within minutes; on weekends, within 24 hours.
How to fix it: wait for the review, or contact support. Once support has approved your account, your emails with links send without the review.
See [New accounts and protecting deliverability](https://www.shortstack.com/help/new-accounts-and-protecting-deliverability/).
### Social imports
#### "You've reach the maximum number of feeds."
What it means: you already have as many Instagram hashtag feeds as your plan allows. Free and Launch allow 1, Build 2, Scale 3 and Max unlimited. Ending a feed doesn't free the slot.
How to fix it:
1. Delete the feed you no longer need in the [Hashtag Feeds Manager](https://www.shortstack.com/help/hashtag-feeds-manager/). Deleting a feed keeps its entries and list.
2. Log out of ShortStack and back in, then create the new feed.
Or [upgrade your plan](https://www.shortstack.com/help/upgrading-your-plan/) to run more feeds at once.
#### "{permission}" is required in order to give this app access to the permissions you selected.
What it means: this message comes from Meta. Your Facebook account doesn't have access to the ad account behind the promoted post or ad you're importing from.
How to fix it: ask an admin of the Business Manager that owns the ad account to give you View performance access to it, then connect again. See [Get access to promoted (ad) posts](https://www.shortstack.com/help/granting-page-permissions-using-meta-business-suite/#get-access-to-promoted-ad-posts) for the steps.
### FAQs
What if my error message isn't on this page?
Contact support@shortstack.com and paste the exact wording, or attach a screenshot. Include the link to your campaign in the Campaign Builder and, if the error happens on a live page, a screenshot of your browser's console log ([how to open it](https://www.shortstack.com/help/how-to-access-your-browsers-console-log/)).
The fix didn't work. What should I send support?
The exact error text, what you clicked just before it appeared, the browser you're using, and the Campaign Builder link. If the error appears only for some people, say whether they're on an office or company network, because a firewall is a common cause.
### Related resources
- [Troubleshooting embed issues](https://www.shortstack.com/help/troubleshooting-embed-issues/)
- [How to access your browser's console log](https://www.shortstack.com/help/how-to-access-your-browsers-console-log/)
- [Troubleshooting issues with feeds and Facebook/Instagram importer tools](https://www.shortstack.com/help/troubleshooting-issues-with-feeds-and-facebook-instagram-importer-tools/)
### FAQs
#### What if my error message isn't on this page?
Contact support@shortstack.com and paste the exact wording, or attach a screenshot. Include the link to your campaign in the Campaign Builder and, if the error happens on a live page, a screenshot of your browser's console log ([how to open it](https://www.shortstack.com/help/how-to-access-your-browsers-console-log/)).
#### The fix didn't work. What should I send support?
The exact error text, what you clicked just before it appeared, the browser you're using, and the Campaign Builder link. If the error appears only for some people, say whether they're on an office or company network, because a firewall is a common cause.
---
## Exporting entries with Export Profiles
URL: https://www.shortstack.com/help/exporting-data-using-export-profiles/
Category: Managing entries
Plan required: All plans
Last reviewed: 2026-10-11
An export profile is a saved layout for your entry exports: which fields become columns, in what order, and what each column is called. You must use one to export more than 1,000 entries, and when you export from more than one list, it's the only way to include custom fields from the form builder.
### When you need an export profile
| Your export | Do you need a profile? |
| More than 1,000 entries | Yes. The export won't start without one. |
| Entries from more than one list at once | Yes, to keep your custom fields. Without a profile, fields you added in the form builder are left out. Filtering to a single list also keeps them. |
| Anything else | No, but it can still save you time. |
A profile is worth setting up even when it's optional if:
- you export the same list regularly and want the same columns every time;
- you import the file into a CRM or email tool that expects particular column names;
- the tool you import into needs a column with the same value on every row, such as the campaign name.
### Create a profile while exporting
1. In the Lists Manager, click the down arrow beside the list and choose View Entries. Filter the entries if you need to: the export includes exactly the entries your filters show.
2. Click Actions, then Export Entries, and choose Entries, or Entries & Uploaded Files to include uploads.
3. When the wizard asks about an export profile, choose Yes. With more than 1,000 entries it skips the question and opens the list of profiles.
4. Click Add and give the profile a name you'll recognise next time.
5. Under Field Mappings, remove columns you don't need with the trash can icon, add any that are missing (see below), and rename a column by changing its Output Field Name.
6. Click Save, click the profile's name, then click Select.
7. Finish the wizard: enter the email address to send the file to, and click Export & Close.
### Choosing what goes in each column
The field list starts with the fields your form collected, which isn't always every field. Add the rest with these buttons:
| Button | What it adds | Use it when |
| Add One Field | A single field of your choice. | A field you need isn't listed. |
| Add All Standard Fields | Every standard field the profile doesn't have yet. Standard fields are the ones a form can use only once: Name, Email, Address, Upload and Category. | You want everything, and will remove a few. |
When you add one field, its Type sets how the column is filled:
| Type | What goes in the column | Use it when |
| Simple Map | The value of one entry field. This is the default. | Almost always. |
| Set Constant | The same value on every row, typed into Constant Value. | Your import needs a fixed value, such as a source or campaign name. |
### Using a saved profile
When the wizard asks about an export profile, choose Yes, click the profile's name, then click Select. If you're exporting from a single list, tick Save as default profile for this list and it's chosen for you next time.
To rename, edit or delete profiles, use the [Entry Profiles Manager](https://www.shortstack.com/help/entry-profiles-manager/).
### If the export isn't what you expected
- Custom form fields are missing. You exported from more than one list without a profile. Filter to a single list, or use a profile.
- Entries are missing. The export includes only the entries that match your current filters, and never deleted ones. Check the filters in the Entries Manager and export again.
- A column name doesn't match what your CRM expects. Change that column's Output Field Name in the profile, then export again.
- You can't find the file. It's emailed to you when it's ready, and it's listed in the [Exports Manager](https://www.shortstack.com/help/exports-manager/).
### FAQs
Why is ShortStack asking me to choose an export profile?
Your export has more than 1,000 entries. Exports that size must use a profile, so the export wizard opens the list of profiles and won't continue until you choose or create one.
Are deleted entries included in an export?
No. An export contains exactly the entries that match your current filters in the Entries Manager, and never deleted entries.
Where do I find the exported file?
It's emailed to you when it's ready, and it's also listed in the Exports Manager, where you can download it.
### Related resources
[How to Export Entries (Video)](https://youtu.be/sJ2swokDn-M)
[Exporting Entry Data (Help Doc)](https://www.shortstack.com/help/exporting-entry-data/)
[Exports Manager (Help Doc)](https://www.shortstack.com/help/exports-manager/)
[Entry Profiles Manager (Help Doc)](https://www.shortstack.com/help/entry-profiles-manager/)
[Entry Details (Help Doc)](https://www.shortstack.com/help/entry-details/)
### FAQs
#### Why is ShortStack asking me to choose an export profile?
Your export has more than 1,000 entries. Exports that size must use a profile, so the export wizard opens the list of profiles and won't continue until you choose or create one.
#### Are deleted entries included in an export?
No. An export contains exactly the entries that match your current filters in the Entries Manager, and never deleted entries.
#### Where do I find the exported file?
It's emailed to you when it's ready, and it's also listed in the Exports Manager, where you can download it.
---
## Exporting entry data
URL: https://www.shortstack.com/help/exporting-entry-data/
Category: Managing entries
Plan required: All plans
Last reviewed: 2026-05-19
ShortStack collects and stores all of your entry data. In addition to storing this data, we provide easy export options via .csv files or .zip files for media. This guide covers the steps to export your entries.
### Getting there
To export your entries, you need to access your Entries Manager. There are two ways to get there:
From the Home screen:
1. Click Manage in the main menu.
2. Then select Entries from the dropdown.
From the Campaign Builder:
1. Access your entries via the Form Container Widget (or Entry Display Widget) in the Edit Widgets Panel. Click the inbox icon, which displays the number of entries.
### Export entries
#### Step 1: filter for a specific campaign
If you accessed the Entries Manager from the Campaign Builder, the list is already selected. If not, use the filtering option to select the specific list you want to export.
> Important: If no filter is applied, all entries in your account will be exported, which may take time depending on the volume of stored entries.
#### Step 2: export your entries
1. Once the list is selected, click on the Actions dropdown.
2. Select Export.
3. Choose your export format: .csv file .zip file (for media) Both
4. Click Next.
5. Select whether you want to use an export profile (see details below). If using an export profile, select or create your export profile.
6. Enter the email address where you want to receive the export. Click Export.
#### Step 3: download the file
Once the export is ready, you will receive a notification in ShortStack and an email.
You can download the file(s) in two ways:
1. Click the bell icon in ShortStack, then select "Exported Entries Ready" to start the download.
2. Use the download link provided in the email.
### Export Profiles
When exporting entries, your file may contain numerous columns, including fields you did not use. To export only specific fields, use Export Profiles. Export Profiles are required when exporting a list of 1,000 entries or more.
Learn more about [Exporting Entries with Export Profiles](https://www.shortstack.com/help/exporting-data-using-export-profiles/).
### FAQs
Does ShortStack delete entries after a period of time?
To free up space in our servers, we only remove media assets (.png, .jpeg, .mp4, .pdf, etc.) on a rolling 3-year basis. To ensure you have access to all media files, remember to download the .zip files after your campaign has finished.
Does the media URL in the.csv file still work after 3 years?
No, the URL provided in the.csv file will no longer work with expired entries. We recommend downloading all media assets as a .zip file to ensure you have access to them for as long as you need.
Where can I find the export files?
All export information can be found in the Exports Manager. Here, you can download files, view the remaining download time, and export status.
Learn more about the [Exports Manager](https://www.shortstack.com/help/exports-manager/).
### Related resources
[How to Export Entries (Video)](https://youtu.be/sJ2swokDn-M)
[Exporting Data Using Export Profiles (Help Doc)](https://www.shortstack.com/help/entry-profiles-manager/)
[Exporting Data Using Export Profiles (Help Doc)](https://www.shortstack.com/help/exporting-data-using-export-profiles/)
[Exports Manager (Help Doc)](https://www.shortstack.com/help/exports-manager/)
### FAQs
#### Does ShortStack delete entries after a period of time?
To free up space in our servers, we only remove media assets (.png, .jpeg, .mp4, .pdf, etc.) on a rolling 3-year basis. To ensure you have access to all media files, remember to download the .zip files after your campaign has finished.
#### Does the media URL in the.csv file still work after 3 years?
No, the URL provided in the.csv file will no longer work with expired entries. We recommend downloading all media assets as a .zip file to ensure you have access to them for as long as you need.
#### Where can I find the export files?
All export information can be found in the Exports Manager. Here, you can download files, view the remaining download time, and export status.
Learn more about the [Exports Manager](https://www.shortstack.com/help/exports-manager/).
---
## Exports Manager
URL: https://www.shortstack.com/help/exports-manager/
Category: Account & billing
Plan required: All plans
Last reviewed: 2026-08-13
The Exports Manager shows the status of your exports, the time remaining for files to finish exporting, and lets you download completed exports directly. Exports are displayed with the most recent at the top.
### Getting there
From the Dashboard:
1. Click Manage in the navigation menu.
2. Select Exports from the options.
If Favorited, simply click Exports Manager in the side navigation menu.
> **Note:** Favoriting adds a direct link to the Exports Manager in the navigation menu. To favorite, click the heart icon next to the "Exports" title. Favorites are stored in your browser, so you'll need to re-establish them when using a different browser or computer.
### Exports
#### Overview of information
Once an export has been initiated, its details will appear in the Exports Manager. Each export displays the following information:
- Status: Pending, Running, Completed, or Failed
- Total Entries: The number of entries included in the export
- Download Files: Once ready, click the download button to download the files directly.
- Time Remaining: The estimated time until the export is complete
#### Additional export options
Clicking the three dots at the top right of an export's information pane reveals the following options:
- Download: Download the completed export file directly to your computer.
- Delete: Permanently remove the export from the Exports Manager.
### Working with exports
Select an export by clicking it. To quickly select multiple exports, click and drag your cursor across the screen. Clear your selections by clicking X Clear next to the counter.
#### Deleting exports
To delete selected exports, click Delete, confirm the selection in the pop-up, then click Delete again to permanently remove them.
> **Note:** Deleting exports is permanent, so make sure you no longer need them before completing the deletion.
### How do I export entries?
To export entries, open the list in the Entries Manager (or filter for a specific campaign if you're starting from the Entries Manager directly).
> **Note:** If no filter is applied, all entries in your account will be exported, which may take time depending on the volume of stored entries.
Click the Actions dropdown and select Export. Choose your export format — .csv (entry data), .zip (uploaded media), or both — then click Next. If prompted, select or create an export profile. Enter the email address where you'd like to receive the export, then click Export.
Once the export is ready, you'll receive a notification in ShortStack and an email. To download, click the bell icon in ShortStack and select Exported Entries Ready, or use the download link in the email.
For full exporting instructions: [Exporting Entry Data](https://www.shortstack.com/help/exporting-entry-data/).
### Related resources
[Exporting Entry Data (Help Doc)](https://www.shortstack.com/help/exporting-entry-data/)
[Entries Manager (Help Doc)](https://www.shortstack.com/help/entries-manager/)
[Exporting Data Using Export Profiles (Help Doc)](https://www.shortstack.com/help/exporting-data-using-export-profiles/)
---
## Facebook and Instagram promotion guidelines
URL: https://www.shortstack.com/help/facebook-promotion-guidelines/
Category: Contest rules & compliance
Last reviewed: 2026-10-13
You can run giveaways and contests on Facebook and Instagram if every entrant releases Meta from liability and agrees that Meta doesn't sponsor the promotion. On both, you can't offer entries in exchange for likes, follows or shares, and on Facebook you can't require or reward tagging friends. Asking people to comment on your post is allowed.
These rules come from Meta's [Policies for Pages, Groups and Events](https://www.facebook.com/policies_center/pages_groups_events) (section 7, Promotions), [Instagram's Promotion Guidelines](https://help.instagram.com/179379842258600) and Meta's [spam policy](https://transparency.meta.com/policies/community-standards/spam/), which applies to Facebook, Instagram, Messenger and Threads. Meta can change them, so check those pages before a large promotion. Meta doesn't help run promotions, and you run one at your own risk.
### What every promotion needs
On both Facebook and Instagram, you're responsible for running the promotion lawfully. That means:
- Official rules, and the offer terms and eligibility requirements, such as age and residency.
- Compliance with the law where you run it, including any registration or approval the prize needs.
- A release. Each entrant fully releases Meta (or Instagram) from liability.
- A non-sponsorship statement. Each entrant acknowledges that the promotion isn't sponsored, endorsed or administered by, or associated with, Meta (or Instagram).
> **Tip:** The [Rules Generator](https://www.shortstack.com/help/rules-generator/) writes official rules you can start from. Long terms don't have to fill your page: put them in a pop-up opened by an [Action Widget](https://www.shortstack.com/help/action-widget/), or in a container that people can show and hide.
### What you can and can't ask entrants to do
| Entry action | Facebook | Instagram |
| Comment on your post | Allowed | Allowed |
| Share or repost the promotion | Not allowed, as a requirement or for extra entries | Not allowed, as a requirement or for extra entries |
| Tag friends | Not allowed, as a requirement or for extra entries | Not restricted, as long as the tags are accurate |
| Tag people who aren't in a photo | Not allowed | Not allowed |
| Like or react to your post | Not allowed, as a requirement or for extra entries | Not allowed, as a requirement or for extra entries |
| Like or follow your Page or account | Not allowed, as a requirement or for extra entries | Not allowed, as a requirement or for extra entries |
Facebook: a promotion "must not require or incentivize participants to share, repost, tag others, or otherwise publicize" it. That covers extra entries too, not only entry requirements.
Instagram: you must not tag content inaccurately or encourage people to, for example by asking them to tag themselves in a photo they aren't in.
Both: Meta's spam policy doesn't allow exchanging anything for engagement, such as likes, shares or follows. That includes giveaways, and Meta's own example is "Anyone that likes my page will be entered to win $500." So likes, follows and shares can't be an entry requirement or earn extra entries on either platform.
Checking follows: Meta's API doesn't let third-party platforms like ShortStack see who follows a Page or an Instagram account; it only gives the total count. [Points for Actions](https://www.shortstack.com/help/points-for-actions/) records that someone clicked through to your Page, not that they followed it.
### Compliant ways to give extra entries
| Option | What it rewards | Plan |
| [Refer-a-Friend](https://www.shortstack.com/help/refer-a-friend/) | A friend entering through the entrant's personal referral link | Build and higher |
| [Points for Actions](https://www.shortstack.com/help/points-for-actions/) | Clicking through to your Page or profile, or watching a video | All plans |
Refer-a-Friend rewards the friend's entry, not the share itself. Points for Actions can't confirm a follow, only the click.
### Running the promotion
- Campaigns can't be published inside a Facebook Page. Publish your campaign as a landing page or embed it on your site, then share the link in your post, Story or bio.
- For comment giveaways, import the comments with the Social Importer. Facebook imports capture each person's Facebook name, user ID, comment and reaction; Instagram imports capture the username and comment. Neither captures an email address, so check any other conditions, such as one comment per person, when you pick the winner.
### FAQs
Can I run a "comment to win" giveaway on Facebook or Instagram?
Yes. Meta's rules don't stop you asking people to comment on your post. Import the comments into ShortStack with the [Social Importer](https://www.shortstack.com/help/how-to-import-comments-and-reactions-from-facebook/) and pick a winner from the list.
Can I ask entrants to tag a friend?
Not on Facebook. Facebook's policy says a promotion must not require or reward tagging others, so tagging can't be a condition of entry or earn extra entries. Instagram's guidelines only ban inaccurate tagging, such as tagging people who aren't in a photo.
Can I require people to like or follow my Page or account?
No, on Facebook or Instagram. Meta's spam policy doesn't allow giveaways that offer a chance to win in exchange for likes, follows or shares. Invite people to follow instead, for example by announcing the winner there.
Can I publish my campaign inside my Facebook Page?
No. Facebook no longer allows campaigns to be published inside a Page. Publish your campaign as a landing page or embed it on your site, then share the link in a post.
### Related resources
[Sweepstakes rules for Instagram, Facebook, TikTok, Snapchat and more](https://www.shortstack.com/help/sweepstakes-rules-for-instagram-facebook-tiktok-snapchat-and-more/)
[How to import comments and reactions from Facebook](https://www.shortstack.com/help/how-to-import-comments-and-reactions-from-facebook/)
[How to import comments from an Instagram post](https://www.shortstack.com/help/how-to-import-comments-from-an-instagram-post/)
[Points for Actions](https://www.shortstack.com/help/points-for-actions/)
[How to use the Rules Generator](https://www.shortstack.com/help/rules-generator/)
[Sweepstakes and contest rules guide](https://www.shortstack.com/help/sweepstakes-and-contest-rules-guide/)
[Running a giveaway? Why "No Purchase Necessary" is necessary (Blog)](https://www.shortstack.com/blog/running-a-giveaway-why-no-purchase-necessary-is-necessary-2)
### FAQs
#### Can I run a "comment to win" giveaway on Facebook or Instagram?
Yes. Meta's rules don't stop you asking people to comment on your post. Import the comments into ShortStack with the [Social Importer](https://www.shortstack.com/help/how-to-import-comments-and-reactions-from-facebook/) and pick a winner from the list.
#### Can I ask entrants to tag a friend?
Not on Facebook. Facebook's policy says a promotion must not require or reward tagging others, so tagging can't be a condition of entry or earn extra entries. Instagram's guidelines only ban inaccurate tagging, such as tagging people who aren't in a photo.
#### Can I require people to like or follow my Page or account?
No, on Facebook or Instagram. Meta's spam policy doesn't allow giveaways that offer a chance to win in exchange for likes, follows or shares. Invite people to follow instead, for example by announcing the winner there.
#### Can I publish my campaign inside my Facebook Page?
No. Facebook no longer allows campaigns to be published inside a Page. Publish your campaign as a landing page or embed it on your site, then share the link in a post.
---
## Field Library
URL: https://www.shortstack.com/help/field-library/
Category: Account & billing
Plan required: All plans
Last reviewed: 2026-08-13
The Field Library holds the custom fields you have built with the Field Widget — text, boolean, list, date, and number types — and shows how many of each you can still create against your plan's limits. You can edit any field's settings here, or permanently archive one you no longer need.
### Getting there
From the Dashboard:
1. Click Manage in the navigation menu.
2. Select Field Library from the options.
If Favorited, simply click Field Library in the side navigation menu.
> Favoriting adds a direct link to the Field Library to the navigation menu. To favorite, click the heart icon next to the "Field Library" title. Favorites are stored in your browser, so you’ll need to re-establish them when using a different browser or computer.
### Active field limits
At the top of the Field Library, you will find a hidden section, Active Field Limits. Click it to open the section to view the number of active (non-archived) fields for each field type. As a best practice, reuse fields when creating forms to prevent reaching limits. If you run out of a specific field type, archive unused fields.
### Field information
Fields are displayed on the right-hand side, with each info pane including:
- Field Name
- Date/Time Created
- Field Type
- Internal Field Name
Click the icon on the right to open the Field Editor for making changes to a selected field.
### Field editor
The Field Editor is divided into three tabs: Details, Default Settings, and Campaigns.
#### Details tab
Here, you can:
- Edit the Field Name.
- Add a Description.
- Specify a Custom Label for Exporting and Webhooks.
- View the Field Type and Internal Field Name.
- Archive the field.
> **Important:** Archiving a field is permanent and can't be undone. Once it's archived, you can't choose it for a new Field Widget. Campaigns that already use the field keep collecting it, and nothing it has collected is lost. Open the Campaigns tab first to see where it's in use.
#### Default settings tab
This tab displays the default settings applied when the field is used in a new Field Widget. Options depend on the field type but may include:
- Layout
- Text
- Validation
- Content
- Error Messages
- Instructions
- Extra CSS Classes
These default settings can be overridden on a per-campaign basis when configuring the Field Widget in your campaign.
#### Campaigns tab
Lists all campaigns currently using the selected field, grouped by campaign (most campaigns will only use a field once). Each shows a publishing-status badge — Published, Unpublished, or Unpublished Changes — along with Created and Updated dates, so you can see at a glance where a field is in use before you archive it. Clicking a campaign name opens it in the Campaign Builder.
### Search
Use the Search field (top-left) to locate fields using a keyword or phrase.
#### Tag
Tags are included on the Max plan. [Compare plans](https://www.shortstack.com/pricing/).
Search for fields by tags attached to them. Results display automatically on the right.
### Filters
Filters are available on the left-hand side to help narrow results. Options include:
- Field Type: Text, Boolean, List, Date, or Number.
- Archived Status
### Sorting
To sort fields, click the button near the field count at the top of the page. Options include:
- Newest
- Oldest
- Name (A–Z)
- Name (Z–A)
### Working with fields
Click and drag your cursor across the screen to quickly select multiple fields. When you select a field, additional options appear in a bar at the top of the screen.
#### Tag
Tags are included on the Max plan. [Compare plans](https://www.shortstack.com/pricing/).
To add tags to selected fields:
1. Click the Tag button.
2. Type tags (comma-separated).
3. Press Enter/Return after each tag and click the blue Save button.
#### Archive
Archived fields stay visible in the Field Library, and campaigns that already use one keep collecting it. When you add a new Field Widget, archived fields aren't offered. To collect the same information in another form, copy a Field Widget that already uses the field: the copy keeps it. Otherwise, create a new field.
> **Important:** Archiving a field is permanent and can't be undone. Check the field's Campaigns tab first, so you know which forms still use it.
To archive a field:
1. Click the Archive button.
2. Type the confirmation prompt.
3. Click the red Archive button to complete the action.
### Related resources
[Reusing Fields From the Field Library (Video)](https://youtu.be/EZAT45zeTT8)
[ShortStack for Teams (Help Doc)](https://www.shortstack.com/help/shortstack-for-teams/)
[Field Widget (Help Doc)](https://www.shortstack.com/help/field-widget/)
[Making Copies of Field Widgets (Help Doc)](https://www.shortstack.com/help/making-copies-of-field-widgets/)
---
## Field Widget
URL: https://www.shortstack.com/help/field-widget/
Category: Widgets
Plan required: All plans
Last reviewed: 2026-02-09
The Field Widget adds input fields to a Form Container in your campaign. Visitors to your live campaign can fill out these fields and use the Submit button to submit their information.
### Overview
If you want to provide entries yourself, you can do so inside the Campaign Builder and use visibility settings to hide the Form Container from the live campaign.
[image: The Add Widgets panel with the Field Widget icon, a form with lines, circled in green.]
### Adding the Field Widget
To add the Field Widget to your campaign:
1. Click the Field Widget icon in the Add Widgets Panel, or
2. Drag the icon into the Edit Widget Panel and into a Form Container Widget.
Note: Attempting to add a Field Widget outside of a Form Container will trigger an error message.
[image: An error dialog headed Action Needed, reading Field widgets must be enclosed inside a form container widget, with buttons to Add Form Container Widget or Close.]
### Widget settings
The setting will automatically pop up when you add a new Field Widget. Otherwise, you can access the settings by clicking on the pencil icon for the Field Widget.
#### Renaming the widget
1. Click the pencil icon in the top-left corner (next to the widget name).
2. Enter a new name. By default, the name will be updated to match the selected field type.
#### CSS ID
The CSS ID (starting with a #) is displayed in the top-right corner of the pop-up.
### Field type
The Field Type section allows you to choose the field type for your form. Field types are categorized into:
- Standard Fields: Can only be used once per list.
- Custom Fields Can be used multiple times per list, are saved to your Field Library, and can be hidden so they don't appear on the live form.
#### Selecting a standard field
1. Click on the desired field type to select it.
2. Configure the field in the Field Settings section.
3. Standard field types that are already in use will no longer be selectable in the same Form Container.
#### Selecting a custom field
1. Choose the field type.
2. (Optional) Check the box to make the field hidden.
3. If you have created a custom field you want to reuse, select it on the right-hand side.
4. Customize the field in the Field Settings section.
5. Save the field to your Field Library for future use or select an existing custom field from your library.
> If you want to collect data that the entrant does not see, you can make custom fields hidden. Hidden fields are hidden from view from the entrant, but you can export the data. This can store information from [Query String Parameters](https://www.shortstack.com/help/advanced-autofilling-form-fields-using-query-string-parameters/), quiz results, or any other information you wish to collect.
##### Duplicate custom fields
You can have the same custom field twice on the same form. When this happens, both fields will be changed as the entrant changes their response.
You can view the custom field ID at the bottom right corner. If you have two fields with the same ID, then one will need to be changed. In the example below, the field ID is custom_text_52.
[image: The lower part of the Field Widget settings, with the Field Library reference outlined in green: the field label How many dogs do you want? above its ID, custom_text_52.]
Learn about [Making Copies of Field Widgets](https://www.shortstack.com/help/making-copies-of-field-widgets/).
### Field settings
The Field Settings section is where you configure most of the details for your field. Settings may vary depending on the field type, but common subsections include:
#### Layout
Choose a layout option if multiple layouts are available for the field type.
#### Text
Assign Labels or Placeholders to your field, if applicable.
#### Validation
Choose if you want the field to be required Always, When visible, or Never required (optional).
If a Field Widget is set to Require Always but is hidden by itself or by a parent container (Starts Hidden), a warning will appear in the Edit Widgets panel. Click the warning icon to automatically adjust the setting to Required when visible.
[image: The Edit Widgets panel with a Phone field marked by a warning icon. A tooltip explains that the field is set to required always but also starts hidden, and to click the icon to change it to required when visible.]
Additionally, when adding a new Field Widget inside a Starts Hidden Container or Form Container Widget, the field's requirement will default to Required when visible to prevent validation errors in hidden fields.
> The Require when visible setting makes a field required only if it's visible to the entrant. If the remains hidden, entrants don't need to complete it. If a hidden field is set to always required, entrants will see an error when submitting the form.
#### Error messages
Add custom messages to display when validation errors occur.
#### Field points
Assign points to the field. Entrants earn these points upon completing the field.
#### Other
Instructions: Add text to display below the field when it is selected.
Extra CSS Classes: Add one or more CSS classes to customize the field's appearance using custom CSS.
Note: Click the expand icon (▸) to open collapsible sections in the Field Settings.
### Visibility
Control when and where the field is visible using the Visibility section. Options include:
- Setting specific dates and times.
- Displaying the field only in the Builder.
- Restricting visibility by country.
Learn more about [Widget Visibility](https://www.shortstack.com/help/widget-visibility/).
### Extras
[Learn about the Main Tag, CSS Classes, and Smart Labels settings here.](https://www.shortstack.com/help/widget-extras/)
### Field Widget styling options
When the Widget is selected, you can customize the styling of the specific widget. Some of the options include changing the input box color, the maximum width of the widget, label font, and widget alignment. You will see the following areas of styling available in the [Style Panel](https://www.shortstack.com/help/getting-started-with-the-style-panel/):
- Labels
- Input Box
- Help Text
- Widget
### Related resources
[How to Build a Form (Video)](https://youtu.be/PU_x-2IIVrs)
[The Best Types of UGC to Collect and Use (Blog)](https://www.shortstack.com/blog/the-best-types-of-user-generated-content-to-collect-and-use-in-2022/)
[Making Copies of Field Widgets (Help Doc)](https://www.shortstack.com/help/making-copies-of-field-widgets/)
[List Field (Help Doc)](https://www.shortstack.com/help/list-field/)
[Field Library (Help Doc)](https://www.shortstack.com/help/field-library/)
[Category Field (Help Doc)](https://www.shortstack.com/help/category-field/)
[Upload Field (Help Doc)](https://www.shortstack.com/help/upload-field/)
---
## Form Container Widget
URL: https://www.shortstack.com/help/form-container-widget/
Category: Widgets
Plan required: All plans
Last reviewed: 2026-10-08
The Form Container Widget, in combination with Field Widgets, is used to display a form in your campaign. Visitors can use the form to submit entries. If you want to submit entries yourself, you can do so inside the Campaign Builder and use visibility settings to hide the form from the live campaign.
### Overview
[image: The Add Widgets panel with the Form Container Widget icon, a form with lines, circled in green.]
### Adding the Form Container Widget
To add the Form Container Widget to your campaign:
1. Click the Form Container icon in the Add Widgets Panel, or
2. Drag the icon into your preview area.
### Widget settings
The widget settings pop-up allows you to customize the Form Container Widget.
#### Renaming the widget
1. Click the pencil icon in the top-left corner (next to the widget name).
2. Type the new name and press Enter.
#### CSS ID
The CSS ID (starting with a #) is displayed in the top-right corner of the pop-up.
#### Customization
Navigate through the menu on the left side to adjust settings. Use the Back and Next buttons to move between sections.
When finished, click the Save and Exit button.
### List
The List section allows you to select or create the list where the form’s entries will be stored.
#### Selecting an existing list
1. Click Choose existing list...
2. In the pop-up, scroll through the lists or use the search bar to find the desired list.
3. Click the list name to select it.
4. To disconnect a selected list, click the X icon next to the list name.
#### Creating a new list
1. Click Create new list.
2. In the pop-up, fill in the following: Name Number of test entries Tags (optional)
3. Click Create to finalize.
### Entry restrictions
Control how often individuals can submit entries using the Entry Restrictions section.
#### Limit repeat entries
1. Choose a restriction method (Email Address or Login) and configure the settings: Set the restriction type (e.g., one entry per email). Add a custom error message for entrants exceeding the limit.
2. To allow multiple entries: Select ...entry every... and specify the time interval (hours or days). OR choose A maximum of... and set a total entry limit per person.
When you restrict by Email Address, Gmail addresses that differ only by dots count as the same address. For example, janedoe@gmail.com and jane.doe@gmail.com share one entry limit.
#### Maximum number of form entries
1. Enable the Maximum Entries Limit checkbox.
2. Specify the Maximum number of entries (e.g., 20 for a giveaway).
3. Add a message in the Entry limit has been reached message field.
> If multiple entries are submitted at the same time, it's possible for your limit to be exceeded by a small number. If this is not acceptable, we recommend configuring Instant Win with the Prize distribution strategy set to All at start.
Note: This limit applies to the total number of entries across all Form Container Widgets linked to the same list.
#### Bot prevention
Available on Scale plan and higher.
Enable Google reCAPTCHA to reduce spam and illegitimate entries:
1. Click the link labeled Configure in Campaign Settings → Security.
2. Click the Choose Profile button.
3. Select an existing profile, or click the Add button to connect a new set of keys.
4. Check the box for Enable Google reCAPTCHA.
5. Use the Sensitivity Level slider to adjust the strictness of the verification.
Learn more about [How to Create Google reCaptcha Keys](https://www.shortstack.com/help/how-to-create-google-recaptcha-keys/).
### Instant Win
Activate Instant Win for your campaign by enabling it in the Instant Win section. Configure Instant Win settings in the pop-up window. For detailed guidance, refer to the [Instant Win Help Doc](https://www.shortstack.com/help/instant-win/).
### Fraud Filter
Use the Fraud Filter to block suspicious entries:
- Submit patterns or filters to detect fraudulent behavior.
- Configure actions for entries meeting these criteria.
> Note: This feature is available starting on the Scale Plan. Refer to the [Fraud Filter Help Doc](https://www.shortstack.com/help/prohibit-fraudulent-and-spam-entries-with-fraud-filter-feature/) for details.
### After submit
Customize what happens after a visitor submits the form:
#### Use Action Widgets
Select Use Action Widget to show results. This is the default option.
#### Use pop-up
Show a confirmation message by selecting Use pop-up to show confirmation...
#### Redirect to another URL
Select Redirect to another URL and enter the URL to forward users after submission.
### Refer-A-friend & sharing
#### Refer-a-Friend
Available on Build plan and higher.
Enable Refer-A-Friend to let entrants earn points for referrals:
1. Check the Enable Refer-A-Friend box.
2. Set Points per referral.
3. Optional: Limit points by enabling Max points per entry.
Entrants can share referral links via autoresponder emails or by enabling sharing in the form widget.
#### Sharing
In the Sharing section, you will find a dropdown menu to select a Share Widget to share entry data. This is useful when sharing entries during voting contests or for refer-a-friend. If you do not want to share entry details, you can leave this dropdown blank.
All sharing settings can be accessed through the Share Widget.
Learn more about the [Share Widget](https://www.shortstack.com/help/share-widget/) and [About Sharing.](https://www.shortstack.com/help/about-sharing/)
### Approvals/alerts
#### Approval settings
Check Automatically approve entries to approve submissions upon receipt.
#### Email alerts
Email Alerts allow you to be notified every time an entry is submitted. Here's how:
1. Add recipient emails in the Email alerts to field.
2. Configure the Email from address and Email subject line.
3. (Optional) Include an approval link in alert emails.
Note: Due to DMARC restrictions, certain email addresses (e.g., @yahoo.com) cannot be used for the From Email Address.
### Advanced
Configure advanced features in this section:
- Form Integrations: Add or manage integrations.
- Image Editor: Enable image editing for submitted images.
- Advanced Points for Actions: Prevent duplicate actions across multiple entries.
- Submit Button: Show or hide the default Submit button.
- Form Values: Allow data to be copied to other forms within the same campaign that share identical fields. By default, this option is enabled.
### Text
Customize form text in the Text section. Modify the provided text fields to suit your campaign.
### Visibility
Control when and where the widget appears using the Visibility section.
Options include:
- Setting specific dates and times for visibility.
- Displaying the widget only in the Builder.
- Limiting visibility to certain countries.
Learn more about [Widget Visibility.](https://www.shortstack.com/help/widget-visibility/)
### Extras
[Learn about the Main Tag, CSS Classes, and Smart Labels settings here.](https://www.shortstack.com/help/widget-extras/)
### Form container styling options
When the Widget is selected, you can customize the styling of the specific widget. Some of the options include changing the background color, the maximum width of the widget, and submit button color. You will see the following areas of styling available in the [Style Panel](https://www.shortstack.com/help/getting-started-with-the-style-panel/):
- Submit Button
- Submit Messages
- Confirmation Pop-Up
- Widget
### Nesting form containers
Although you can add other widgets inside a Form Container for organizational purposes, you should not use another Form Container to do so. Instead, use the Container, Two-Column, or Three-Column Widgets to structure your campaign layout.
Nesting a Form Container inside another Form Container can cause unexpected behavior and may prevent form entries from submitting correctly.
If you accidentally nest Form Containers, an error message will appear to alert you to the issue.
### FAQs
Can I be notified every time someone submits an entry?
Yes! You can enable Email Alerts in the Form Container settings. See Approval/Alerts above.
Can I create a form with conditional logic (if/then)?
Yes, you can create a form with conditional logic. Check out our user flow on [Understanding Conditional Logic](https://www.shortstack.com/help/understanding-conditional-logic/) to see how you can use conditional logic with your form. If you have specific questions, reach out to us in support: support@shortstack.com.
### Related resources
[How to Build a Form (Video)](https://youtu.be/PU_x-2IIVrs)
[Creative Ways to Grow Your Email List (Blog)](https://www.shortstack.com/blog/creative-ways-to-grow-your-email-list/)
[Field Widget (Help Doc)](https://www.shortstack.com/help/field-widget/)
[Form Integrations (Help Doc)](https://www.shortstack.com/help/form-integrations/)
[Share Widget (Help Doc)](https://www.shortstack.com/help/share-widget/)
### FAQs
#### Can I be notified every time someone submits an entry?
Yes! You can enable Email Alerts in the Form Container settings. See Approval/Alerts above.
#### Can I create a form with conditional logic (if/then)?
Yes, you can create a form with conditional logic. Check out our user flow on [Understanding Conditional Logic](https://www.shortstack.com/help/understanding-conditional-logic/) to see how you can use conditional logic with your form. If you have specific questions, reach out to us in support: support@shortstack.com.
---
## Form integrations
URL: https://www.shortstack.com/help/form-integrations/
Category: Managing entries
Plan required: All plans
Last reviewed: 2026-10-08
Use Form Integrations to automatically send form entries to third-party services. Once an integration is enabled, all new entries are instantly submitted to the configured service.
### Overview
> **Note:** Pre-existing entries are not retroactively submitted.
### Getting there
1. In the Campaign Builder, click the Widget Settings icon (gear icon) on your Form Container.
2. Click the Integrations link on the left menu.
3. If you have saved Integration Profiles, check the box next to the profile you want to use.
4. To create a new integration, click the Add (plus) icon next to the desired integration type.
> **Note:** Legacy users may need to migrate old integrations before the Integrations tab becomes available. See Migrating Integrations below.
### Webhook integration
#### What does it Do?
A webhook passes collected data from your ShortStack form to a third-party service. While writing a custom webhook requires coding knowledge, tools like Zapier simplify the setup.
Learn more about [Setting Up a Webhook with Zapier.](https://www.shortstack.com/help/setting-up-a-webhook-with-zapier/)
#### Adding a profile
Click the Add (plus) icon to open the Webhook Profile Details pop-up and configure the following:
- Profile Name: Enter a name to identify the webhook profile.
- Profile Description (Optional): Add a description for internal clarity.
- Webhook URL: Paste the URL generated by your webhook tool (e.g., Zapier).
- Content Type: Select either application/x-www-form-urlencoded or application/json.
- Secret Key (Optional): Add a key for secure integration.
#### Field mappings
Map fields to pass data accurately to the webhook. You can add, remove, or rearrange fields as needed.
1. Click the Edit (pencil) icon next to a field to open the editing window.
2. Select your field map type: Simple Map: Maps one entry field to one output field (most common). Constant Map: Outputs the same constant value for every entry.
3. Select the ShortStack Field. Use the search and filtering functions to narrow results.
4. Enter the output field name in the space provided.
5. Click OK, then click Save to finalize your settings.
#### Adding a webhook token
If your CRM requires a specific token, follow these steps:
1. In the Field Mappings section, click Add One Field.
2. Select Set Constant in the Type dropdown.
3. Paste your token into the Constant Value field.
4. Type WebhookToken into the Output Field Name field.
5. Click OK, then Save.
### Mailchimp integration
#### What does it Do?
Automatically adds entrant details to a selected audience in your Mailchimp account, streamlining your email marketing campaigns.
> **Note:** Your form must include an Email field and a Checkbox field (for opt-ins). Missing these will display warnings during setup.
#### Adding a profile
Click the Add (plus) icon to open the Mailchimp Profile Details pop-up and configure the following:
- Mailchimp API Key: Add your API key (found under Account > Extras > API Keys in Mailchimp).
- Mailchimp Audience: Select the audience where entries will be sent.
- Choose a field for the opt-in checkbox: Select the specific checkbox field used for newsletter opt-ins.
- Send this notice to new subscribers: Select the Mailchimp notice to send to new subscribers.
- Mailchimp Tags (Optional): Map a ShortStack field to Mailchimp tags for better audience segmentation.
##### Contact mode
Use the Contact Mode dropdown to control how entries are sent to your Mailchimp account:
- Create contacts only: Adds new contacts to Mailchimp and skips entrants who already exist.
- Update contacts only: Updates existing Mailchimp contacts and does not add new ones.
- Create or update contacts: Adds new contacts and updates existing ones.
#### Field mappings
Map your ShortStack fields to your Mailchimp fields, following the same mapping steps outlined in the [Webhook section](https://www.shortstack.com/help/form-integrations/#5-adding-a-profile) above.
### HubSpot integration
#### What does it Do?
Automatically sends new form entrants to your HubSpot account as contacts. ShortStack connects to HubSpot using OAuth, so there is no need to copy or paste an API key—you simply log in to HubSpot and authorize the app.
> **Note:** Your form must include an Email field. HubSpot uses the email address to identify each contact, so the Email field is mapped automatically.
#### Adding a profile
Click the Add (plus) icon next to HubSpot to open the HubSpot Profile Details pop-up and configure the following:
- Profile Name: Enter a name to identify the HubSpot profile.
- Profile Description (Optional): Add a description for internal clarity.
- Connect Account: Click Connect Account to open the HubSpot authorization window. Sign in, select the account you want to link, then click Choose Account. Once linked, the profile displays a green Connected status. To unlink the account, click Disconnect Account.
##### Contact mode
Use the Contact Mode dropdown to control how entries are sent to your HubSpot account:
- Create contacts only: Adds new contacts to HubSpot and skips entrants who already exist.
- Update contacts only: Updates existing HubSpot contacts and does not add new ones.
- Create or update contacts: Adds new contacts and updates existing ones.
#### Field mappings
Map your ShortStack fields to your HubSpot contact properties, following the same mapping steps outlined in the Webhook section above. Use the Add One Field button to map additional fields, and the Toggle Display link to show or hide field details.
> **Note:** The Email field is mapped by default and cannot be removed, since HubSpot requires it to identify contacts.
### Klaviyo integration
#### What does it Do?
Automatically creates or updates a profile in your Klaviyo account each time someone submits your ShortStack form. Optionally add entrants to a list and subscribe them to email marketing, SMS marketing, or both. Each of these settings works on its own.
#### Adding a profile
Click the Add (plus) icon to open the Klaviyo Profile Details pop-up and configure the following:
##### General
- Profile Name: Enter a name to identify this integration profile.
- Profile Description (Optional): Add a description for internal clarity.
- Connect Account: Click Connect Account to authenticate with Klaviyo via OAuth. Once connected, the status indicator will update to confirm your account is linked.
- Profile Mode: Controls how Klaviyo profiles are created or updated on each entry submission. Create new profiles only: Adds a new Klaviyo profile for each entrant. If a profile with the same email already exists, it is not modified. Update existing profiles only: Updates a Klaviyo profile when a matching email is found. Entrants without an existing profile are not added. Create and update profiles: Creates a new profile if no match is found, or updates the existing one if there is a match.
- Add to List (Optional): Select a Klaviyo list to add the entrant to. Available after your account is connected. This setting is independent of the Email Marketing Opt-In Field — entrants can be added to a list with or without being subscribed to email marketing.
- Email Marketing Opt-In Field (Optional): Select the ShortStack form field (typically a checkbox) that captures email marketing consent. When an entrant checks this field, they are subscribed to email marketing in Klaviyo. This setting is independent of Add to List.
- SMS Marketing Opt-In Field (Optional): Choose how entrants are subscribed to SMS marketing in Klaviyo: None (default): Entrants aren't subscribed to SMS marketing. A form field: Select the ShortStack form field (typically a checkbox) that captures SMS marketing consent. Same as email: Use the same field you chose for Email Marketing Opt-In Field. One checkbox then subscribes the entrant to both email and SMS marketing. To subscribe entrants to SMS, your form must also collect a phone number, and that phone field must be mapped in Field mappings below.
> **Note:** SMS marketing must be set up in your Klaviyo account before entrants can be subscribed. In Klaviyo, go to Settings → Text Message to set your region, business details, and sending number. If you created your Klaviyo profile in ShortStack before October 8, 2026, edit it to choose an SMS option. Existing profiles default to None.
> **Note:** When authorizing the connection for the first time, you may see a Klaviyo message indicating the app has not been reviewed. This is expected — click through to authorize if you trust the source.
#### Field mappings
Use the Field Mappings section to control how your ShortStack form fields map to Klaviyo profile properties. Unlike other integrations, Klaviyo does not have a fixed set of fields. It uses a small number of built-in properties and allows everything else to be defined dynamically.
- Fields that map to Klaviyo's built-in properties (such as email, first_name, and last_name) are pre-mapped by default using Klaviyo's standard field names.
- If you collect phone numbers, map your phone field to Klaviyo's phone number property. ShortStack converts the number to the format Klaviyo requires.
- Fields marked with a gold star (★) icon will be stored as custom properties in Klaviyo — meaning they aren't pre-defined Klaviyo fields and will be created automatically on first submission.
Follow the same steps outlined in the Webhook section above to add, edit, reorder, or remove field mappings.
### Google maps integration
#### What does it Do?
Automatically suggests and populates address details as entrants type into your form's address field. This integration requires a standard Address 1 field on your form. Entrants must select a suggested address from the dropdown list to auto-fill the remaining fields.
> **Note:** A [Google Maps API key](https://developers.google.com/maps/documentation/embed/get-api-key#:~:text=Go%20to%20the%20Google%20Maps%20Platform%20%3E%20Credentials%20page.&text=On%20the%20Credentials%20page%2C%20click,your%20newly%20created%20API%20key.) is required.
#### Adding a profile
Click the Add (plus) icon to open the Google Map Profile Details pop-up and configure the following:
- Profile Name: Name your Google Maps profile.
- Profile Description (Optional): Add a description for clarity.
- API Key: Paste your Google Maps API key into the space provided.
### Migrating integrations
If you are a legacy user, you may need to migrate your previous integrations into the new version. If applicable, you will see a "This form has legacy integrations" message in the Advanced section of your Form Container Settings.
1. Click the Migrate Integrations button to open the wizard.
2. Review your displayed legacy integrations, then click Continue.
3. Configure your profiles by creating a new one or selecting an existing one, then click Continue.
4. Review the integration profiles.
5. Click Migrate the profiles.
### Troubleshooting integration issues
#### Common causes of integration errors
| Error Type | Description |
| Field Mismatches | The fields in the external service have been changed or renamed. |
| Missing Required Fields | The ShortStack form is failing to collect a field that the external service requires. |
| API/URL Changes | The external service credentials (like API keys) or webhook URLs have changed. |
| Service Downtime | The external service is temporarily down or inaccessible. |
#### Identifying errors
If entries fail to send, you can check the error logs:
1. Go to Lists in the main menu.
2. Click the list name to view your entries.
3. Look for entries marked with a Warning icon. Click the icon to view specific error details.
### Related resources
[How to Start Building an Email List (Blog Post)](https://www.shortstack.com/blog/dont-have-an-email-list-heres-how-to-start-building-one/)
[Securing Webhook Form Integrations (Help Doc)](https://www.shortstack.com/help/securing-webhook-form-integrations/)
[Setting Up a Webhook with Zapier (Help Doc)](https://www.shortstack.com/help/setting-up-a-webhook-with-zapier/)
[Adding Google Maps Address Lookup to a Form (Help Doc)](https://www.shortstack.com/help/adding-google-maps-address-lookup-to-a-form/)
---
## Fortune Wheel template
URL: https://www.shortstack.com/help/fortune-wheel-template/
Category: Building a campaign
Plan required: Scale plan
Last reviewed: 2026-02-17
The Fortune Wheel Template allows entrants to test their luck and win a prize on the wheel. This campaign is a great option for live events, in-store promotions, and as an exit-intent pop-up on your website.
### Overview
You can find the template [here](https://builder.shortstackapp.com/apps?templateId=55947) or preview it [here.](https://m.lndg.page/pG3rsK?embed=1)
This guide will cover template-specific features that are not included in our basic templates. If you need help adding widgets, editing forms, or styling your campaign, check out the [Building Campaigns section of our help docs.](https://www.shortstack.com/help/building-a-campaign/)
### Enable Instant Win
To get started with customizing this campaign, you need to enable Instant Win first.
1. Open the Form Container settings.
2. Click on the Instant Win tab.
3. Click on the text "Instant win is disabled" to enable Instant Win and edit the settings in the pop-up.
4. Enable Distribute Unique Prizes and connect an Advanced Code List (see below).
> For additional Instant Win settings and configurations, visit our [Instant Win Help Doc](https://www.shortstack.com/help/instant-win/).
#### Upload an advanced Code List
The Fortune Wheel Template uses the Advanced Code List, which consists of four columns labeled:
- code
- category
- image_url
- details
You can download the template while attaching your code list to the Instant Win, or you can download it here.
[image: The advanced code list template spreadsheet, with columns for code, category, image_url and details, and two example rows: a Grand prize code and a Consolation code.]
> Note: You do not need to use every column, but all four columns must be present for this template to work correctly.
### Configure template settings
Click the Settings button in the Category Assistant Container to open the template settings.
#### Checklist
The Checklist alerts you to any missing elements that may prevent the template from functioning. A red exclamation mark indicates an issue and a message explaining the error follows.
#### Sections
To edit the appearance of individual wheel sections, click the pencil icon on the right side. To rearrange their order, drag and drop them using the three-line (≡) icon on the left side.
When editing a section, you can customize the following:
- Prize Label
- Text Color
- Background Color - You can set a specific background color for each section or use the Section Color Generator (described below).
- Image
- Background Image - Overrides the background color if used.
Note: The Value field cannot be edited, as it is determined by the code list attached to your campaign.
#### Wheel
##### Wheel appearance
Customize the overall appearance of the wheel with the following settings:
- Wheel Height - The width scales proportionally to the height.
- Divider Color
- Background Image - For a fully customized wheel, upload a background image. This overrides all individual section backgrounds. Use an image of equal width and height to the wheel and center the first prize to the hub. Place subsequent prizes in clockwise order.
- Border Size and Color
##### Hub appearance
Adjust the size and color of the hub, or upload a custom hub image. If using an image, set the hub color to transparent.
##### Section color generator
The Section Color Generator helps you create a visually cohesive color scheme for your wheel. Start by selecting a base color in the Inspiration box, then choose a Color Scheme:
- Default - Evenly spaces hues around the 360° color wheel for a balanced palette.
- Monochromatic - Uses brightness and saturation variations of one hue for a subtle, unified look.
- Analogous - Hues adjacent to your base color for harmonious results.
- Complementary - Pairs opposing hues for strong contrast and visual impact.
- Triadic - Three evenly spaced hues for a dynamic, balanced design.
Adjust lightness and saturation as needed.
Click Use Inspiration to apply the selected color to the wheel sections, or choose Use Random Hue for a randomized color set.
##### Text appearance
Customize how the section text appears:
- Font Size
- Text Offset from Center
- Orientation – Choose Vertical or Horizontal
##### Behavior
Control how the wheel behaves when spun:
- Number of Rotations
- Spin Duration
- Spin Start and Stop – Adjust how fast the wheel starts and stops..
##### Wheel preview
Use the Preview area to see how your wheel looks and functions in real time. Test win and lose scenarios using the dropdown menu and click Preview to simulate the result.
#### Advanced
Most users won’t need to adjust these settings. If you have questions, feel free to contact our support team.
- Synchronize Wheel with Instant Win – Enabled by default.
- Stopping Delay (in seconds)
- Allow One Spin Only – Also enabled by default. You can disable this to allow multiple spins.
- Connected Widgets – The template automatically includes smart labels for the form and wheel container.
### Update winning and losing messages
To update the winning and losing messages, edit the Rich Text Widgets inside the "Win/Lose Container."
Since this template uses the Advanced Code List format, you have access to additional merge codes:
```
{{form_container.response.prize_details}}
{{form_container.response.prize_category}}

```
### Testing your campaign
Before going live, make sure to test your campaign using the Builder Preview Mode.
#### Key testing considerations
You can use the Time Filter to preview how the campaign will work once the Instant Win is active. Otherwise, all test submissions will result in a lose outcome.
While testing, it’s strongly recommended to use Test Entries mode (as opposed to Live Entries mode) to avoid the distribution of prize codes from your list. While in Test Entries mode, ShortStack will display a merge code in place of a prize code.
### Related resources
[How to Elevate Your Digital Marketing Through Gamification (Blog Post)](https://www.shortstack.com/blog/how-to-elevate-your-digital-marketing-through-gamification)
[Template Gallery (Help Doc)](https://www.shortstack.com/help/template-gallery/)
[Instant Win (Help Doc)](https://www.shortstack.com/help/instant-win/)
[Creating Win/Lose Messages for Instant Win (Help Doc)](https://www.shortstack.com/help/creating-win-lose-messages-for-instant-win/)
[All Templates (Template Gallery)](https://app.shortstack.com/manage/gallery)
---
## Free trials for paid features
URL: https://www.shortstack.com/help/free-trials-for-paid-features/
Category: Account & billing
Last reviewed: 2026-04-14
On a free trial you can test some paid features free for three days. Start one from Account Summary — click your name in the top-right of the Home page, scroll to Plan Features, and click the feature you want — then choose Start Instant 3-Day Trial. Not every paid feature can be trialed.
### Free trials for paid features
> Note: Not all paid features can be trialed.
### Account summary
1. Click your name in the top-right corner of the Home page and select Account Summary.
2. Scroll to the Plan Features section to see available trials.
3. Click the feature name you'd like to try. A pop-up will prompt you to start a trial or upgrade to a paid plan.
4. Click Start Instant 3-Day Trial and confirm by clicking Continue.
### While building campaigns
As you build campaigns, some features may appear with green borders indicating they're paid features.
1. Click the green button or text to try a feature.
2. A pop-up will prompt you to start a trial or upgrade to a paid plan.
3. Click Start Instant 3-Day Trial and confirm by clicking Continue.
### During/after the trial
You can check the remaining trial time in the Plan Features section of your Account Summary.
Trials last for three days. After that, the feature will be automatically disabled unless you upgrade.
### Related resources
[ShortStack Templates](https://www.shortstack.com/templates/)
[Upgrading Your Plan (Help Doc)](https://www.shortstack.com/help/upgrading-your-plan/)
[Plan & Billing (Help Doc)](https://www.shortstack.com/help/plan-and-billing/)
[Understanding Campaign View and Entry Limits (Help Doc)](https://www.shortstack.com/help/understanding-campaign-view-and-entry-limits/)
---
## Frequently asked questions
URL: https://www.shortstack.com/help/frequently-asked-questions/
Category: Getting help
Last reviewed: 2026-08-18
As many as you need! ShortStack does not limit the number of live campaigns you can run at one time. Your account limitations are based on how many stored entries you have. We do have limitations on Hashtag Contests. Refer to our pricing page for more information.
### How many marketing campaigns can I run at one time?
### Can I reward entrants for sharing on social media?
There isn’t an option to reward entrants simply for sharing. However, we offer a refer-a-friend feature that rewards participants who share your contest with higher chances to win. When a referrer shares their referral URL, and someone else clicks the URL and enters the contest, the referrer receives referral points/extra entries.
[Learn about ShortStack's Refer-a-Friend feature.](https://www.shortstack.com/help/refer-a-friend/)
### Is ShortStack compliant with Facebook and Instagram rules and regulations?
ShortStack provides all the tools you need to comply with online social media contest platforms’ rules and regulations. However, you should ensure you are aware of the rules and regulations of each platform when creating your campaign.
Learn about [Sweepstakes Rules for Instagram, Facebook, TikTok, Snapchat, and More](https://www.shortstack.com/help/sweepstakes-rules-for-instagram-facebook-tiktok-snapchat-and-more/).
### How do I create a video or photo upload contest?
ShortStack is a great platform for video contests. If you want to display the entries on your campaign, you’ll need a contest-builder platform like ShortStack. Alternatively, if you run a hashtag contest, entrants can simply include the video in their Instagram entry post.
[Check out our Photo Upload Contest,](https://m.shortstack.page/XQLJSb) or our [Video Upload Contest.](https://m.lndg.page/Vm2PW7?embed=1)
### How do I moderate UGC from social media contests and promotions?
Entry moderation can occur in a couple of ways. When entries are collected in your ShortStack list, you can set up a review process where you must “allow” an entry before it displays on your ShortStack campaign. We also offer digital rights management tools for hashtag contests.
[Learn about rights management.](https://www.shortstack.com/help/rights-management-for-instagram/)
### Can I test campaigns or show them to my client/colleagues before publishing?
Yes, we have a few options. For those with access to your ShortStack account, they can view the campaign in your Campaign Builder. Or, you can publish your campaign as a standalone landing page and share the URL with the clients or colleagues that don’t have access to your account. If you’re using our [Teams feature](https://www.shortstack.com/help/shortstack-for-teams/), you can share campaigns with the account admin.
### Can I customize ShortStack templates?
ShortStack’s templates are professionally designed and fully customizable to fit your campaign and match your company’s branding. You can update the text and images, change the form fields, update the appearance using our [Style Panel](https://www.shortstack.com/help/getting-started-with-the-style-panel/) and the [CSS Editor](https://www.shortstack.com/help/css-editor/) (available on the Business Plan and higher plans), and much more.
### I won't run a contest for a few months, can I pause payments until I need ShortStack again?
Yes! We offer the ability to pause payments for up to 3 months. This is a great option if you run a contest every other month, or are taking a break for one reason or another. During the pause period, you will not have access to any part of ShortStack (entries, emails, the builder, etc), but you will not be charged. Your data will be stored and ready for your return!
[Learn about Downgrading, Pausing, and Deleting Your Account.](https://www.shortstack.com/help/downgrading-pausing-cancelling-your-subscription-and-deleting-your-account/)
### How do I select a winner for my contest or giveaway?
After you collect entries, you can choose a winner a few different ways. For entries collected into a ShortStack list, you could use our random entry selector to choose a random winner. For contests where entrants submitted a photo, video or text entry, you could determine a winner through public voting or ask a panel of judges (usually people at your company) to choose a winner.
[Learn How to Select Winners.](https://www.shortstack.com/help/how-to-select-winners/)
### Do I have to know how to code in order to use ShortStack?
Nope! ShortStack allows you to create online campaigns without the use of code. Use our widgets and [Style Panel](https://www.shortstack.com/help/getting-started-with-the-style-panel/) to build and style your campaign. If you happen to be code-savvy, then you can use our Code Widget and CSS Editor to customize your campaign further.
### How long does it take to create a campaign?
The time it takes to build a campaign depends on the type of campaign you plan to create. We offer professionally designed templates and themes to help save you time. This means that building something simple, like a giveaway, might only take a few minutes to set up. As a best practice, we suggest giving yourself plenty of time to create, test and promote your campaign before it goes live.
### Related resources
[Billing FAQs](https://www.shortstack.com/help/billing-faqs/)
[Downgrading, Pausing, and Deleting your Account](https://www.shortstack.com/help/downgrading-pausing-cancelling-your-subscription-and-deleting-your-account/)
[Additional Help Resources (Help Doc)](https://www.shortstack.com/help/additional-help-resources/)
---
## Getting started with the Style Panel
URL: https://www.shortstack.com/help/getting-started-with-the-style-panel/
Category: Building a campaign
Plan required: All plans
Last reviewed: 2026-02-13
The Style Panel is a powerful customization tool within the Campaign Builder that allows you to make design adjustments to your campaign’s theme.
### Overview
> Note: If you’re looking for recommended dimensions for images in your campaign, check out our [Image Size Guide](https://www.shortstack.com/help/image-size-guide/) for detailed information.
### Accessing the Style Panel
New Campaigns or Templates:
The Style Panel will be open by default when starting with a new template or campaign.
Toggling the Panel:
Open and close the Style Panel by clicking the Style Panel icon in the toolbar on the left.
### Using the Style Panel
The default view of the Style Panel displays settings for the current theme under the Theme tab. You can navigate to different sections by clicking the blue dropdown.
#### Theme settings
General: Adjust settings for the entire campaign.
Widget-Specific Settings: Customize all widgets of a specific type.
#### Individual widget settings
To make changes that only apply to a specific widget:
1. Click the widget in the Edit Widgets Panel.
2. A new tab, This [Widget Type], will appear in the Style Panel.
3. Open the relevant section to make your edits.
4. Click Save to lock in changes.
> Undo/Redo Changes: Use the undo and redo icons at the bottom of the Style Panel to reverse or reapply changes.
#### Clear settings
For a Specific Widget: Click Clear # Settings for this Widget to reset changes.
For All Settings: Click Revert to Default to clear all Style Panel customizations.
### Hierarchy of changes
General Settings: Applied across the entire campaign.
Widget-Level Changes: Override general settings for specific widgets.
Custom CSS: Overrides both general and widget-specific changes.
### Creating themes
Save your campaign’s design elements as a theme for reuse:
1. Click the three dots menu in the bottom-right of the Style Panel.
2. Select Add to My Themes to save the current design.
> Note: Changes made to themes are unique to individual campaigns.
To save a modified theme as a new version, give it a different name.
To override an existing theme, save it with the same name.
### Glossary of design terms
#### Inherit
Refers to the default theme style set in the General settings. Selecting Inherit reverts the element to the default style.
#### Margins vs. padding
Margin: The outer space around a widget.
Padding: The inner space within a widget.
[image: WebD2: Understanding the Box Model in CSS]
### Style Panel layout
The Style Panel includes several sections to customize your campaign's appearance. Here’s an overview of the most commonly used sections:
#### Colors
Color Swatches: Add custom colors to ensure consistency throughout the campaign.
#### Page
Background Color: Set the background color for the entire campaign.
Background Image: Upload an image (recommended size: at least 1800 pixels wide).
Background Repeat: Choose between no repeat, horizontal repeat, vertical repeat, or tile.
Background Size/Position: Adjust the size and alignment of the background image.
Padding: Customize the space around widgets (default: 0.1px).
Maximum Content Width: Set the width for content in your campaign.
#### Text
Text Color: Change the color of all text.
Font Size: Adjust the default font size (default: 16 pts).
Alignment: Choose from inherit, left, center, right, or justified.
Font Family: Select a font supported on all browsers.
Font Weight: Adjust the boldness of text.
Line Height: Customize vertical spacing between lines.
#### Links
Text Color: Change link text color.
Font Size/Family/Weight: Adjust the size, font, and boldness of link text.
Text Underline/Case: Add styles like underline or change text to uppercase/lowercase.
Hover Effects: Set hover-specific text color, boldness, and underline effects.
#### Buttons
Customize all buttons, including those in the Voting Widget.
Background/Text Colors: Set background and text colors.
Padding: Adjust spacing around button text.
Borders: Add styles, colors, sizes, and rounded corners.
Hover Effects: Customize hover-specific background, text, border, and shadow colors.
#### Widget defaults
Apply universal settings for all widgets.
Background/Margins/Padding: Adjust colors and spacing.
Borders: Add styles, colors, sizes, and rounded corners.
Box Shadow: Add shadows behind widgets.
#### Pop-ups
Background Color/Opacity: Customize the area behind pop-up windows.
Content Background: Adjust the color within the pop-up.
Padding: Customize spacing between content and the pop-up border.
Text: Adjust color, size, font, and boldness of text in pop-ups.
#### Pop-ups with forms
Specific settings for pop-up windows with forms.
Label Text/Error Text/Help Text: Adjust colors and font sizes.
Form Field Styling: Change border and background colors, input text colors, and hover effects.
Button Styling: Customize form buttons, including hover effects.
### Related resources
[Campaign Builder Appearance (Help Doc)](https://www.shortstack.com/help/)
[Tips & Recipes (Help Doc)](https://www.shortstack.com/help/tips-and-recipes/)
[Theme Selector (Help Doc)](https://www.shortstack.com/help/theme-selector/)
[CSS Editor (Help Doc)](https://www.shortstack.com/help/css-editor/)
---
## Giveaway Calendar template
URL: https://www.shortstack.com/help/giveaway-calendar-template/
Category: Building a campaign
Plan required: All plans
Last reviewed: 2026-02-13
The Giveaway Calendar is the ultimate set-it-and-forget-it campaign. You choose the number of days of giveaways you want to run and let the campaign run its course.
### Overview
You can find the template [here](https://builder.shortstackapp.com/apps?templateId=55480) or preview it [here.](https://m.lndg.page/wr1nl5?embed=1)
This guide will cover template-specific features that are not included in our basic templates. If you need help adding widgets, editing forms, or styling your campaign, check out the [Building Campaigns section of our help docs.](https://www.shortstack.com/help/building-a-campaign/)
### Settings
The template settings are located in the Container Widget labeled Calendar Assistant.
Click on the blue settings button to open the settings pop-up.
#### Checklist
The Checklist alerts you to any missing elements that may prevent the template from functioning properly.
A red exclamation mark indicates an issue, along with a message explaining the error.
#### Prizes
To edit a prize, click on the pencil icon on the right-hand side.
You can adjust the following prize settings:
- ID – A unique identifier for each prize (not displayed to the public).
- Name – The name of the prize (displayed to the public).
- Description (Optional)
- Locked and Unlocked Images – Add unique images for the locked and unlocked tiles. If you want the same locked/unlocked images or color scheme, you can adjust that in the Locked and Unlocked Containers (see below).
- Pop-up Image (Optional)
To delete a prize, click on the trash can icon.
To add a new prize, click on the blue "Add New" button at the bottom of the prize list.
#### Dates
In this section, you can set the start date, add blackout dates (e.g., weekends or holidays), and adjust the prize order.
The total number of giveaway dates will be displayed in the Summary Calendar on the right.
> Tip: The giveaway period is based on the number of prizes.
> For example, if you want the contest to run for 5 days, make sure you have 5 prizes to give away.
#### Display
You can edit the calendar’s display settings in this section.
##### Desktop calendar display
Adjust the number of columns and control the space between each tile.
##### Mobile responsiveness
Set the screen size trigger for mobile view and choose the number of columns displayed for mobile users.
##### Calendar tile text display
Choose to show the date, day index, or hide text. Additionally, you can adjust the vertical padding of the text inside each tile.
##### Pop-up display size
Adjust the maximum size of the pop-up for the calendar giveaway.
#### Behavior
In this section, you can:
- Lock past days, preventing entrants from entering giveaways for previous days.
- Choose whether to copy the prize name or prize ID to the form.
- Select if you want either the name of the prize or the prize ID. This will track which entrants signed up for specific prizes.
### Locked and unlocked template widgets
You can apply global settings by editing the Locked and Unlocked Widgets in the Style Panel.
##### How to edit locked & unlocked containers
1. Select the Locked or Unlocked Rich Text Widget.
2. Navigate to the Style Panel on the right side of the Builder.
3. Adjust settings available, such as font type, font colors, background image, etc.
> Note: These widgets will not be visible on your published campaign; they only control the styling.
### Related resources
[How to Test a Campaign (Video)](https://youtu.be/vvCvNL7lJx0?si=zRFYehBDIvIdRzTw)
[Running a Giveaway? Why “No Purchase Necessary” is Necessary (Blog Post)](https://www.shortstack.com/blog/running-a-giveaway-why-no-purchase-necessary-is-necessary-2)
[Choosing Winners in the Giveaway Calendar Template (Help Doc)](https://www.shortstack.com/help/choosing-winners-in-the-giveaway-calendar-template/)
[Template Gallery (Help Doc)](https://www.shortstack.com/help/template-gallery/)
[Widget Visibility (Help Doc)](https://www.shortstack.com/help/widget-visibility/)
[All Templates (Template Gallery)](https://app.shortstack.com/manage/gallery)
---
## Granting Page permissions using Meta Business Suite
URL: https://www.shortstack.com/help/granting-page-permissions-using-meta-business-suite/
Category: Social media tools
Last reviewed: 2026-10-08
The Page admin invites the person in Meta Business Suite with partial access and Community activity turned on. Use the email on their personal Facebook account: ShortStack only sees Pages that account can access. That access lets them import Facebook or Instagram comments and run Instagram hashtag feeds.
Page access lets someone use ShortStack's Facebook and Instagram tools on a Page they don't own, without the owner sharing a password or giving full admin access. It's what you need to:
- Import comments from a [Facebook post](https://www.shortstack.com/help/how-to-import-comments-and-reactions-from-facebook/) or an [Instagram post](https://www.shortstack.com/help/how-to-import-comments-from-an-instagram-post/).
- Run an [Instagram hashtag feed](https://www.shortstack.com/help/creating-and-managing-an-instagram-hashtag-feed/) for the Page's Instagram account.
### Before you invite
- Use the email on the person's personal Facebook account. This is the email they log in to Facebook with. ShortStack connects through a personal Facebook account, not a business account, and only sees the Pages that account can access. An invite sent to a work email that isn't their Facebook login won't give ShortStack access.
- Facebook and Instagram need Page access; YouTube doesn't. You can import comments from any YouTube video without anyone's permission.
- Promoted (ad) posts also need ad account access. Page access isn't enough to import comments from a promoted post. See Get access to promoted (ad) posts.
- The Instagram account must be a Business account linked to the Facebook Page. ShortStack reaches Instagram through the Page. See [Troubleshooting issues with feeds and Facebook/Instagram importer tools](https://www.shortstack.com/help/troubleshooting-issues-with-feeds-and-facebook-instagram-importer-tools/) to check the account type and the link.
### Grant access (Page admin)
You need admin access to the business in Meta Business Suite to invite someone.
1. Open [Meta Business Suite](https://business.facebook.com/latest/home).
2. Click Settings in the bottom-left corner.
3. The People tab opens by default. If it doesn't, click People in the menu on the left.
4. Click Invite People next to the search bar.
5. Enter the email address on the person's personal Facebook account.
6. Click Next, then turn on Basic under Partial access. This keeps your Page secure while giving limited access.
7. Under Select Assets, check the Page or Pages they need. Selecting a Page also connects its linked Instagram account, so you don't need to select Instagram separately.
8. Turn on Community activity. This lets them review, respond to and remove comments, which ShortStack's feeds and comment imports need.
9. Click Invite. A message confirms the invitation was sent.
10. Click Done.
[image: Meta Business Suite permissions. On the left a Page is selected; on the right, under Partial access, the Community activity toggle is switched on while Content, Messages and calls, Ads, Insights and Revenue remain off.]
The person shows as Pending in your People list until they accept the invitation.
> **Note:** You can edit or remove the access you granted at any time from the same People list in Meta Business Suite.
### Accept the invitation (invited person)
1. Open the invitation email from Facebook in the inbox for your personal Facebook email. It names the business that invited you. If you can't find it, check your spam folder.
2. Click Get Started.
3. Enter your name in the Your Name field. This is the name shown in Meta Business Suite. Click Continue.
4. Confirm the business details and click Continue.
5. Click Accept Invitation.
6. Enter your Facebook password and click Submit.
Meta Business Suite opens with the client's business.
### Get access to promoted (ad) posts
To import comments from a promoted post or ad, you also need access to the ad account that ran it. Page access isn't enough. An admin of the Business Manager that owns the ad account does this:
1. Open Meta Business Settings.
2. Click Accounts, then Ad accounts.
3. Select the ad account.
4. Click Assign people.
5. Add the person to grant access to, and choose View performance. That access level is enough.
### Check that access worked
Before you go to ShortStack, confirm the access is really there:
- Look for the Page in your Facebook profile menu. Log in to your personal Facebook account and click your profile picture in the top-right corner. The client's Page should be listed in the drop-down. If it isn't, you don't have access yet.
- Ask the admin for a screenshot of your permissions. It should show your personal Facebook account, not a different email, with Community activity turned on and no pending invite.
### Connect the Page in ShortStack
1. Stay logged in to your personal Facebook account in the same browser you use for ShortStack.
2. Start the feed wizard (on the Dashboard, click Get Social, then Collect Posts) or a social import (Manage > Lists > Social Import, then choose Facebook or Instagram).
3. If ShortStack asks you to connect Facebook, sign in and allow every permission it asks for.
4. Choose the client's Page, not your own business Page. If it isn't listed, click Refresh Pages.
> **Important:** In the feed wizard, select your client's Instagram account; it should be listed. To reach a client's Instagram account, your personal Facebook account needs the right permissions in the client's Meta Business Suite. If the account isn't listed, work through the next section.
### If the Page doesn't appear
#### The Page isn't in your Facebook profile menu
The invite went to an email that isn't your personal Facebook login, or it hasn't been accepted. Ask the admin to invite you again using the email on your personal Facebook account, then accept it from that inbox. Check spam if it doesn't arrive.
#### The Page is in your Facebook menu but not in ShortStack
Reset ShortStack's connection to Facebook:
1. On Facebook, click your profile picture, then Settings & privacy > Settings.
2. In the menu on the left, scroll to the Your activity section and click Business Integrations.
3. Find ShortStack and click Remove.
4. Stay logged in to Facebook, but log out of ShortStack and log back in.
5. Start the feed wizard or social import again. This reinstalls ShortStack on your Facebook account, so you don't need to add it back yourself.
6. Back on Business Integrations (refresh the page if it's still open), click View and edit next to ShortStack and check that every setting slider is on.
If the Page still doesn't show, log out of both Facebook and ShortStack, clear your browser's cookies and cache, log back in to your personal Facebook account, and try again.
> **Tip:** Facebook moves its settings around. If you can't find Business Integrations, search your Facebook settings for it.
#### Meta shows a permission error
If Facebook shows this message while you connect the Page:
"{permission}" is required in order to give this app access to the permissions you selected.
You don't have access to the ad account behind the promoted post or ad you're importing from. Follow Get access to promoted (ad) posts, then connect again.
#### The Page still won't load
- Click Refresh Pages and try again later. Sometimes the problem is on Meta's side and clears up on its own.
- Send support a diagnostics report. Close the wizard, click Help in the bottom-left corner of ShortStack, then Submit Diagnostics, and click Submit Diagnostics Report. You don't need to add a comment. The report shows support whether your Facebook connection has the permissions it needs. Then contact support@shortstack.com.
#### If nothing else works
- Have the client create the feed. The client logs in to your ShortStack account in their own browser, while logged in to their own Facebook account, and sets up the feed. Once it's running, you can manage entries, pick winners and run the rest of the campaign from your login. This means sharing your ShortStack login with the client; there's no separate login or team-member access you can give them for this.
- Run the feed without the @mention requirement. For a hashtag feed, connect your own Instagram Business account and leave require @mention off. ShortStack imports every public post with the hashtag, and you check for the client's @mention yourself when you pick winners. You can't limit entries per user or use [Rights Management](https://www.shortstack.com/help/rights-management-for-instagram/) on these entries. This doesn't help with comment imports, which always need access to the Page.
### FAQs
Do I need to make the person an admin of my Page?
No. Partial access with the Community activity permission is enough for ShortStack's comment imports and hashtag feeds, so you don't have to hand over full admin access.
Should I connect ShortStack with my own Facebook account or my client's?
Your own personal Facebook account, once the client has given it access to their Page. ShortStack lists every Page that account can reach, and you choose the client's Page from that list. The client only needs to log in if you use the fallback described under If the Page doesn't appear.
Can I import comments from a partner brand's post?
Not without access to that brand's Page. Facebook and Instagram imports only work on Pages your Facebook account can access, so the partner would need to grant you access the same way. YouTube is different — you can [import comments from any YouTube video](https://www.shortstack.com/help/how-to-import-comments-from-a-youtube-video/).
Can I publish my campaign to our Facebook Page?
No. Facebook no longer allows direct publishing to Facebook Pages. Publish the campaign as a landing page or embed it on your website instead.
What happens if the admin removes my access?
The admin can edit or remove your access at any time in Meta Business Suite. Once access is removed, ShortStack can no longer read that Page, so feeds and imports for it stop. ShortStack shows an error message and emails you; it sends an email whenever a feed stops, for any reason.
### Related resources
[Troubleshooting Issues with Feeds and Facebook/Instagram Importer Tools (Help Doc)](https://www.shortstack.com/help/troubleshooting-issues-with-feeds-and-facebook-instagram-importer-tools/)
[List of Facebook Pages is Empty or Missing Pages (Help Doc)](https://www.shortstack.com/help/list-of-facebook-pages-is-empty-or-missing-pages/)
[Creating and Managing an Instagram Hashtag Feed (Help Doc)](https://www.shortstack.com/help/creating-and-managing-an-instagram-hashtag-feed/)
[How to Import Comments and Reactions from Facebook (Help Doc)](https://www.shortstack.com/help/how-to-import-comments-and-reactions-from-facebook/)
### FAQs
#### Do I need to make the person an admin of my Page?
No. Partial access with the Community activity permission is enough for ShortStack's comment imports and hashtag feeds, so you don't have to hand over full admin access.
#### Should I connect ShortStack with my own Facebook account or my client's?
Your own personal Facebook account, once the client has given it access to their Page. ShortStack lists every Page that account can reach, and you choose the client's Page from that list. The client only needs to log in if you use the fallback described under If the Page doesn't appear.
#### Can I import comments from a partner brand's post?
Not without access to that brand's Page. Facebook and Instagram imports only work on Pages your Facebook account can access, so the partner would need to grant you access the same way. YouTube is different — you can [import comments from any YouTube video](https://www.shortstack.com/help/how-to-import-comments-from-a-youtube-video/).
#### Can I publish my campaign to our Facebook Page?
No. Facebook no longer allows direct publishing to Facebook Pages. Publish the campaign as a landing page or embed it on your website instead.
#### What happens if the admin removes my access?
The admin can edit or remove your access at any time in Meta Business Suite. Once access is removed, ShortStack can no longer read that Page, so feeds and imports for it stop. ShortStack shows an error message and emails you; it sends an email whenever a feed stops, for any reason.
---
## Hashtag Feeds Manager
URL: https://www.shortstack.com/help/hashtag-feeds-manager/
Category: Account & billing
Plan required: All plans
Last reviewed: 2026-08-14
The Hashtag Feeds Manager houses all the feeds you've set up to collect entries using hashtags on Instagram. You'll also find a button to create a new feed.
### Getting there
From the Dashboard:
1. Click Manage in the navigation menu.
2. Select Hashtag Feeds from the options.
If Favorited, simply click Hashtag Feeds in the side navigation menu.
> **Note:** Favoriting adds a direct link to the Hashtag Feeds Manager to the navigation menu. To favorite, click the heart icon next to the "Hashtag Feeds" title. Favorites are stored in your browser, so you’ll need to re-establish them when using a different browser or computer.
### Layout
New Feed Button: Create a new email by clicking this button in the top-right corner.
Learn more about [Creating a New Hashtag Feed.](https://www.shortstack.com/help/creating-and-managing-an-instagram-hashtag-feed/)
#### Feeds
Your feeds are displayed on the right-hand side. Each info pane includes:
- Feed Name: Clicking the name opens the feed in the Feed Editor for editing.
- Creation Date: The date the feed was created.
- Number of Entries: The total entries in the feed.
- List Name: The name of the list storing the entries. Clicking this opens the list in the Entries Manager.
- Hashtag(s): The hashtags collecting entries for the feed.
- Status: The feed's current status (Running or Ended).
- Last Refreshed: The last time the feed was refreshed.
- Updated X Days Ago shows when the campaign was last edited. Hovering your cursor over this text reveals the exact day the campaign was last updated.
- The Campaign ID is visible when you hover your cursor over the campaign. Clicking the number automatically copies it to your clipboard.
Hovering over a feed name displays an edit icon. Click this to rename the feed. After typing the new name, click the blue checkmark to save it.
Clicking the feed icon on the right opens the feed in the Feed Editor. Next to it, a dropdown menu provides more feed management options.
#### Additional feed options
Click the arrow next to a feed to access these options:
Add Entry: If a feed misses a post, you can manually add it. Select Add Entry, then enter the Instagram post URL and description. Specify if the post contains a video, then click Import Entry.
Permissions (Available on Max Plan): Grant access to specific feeds for team members.
Learn more about [ShortStack for Teams](https://www.shortstack.com/help/shortstack-for-teams/).
Delete: Select Delete to remove a feed. This doesn't delete the entries or the list created by the feed—only the feed itself.
> **Note:** Deleting feeds is permanent. Ensure you no longer need a feed before proceeding.
### Filtering, searching, and sorting
#### Searching
Use the Search field in the top-left to find feeds using keywords or phrases. The Tag field allows you to find feeds by tags associated with them.
#### Filtering
Filter feeds by their status:
- Running
- Ended
- Error (Feeds in this category usually need the associated Facebook account reauthorized.)
#### Sorting
Click the Sort button near the feed count to organize feeds by:
- Recently Edited
- Status
- Recently Refreshed
- Newest
- Oldest
### Bulk actions
Click and drag your cursor across the screen to quickly select multiple Feeds. When selecting one or more Feeds, the top bar provides additional actions.
Tag: Add tags to multiple feeds or view existing tags. Type tags separated by commas, press Enter, then click Save.
Delete: Permanently delete selected feeds. You’ll be prompted to confirm by typing a short phrase.
> **Note:** Deleting emails is irreversible. Always ensure you no longer need the email before deleting it.
### Related resources
[The Ultimate Guide to Hashtag Contests (Blog Post)](https://www.shortstack.com/blog/the-ultimate-guide-to-hashtag-contests/)
[How to Run a Successful UGC Hashtag Contest (Blog Post)](https://www.shortstack.com/blog/how-to-run-ugc-hashtag-contests/)
[Entries Manager (Help Doc)](https://www.shortstack.com/help/entries-manager/)
[Creating and Managing an Instagram Hashtag Feed (Help Doc)](https://www.shortstack.com/help/creating-and-managing-an-instagram-hashtag-feed/)
[Troubleshooting Issues with Feeds and Facebook/Instagram Importer Tools (Help Doc)](https://www.shortstack.com/help/troubleshooting-issues-with-feeds-and-facebook-instagram-importer-tools/)
---
## How long will it take to get help?
URL: https://www.shortstack.com/help/how-long-will-it-take-to-get-help/
Category: Getting help
Last reviewed: 2026-08-18
At ShortStack, we strive to respond to support emails as quickly as possible—typically within a few hours of receiving them. However, complex requests requiring developer-level expertise may take longer to address.
### Support availability
#### Response times
Weekends and Holidays: Response times may be longer during these periods, but rest assured, our team is working hard to assist you.
Email Support: Available 24/7.
### Live chat support
Our Live Chat Support is generally available during the following hours:
- Monday – Thursday: 8:45 AM – 4:00 PM (PST)
- Friday: 8:45 AM – 12:00 PM (PST)
> **Note:** Live chat hours are subject to change without notice.
### Phone support and training
While we do not provide phone support, we’re happy to help new users with training or a demo.
Schedule a call with our team using our [calendar](https://calendly.com/d/zzm-354-z68/shortstack-sales-call) for a personalized session.
### Additional support resources
Explore our extensive library of self-service resources:
Help Documentation: Step-by-step guides to get you started.
Video Library: Available on [ShortStack's YouTube channel](https://www.youtube.com/channel/UCDpyTn3xHk6Ps_5kmTwfD6Q).
### Related resources
[Frequently Asked Questions](https://www.shortstack.com/help/frequently-asked-questions/)
[Additional Help Resources](https://www.shortstack.com/help/additional-help-resources/)
[How to Access Your Browser's Console Log (Help Doc)](https://www.shortstack.com/help/how-to-access-your-browsers-console-log/)
---
## How to access your browser's console log
URL: https://www.shortstack.com/help/how-to-access-your-browsers-console-log/
Category: Getting help
Last reviewed: 2026-08-18
When a bug or error occurs with your ShortStack campaign, Feed, or Comment Import, the support team might ask for a screenshot of your browser's console log.
### Overview
A console log is a diagnostic tool built into your web browser that provides a real-time record of events, errors, and messages related to a website's internal operations. Below you will find instructions for each of the most common browsers.
### Google Chrome
[image: chrome-console-image]
#### Via settings menu
1. Click the three-dot menu (⋮) in the top-right corner.
2. Go to More Tools > Developer Tools.
3. Select the Console tab.
#### Via inspect shortcut
1. Right-click anywhere on the page and select Inspect.
2. Switch to the Console tab at the top of the panel.
### Mozilla Firefox
[image: firefox-console-image]
#### Via settings menu
1. Click the hamburger menu (☰).
2. Select More Tools > Web Developer Tools, then select the Console tab.
#### Via inspect shortcut
1. Right-click anywhere on the page and select Inspect.
2. Click on Console.
### Apple Safari
[image: safari-console-image]
1. Go to Safari, then click on Settings (or Preferences).
2. Select the Advanced tab.
3. Check the box Show features for web developers (or "Show Develop menu in menu bar").
4. Once enabled, go to Develop in the top menu bar and select Show JavaScript Console.
### Microsoft edge
[image: Edge-console-image]
1. Click the three-dot menu (⋯).
2. Select More Tools > Developer Tools, then click the Console tab.
### Keyboard shortcuts
| Browser | Windows/Linux | macOS |
| Chrome | Ctrl + Shift + J | Cmd + Option + J |
| Edge | Ctrl + Shift + J or F12 | Cmd + Option + J |
| Firefox | Ctrl + Shift + K | Cmd + Option + K |
| Safari | - | Cmd + Option + C |
### Related resources
[Troubleshooting Embed Issues](https://www.shortstack.com/help/troubleshooting-embed-issues/)
[Troubleshooting Issues with Feeds and Facebook/Instagram Importer Tools](https://www.shortstack.com/help/troubleshooting-issues-with-feeds-and-facebook-instagram-importer-tools/)
---
## How to add an age gate
URL: https://www.shortstack.com/help/how-to-add-an-age-gate/
Category: Building a campaign
Plan required: All plans
Last reviewed: 2026-02-17
When running a contest involving age-sensitive content or offering age-restricted prizes, it's essential to verify visitors' ages before granting access.
### Overview
ShortStack allows you to set up an age gate that permits entry to visitors of appropriate age while displaying a message or redirecting those who do not meet the age requirement.
You can create your own Age Gate, or use our template:[Age Verification Gated Giveaway.](https://builder.shortstack.com/apps?templateId=55075) This guide will cover how to create your own Age Gate.
### Hiding your content
To restrict access to specific content based on age, utilize widget visibility settings to hide the content behind an age verification form.
#### Group content into a container widget
1. In the Edit Widgets Panel, hold down Shift and click each widget you wish to hide; selected widgets will be highlighted.
2. Click the Add to Container icon at the bottom of the panel to move the selected widgets into a single container.
3. (Optional) For better organization, rename the Container to something like "Verified Age Container."
#### Set container visibility to hidden
1. Click the Edit icon on the new Container Widget.
2. In the pop-up, select Visibility on the left.
3. Enable the Starts Hidden option.
4. Click Save & Exit.
### Adding your underage message
Provide a clear message to inform underage visitors that they do not qualify for your contest.
1. Add a Rich Text Widget.
2. In the Widget Settings, enter your message (e.g., "Sorry, you must be 21 to enter.").
3. In the Visibility section, enable the Starts Hidden option.
4. Click Save & Exit.
5. (Optional) For better organization, rename the widget to something like "Underage Text."
### Build your age form
Create a form to collect visitors' birthdates and determine their eligibility.
1. Add a Form Container Widget.
2. Connect it to a new list to keep birthdate submissions separate from contest entries.
3. In the After Submit tab, ensure the Use other widgets... option is selected.
4. Rename the Form Container to "Age Verification" to avoid confusion with other forms in your campaign.
5. Click Save & Exit.
6. Add a Field Widget to the Form Container you created in step 1.
7. Choose the Custom Field type Date, then click Next.
8. Configure Date Field Settings, select the desired date layout, and add a field label.
9. In the Validation subsection, set a year range from the Early 1900s (to accommodate all potential submissions) to within the last year or two.
10. Click Save & Exit.
### Create of-age action
Set up an action to display your campaign to visitors who meet the age requirement.
1. Add an Action Widget to your campaign.
2. Click the blue + button under WHEN.
3. Select the Age Verification Form Container, then, in the event section, select is successfully submitted.
4. Click Save.
5. Click the blue + button under AND IF.
6. Select the Date Field, and the event dropdown to is before the last.
7. Specify the number of years (e.g., 21 years for a 21+ age requirement).
8. Click Save.
9. Click blue + button under THEN.
10. In the Widget subsection, select the Container Widget housing your hidden campaign content.
11. In the Actions section on the right, choose Show.
12. Click Save.
13. Click the blue + button under THEN, again.
14. Select your Age Verification Form Container.
15. Choose Hide to conceal the form after submission, maintaining a clean campaign appearance.
16. Click Save.
17. Click Save & Exit.
### Create underage action
Set up an action to display your campaign to visitors who meet the age requirement.
1. Add new Action Widget into your campaign.
2. Click the blue + button under WHEN.
3. Select the Age Verification Form Container, then, in the event section, select is successfully submitted.
4. Click Save.
5. Click the blue + button under AND IF.
6. Select the Date Field, and the event dropdown to is after the last.
7. Specify the number of years (e.g., 21 years for a 21+ age requirement).
8. Click Save.
9. Click the blue + button under THEN.
10. In the Widget subsection, select the Rich Text Widget housing your hidden underage message.
11. In the Actions section on the right, choose Show.
12. Click Save.
13. Click the blue + button under THEN, again.
14. Select your Age Verification Form Container.
15. Choose Hide to conceal the form after submission, maintaining a clean campaign appearance.
16. Click Save.
17. Click Save & Exit.
18. Switch to Preview mode in the Campaign Builder to test.
### Related resources
[Restricting Entries Using reCaptcha (Help Doc)](https://www.shortstack.com/help/restricting-entries-using-recaptcha/)
[Understanding Conditional Logic (Help Doc)](https://www.shortstack.com/help/understanding-conditional-logic/)
[Entry Restrictions (Help Doc)](https://www.shortstack.com/help/entry-restrictions/)
---
## How to collect voter data
URL: https://www.shortstack.com/help/how-to-collect-voter-data/
Category: Building a campaign
Plan required: Launch plan
Last reviewed: 2026-02-26
When running a campaign with public voting, you may want to collect voter information, such as emails and names, for future use. This guide explains how to set up your campaign to collect voter data effectively.
### Overview
We have two templates that help collect voter data.
- [Vote to Enter](https://m.lndg.page/D8VcmJ?embed=1) - This requires voters to vote first, then enter the form.
- [Enter to Vote](https://m.lndg.page/dv3mnd?embed=1) - This requires voters to enter the form first, then they can access voting.
> Need help setting up voting? Refer to our [Entry Display Widget](https://www.shortstack.com/help/entry-display-widget/) and [How to Set Up Voting](https://www.shortstack.com/help/how-to-set-up-voting/) help docs.
### Step 1: set up a form to collect voter data
This form is only for collecting voter information and is not connected to the Entry Display Widget displaying voteable entries.
1. Add a Form Container to your campaign.
2. Create a New List for this form and name it something like "Voter Form".
3. Add Field Widgets for the data you want to collect (e.g., name, email).
4. Adjust Form Settings as needed.
> For in-depth form help, please refer to our [Form Container](https://www.shortstack.com/help/form-container-widget/) and [Field Widget](https://www.shortstack.com/help/field-widget/) help docs.
### Step 2: adjust the Entry Display Widget vote button visibility
1. Open the Entry Display Widget settings.
2. Navigate to the Voting Tab.
3. Click on Advanced Settings and enable Start with vote button hidden.
### Step 3: add an Action Widget
1. Add an Action Widget to your campaign.
2. Set the WHEN condition to "Form is successfully submitted".
3. Set the THEN action to "Show vote button".
Once set up, this process gates voting, ensuring that every voter provides an email address before casting a vote.
### What about Email Login?
If you enable email login voting restriction, emails are not collected—they are only used for the verification process.
### Related resources
[How to Set Up Voting (Video)](https://youtu.be/DhEqob1LQ-E)
[Setting up Email Login for Voting (Help Doc)](https://www.shortstack.com/help/setting-up-email-login-for-voting/)
[How to Set Up Voting (Help Doc)](https://www.shortstack.com/help/how-to-set-up-voting/)
[Entry Display Widget (Help Doc)](https://www.shortstack.com/help/entry-display-widget/)
---
## How to create ADA-compliant campaigns
URL: https://www.shortstack.com/help/how-to-create-ada-compliant-campaigns/
Category: Contest rules & compliance
Plan required: All plans
Last reviewed: 2026-03-05
Ensuring your campaign is accessible for individuals with disabilities is essential for its success. ShortStack's Campaign Builder offers various methods to help you create ADA-compliant campaigns. This guide outlines the steps to make your campaign more accessible.
### Use live text wherever possible
#### What is live Text?
Live text is any text that can be read by screen readers, typically entered in text fields in the following Widgets:
- Rich Text Widget: Text typed directly into the widget.
- Button Text: Labels and calls to action.
- Field Widget Text: Labels and placeholder text.
- Share Widget Prompt Text: Text encouraging users to share your campaign.
#### Best practices
Use live text wherever possible instead of embedding text in images. While images enhance visual impact, live text ensures accessibility for visually impaired users.
### Add alt image text
#### Why alt image text is important
Alt image text provides a description of images for screen readers, enabling visually impaired users to understand the content.
#### How to add alt image text
1. Open the Image Widget settings.
2. Navigate to the Options section.
3. Add a descriptive Alt Image Text for your image.
Note: Alt image text is not available for background images. To ensure accessibility, avoid placing text in background images. Instead, use a Rich Text Widget to add text over a simple background.
### Update main tags
#### Why main tags matter
By default, all widgets are assigned the