If-So Dynamic Content Personalization
Personalize any content! Add or replace content according to the visitorβs profile or interaction with the site.
No coding required!
FOUR WAYS TO CREATE DYNAMIC CONTENT
- Conditional triggers β works with every page builder β Watch
- Conditional Gutenberg blocks β Watch
- Conditional Elementor elements β Watch
- Dynamic Keyword Insertion (DKI) shortcodes β Watch
Watch a short video (1:36):
WHY IF-SO?
- Simple to use β No coding is required
- Works with any page builder
- 100% compatible with all caching plugins (no need to disable the cache)
- A simple way to improve engagement and conversion rates
- New! Conditional Gutenberg Blocks and Elementor Widgets
β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦
HOW IT WORKS
All page builder users:
- Create a trigger
- Select a condition and set the personalized content version
- Optional β create more dynamic versions and set the default content
- Paste the shortcode wherever you want to display the content
Every time a page with the shortcode is loaded, one of the content versions will be displayed accordingly.
Gutenberg and Elementor users
- Select the block or element
- On the side menu, select the condition to display the block/element
β More about conditional Elementor Elements >>
β More about conditional Gutenberg Blocks >>
β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦
WHICH CONDITIONS CAN BE SET WITH IF-SO?
If-So offers a wide range of conditions. Here are examples of our most implemented conditions.
Most popular
- Geolocation β Show location-based content (examples >>)
- Google Ads β Show content based on the userβs search term on Google Ads or related to the Facebook Ad the user was referred from (examples >>)
- UTM Parameters β Show dynamic content based on UTM parameters or other query strings (examples >>)
Geolocation
- City
- State
- Country
- Continent
- Time zone
User Behavior
- Browser Language
- Returning Visitor (pro)
- Device Type
- Logged-in User
- Days Since User Registration (pro)
- Pages Visited (pro)
- Referral Source (pro)
- Browser Type (pro)
- Operating System (pro)
- Number of Version Views (pro)
Date & Time
- Start & End Date (pro)
- Schedule (pro)
- Day of the Month (pro)
Marketing & Advertising
- Dynamic Link (pro)
- Page URL (pro)
- UTM Parameters (pro)
- Google Ads / Facebook Ads (pro)
WooCommerce
- Products in the Cart (pro)
- Products Purchased (pro)
- Units in Stock (pro)
- Total Spent (pro)
- Average Order Value (pro)
- Customer Details (pro)
Integrations (pro)
- WooCommerce Subscriptions
- WooCommerce Memberships
- MemberPress
- WishList Member
- WP Job Manager
- LearDash
- Easy Digital Downloads
- AffiliateWP
- Weglot
β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦
Built-in stats
Get clear insights into your content performance! See real-time results with a built-in analytics system β how many times each version was displayed and how it affected the conversion rate.
β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦
THE EXTRA OPTIONS THAT MADE If-So THE #1 PERSONALIZATION PLUGIN
If-So is more than just an If-Then personalization solution. We consistently add new features so that no matter what your need is, you will be able to achieve it with If-So.
Audiences (segments)
Assign users into predefined audiences based on the userβs interaction with the site and then show content based on the userβs audience.
Learn more >>
User self-selection form:
Allow users to select the content they will see by assigning themselves to an audience (segment).
Learn more >>
Conditional pop-ups
Create pop-ups that will be displayed based on any If-So condition.
Learn more >>
Custom user profile fields (for logged-in users)
Create a new field in the userβs profile, assign a value to that field, and show content based on the value.
Learn more >>
Dynamic content from CSV
Create and manage thousands of dynamic content versions directly from a CSV file.
Learn more >>
β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦
DYNAMIC KEYWORD INSERTION (DKI)
The Dynamic Keyword Insertion (DKI) option allows you to display values using shortcodes:
* The userβs location: country, state, city, or continent
* A value of a query string parameter
* The user name
* An event time β calculated according to the user time zone
And more⦠for all DKI shortcodes >>
Examples for Dynamic Keyword Insertion shortcodes:
Userβs Country
Display the userβs location: country, city, state, continent, or time zone.
[ifsoDKI type='geo' show='country']
More Geolocation DKI shortcode options >>
Query String DKI
Display the value of any query string.
[ifsoDKI type="querystring" parameter="YOUR-PARAMETER" fallback="Your default value (optional)"]
More Geolocation DKI shortcode options >>
Auto-Local Time Display
Show an event time calculated according to the userβs time zone.
[ifsoDKI type='time' show='user-geo-timezone-sensitive' time='04/25/2022 08:00' format='n/j/o, G:i']
| Domain | Exposures | Headers | Last Checked |
|---|---|---|---|
| s*n*b*r*r*o*s.com (WP 6.9.4) | B | 2026-05-02 20:29:38 | |
| s*n*b*r*r*o*s*s*a*s.com (WP 6.9.4) | B | 2026-05-02 20:29:38 | |
| s*n*t*a*y*o*m*t*c*e*t*r.com | F | 2026-05-02 19:32:22 | |
| m*v*r*v*l*e.com | F | 2026-05-02 19:24:53 | |
| c*o*s*n*p*i*t.nl (WP 6.9.4) | F | 2026-05-02 18:51:23 | |
| u*c*u.com (WP 6.9) | A | 2026-05-02 18:15:36 | |
| g*c*p*r*.com (WP 6.9.4) | F | 2026-05-02 18:10:41 | |
| a*c*s*.c*n*e*e*o*u*i*n.film (WP 6.9.4) | F | 2026-05-02 18:05:33 | |
| t*e*r*g*n*l*o*e*m*v*m*n*.c*.uk (WP 6.9.4) | F | 2026-05-02 18:00:46 | |
| f*a*c*i*i*g*i*e*b*c*.org | F | 2026-05-02 18:00:40 | |
| n*v*g*t*n*p*y*r*h*l*e*g*s.com | F | 2026-05-02 17:53:35 | |
| l*c*a*l.fr (WP 6.9.4) | F | 2026-05-02 16:44:49 | |
| p*n*r*e.no (WP 6.9.4) | F | 2026-05-02 16:31:58 | |
| e*e*t*o*i*s.ca | F | 2026-05-02 15:56:27 | |
| s*a*p*0.com | F | 2026-05-02 15:34:59 | |
| s*m*t*i*b*u*t.com (WP 6.9.4) | F | 2026-05-02 15:23:03 | |
| d*l*a*a.com | F | 2026-05-02 15:09:02 | |
| d*l*i*e*z*b*r*o.it (WP 6.5.8) | C | 2026-05-02 15:07:28 | |
| b*i*d*o*n*a*i*n*e*a*r.com | F | 2026-05-02 15:03:31 | |
| m*u*t*i*s*o*t*c*u*.com | F | 2026-05-02 14:41:50 | |
| v*l*a*o*e*i*n.com | F | 2026-05-02 14:12:43 | |
| n*u*s*a*i*g.com (WP 6.9.4) | F | 2026-05-02 14:02:31 | |
| n*u*.com (WP 6.9.4) | F | 2026-05-02 14:02:31 | |
| s*m*e*n*.com | F | 2026-05-02 13:53:05 | |
| m*u*t*i*c*m*u*i*y*a*k.com | A | 2026-05-02 13:28:08 | |
| n*t*r*c*n*e*.com | F | 2026-05-02 13:04:09 | |
| f*c*r*l*n*.com (WP 6.9.4) | F | 2026-05-02 12:48:45 | |
| u*i*o*w.eu (WP 6.9.4) | C | 2026-05-02 12:44:26 | |
| l*p*u*e*.q*.ca | F | 2026-05-02 12:36:16 | |
| f*o*s*l*t*o*s.ca | F | 2026-05-02 12:00:46 | |
| a*l*g*t*r*a*c*t*a*.net (WP 6.9.4) | C | 2026-05-02 11:47:44 | |
| m*y*w*n*e*a*t*r.c*.uk | C | 2026-05-02 11:41:04 | |
| f*u*t*u*f*e*l*n*i*g.com (WP 6.9.4) | F | 2026-05-02 11:37:38 | |
| l*h.net | F | 2026-05-02 11:25:59 | |
| b*s*.bg | F | 2026-04-26 06:58:16 | |
| b*i*g*s*o*e*i*e*s*l*b.c*.uk | F | 2026-04-25 06:19:24 | |
| c*.t*a*c*n*.com | F | 2026-04-24 16:53:48 | |
| c*o*e*p*i*s.c*.uk | F | 2026-04-23 16:32:49 | |
| t*n*l.net | D | 2026-04-23 14:29:34 | |
| e*p*r*-*z*r*s*i*.ru | F | 2026-04-23 02:49:59 | |
| o*o*o.ai | F | 2026-04-23 01:55:07 | |
| c*i*n*s.i*s*g*t*q*a*e*.com | F | 2026-04-23 01:55:06 | |
| f*u*z*-*a*i*o.fr (WP 6.8.2) | D | 2026-04-22 15:31:34 |