( ! ) Deprecated: strip_tags(): Passing null to parameter #1 ($string) of type string is deprecated in /home/jlahijani/Sites/goodui.org/site/templates/_og.php on line 13 Call Stack #TimeMemoryFunctionLocation 10.0000465256{main}( ).../index.php:0 20.07642252264ProcessWire\Wire->__call( $method = 'execute', $arguments = [0 => TRUE] ).../index.php:55 30.07642252264ProcessWire\WireHooks->runHooks( $object = class ProcessWire\ProcessPageView { }, $method = 'execute', $arguments = [0 => TRUE], $type = ??? ).../Wire.php:484 40.07652252680ProcessWire\Wire->_callMethod( $method = '___execute', $arguments = [0 => TRUE] ).../WireHooks.php:952 50.07652252680ProcessWire\ProcessPageView->___execute( $internal = TRUE ).../Wire.php:416 60.07982265600ProcessWire\ProcessPageView->renderPage( $page = class ProcessWire\Page { public $id = 1015; public $name = 'patterns'; public $parent = '/'; public $template = 'patterns'; public $numChildren = 129; public $title = 'Patterns'; public $meta_description = ''; public $data = ['title' => 'Patterns', 'meta_description' => ''] }, $request = class ProcessWire\PagesRequest { } ).../ProcessPageView.module:114 70.10002299760ProcessWire\Wire->__call( $method = 'render', $arguments = [] ).../ProcessPageView.module:184 80.10002299760ProcessWire\WireHooks->runHooks( $object = class ProcessWire\Page { public $id = 1015; public $name = 'patterns'; public $parent = '/'; public $template = 'patterns'; public $numChildren = 129; public $title = 'Patterns'; public $meta_description = ''; public $data = ['title' => 'Patterns', 'meta_description' => ''] }, $method = 'render', $arguments = [], $type = ??? ).../Wire.php:484 90.10012301720ProcessWire\Wire->__call( $method = 'renderPage', $arguments = [0 => class ProcessWire\HookEvent { public $data = [...] }] ).../WireHooks.php:1060 100.10012301720ProcessWire\WireHooks->runHooks( $object = class ProcessWire\PageRender { public $data = ['clearCache' => 1] }, $method = 'renderPage', $arguments = [0 => class ProcessWire\HookEvent { public $data = [...] }], $type = ??? ).../Wire.php:484 110.10012302136ProcessWire\Wire->_callMethod( $method = '___renderPage', $arguments = [0 => class ProcessWire\HookEvent { public $data = [...] }] ).../WireHooks.php:952 120.10012302136ProcessWire\PageRender->___renderPage( $event = class ProcessWire\HookEvent { public $data = ['object' => class ProcessWire\Page { ... }, 'method' => 'render', 'arguments' => [...], 'return' => NULL, 'replace' => FALSE, 'options' => [...], 'id' => 'Page:100.0:render', 'cancelHooks' => FALSE, 'when' => 'after'] } ).../Wire.php:416 130.10132302680ProcessWire\Wire->__call( $method = 'render', $arguments = [] ).../PageRender.module:575 140.10132302680ProcessWire\WireHooks->runHooks( $object = class ProcessWire\TemplateFile { public $data = ['wire' => class ProcessWire\ProcessWire { ... }, 'classLoader' => class ProcessWire\WireClassLoader { ... }, 'hooks' => class ProcessWire\WireHooks { ... }, 'config' => class ProcessWire\Config { ... }, 'notices' => class ProcessWire\Notices { ... }, 'urls' => class ProcessWire\Paths { ... }, 'log' => class ProcessWire\WireLog { ... }, 'sanitizer' => class ProcessWire\Sanitizer { ... }, 'datetime' => class ProcessWire\WireDateTime { ... }, 'files' => class ProcessWire\WireFileTools { ... }, 'mail' => class ProcessWire\WireMailTools { ... }, 'database' => class ProcessWire\WireDatabasePDO { ... }, 'db' => class ProcessWire\DatabaseMysqli { ... }, 'cache' => class ProcessWire\WireCache { ... }, 'modules' => class ProcessWire\Modules { ... }, 'procache' => class ProcessWire\ProCache { ... }, 'fieldtypes' => class ProcessWire\Fieldtypes { ... }, 'fields' => class ProcessWire\Fields { ... }, 'fieldgroups' => class ProcessWire\Fieldgroups { ... }, 'templates' => class ProcessWire\Templates { ... }, 'pages' => class ProcessWire\Pages { ... }, 'permissions' => class ProcessWire\Permissions { ... }, 'roles' => class ProcessWire\Roles { ... }, 'users' => class ProcessWire\Users { ... }, 'user' => class ProcessWire\User { ... }, 'session' => class ProcessWire\Session { ... }, 'input' => class ProcessWire\WireInput { ... }, 'buster' => class ProcessWire\ProCacheBuster { ... }, 'process' => class ProcessWire\ProcessPageView { ... }, 'page' => class ProcessWire\Page { ... }, 'options' => [...]] }, $method = 'render', $arguments = [], $type = ??? ).../Wire.php:484 150.10142304032ProcessWire\Wire->_callMethod( $method = '___render', $arguments = [] ).../WireHooks.php:952 160.10142304032ProcessWire\TemplateFile->___render( ).../Wire.php:413 170.72703246776require( '/home/jlahijani/Sites/goodui.org/site/templates/_main.php ).../TemplateFile.php:340 180.72783277320include( '/home/jlahijani/Sites/goodui.org/site/templates/_og.php ).../_main.php:64 190.72963276040strip_tags( $string = NULL ).../_og.php:13 " />

Reach Higher Conversions Faster
With Patterns That Win Repeatedly in A/B Tests.
And Avoid The Ones That Lose.


Hi, I’m Jakub and our goal here is to identify repeatable patterns with the highest probabilities of working for you.
To do this we run experiments with trusted companies open to testing similar ideas and then sharing their results.
So far we have identified 127 patterns based on 411 tests (for members only) and adding 5+ new trustworthy tests each month.
Some patterns are better than others. Some have no effect. Some are negative. We publish everything.

34 losing tests
220 insignificant tests
157 winning tests

We're building this platform for you because a/b tests take precious time and we want you to reach higher conversions faster.
- Sincerely, Jakub Linowski, GoodUI Founder



See Pricing

Patterns Are Actively Corrected With New Tests
As We Constantly Test With Trustworthy Companies:

Fast Forward Your Conversion Rates With
Access To All 127 Patterns Based On 411 Tests

Total sample size of all tests is based on 80,578,301 visitors - that's a lot of testing time to do on your own.

  • Annual Billing SAVE 17%
  • Monthly Billing
Company-Wide

Order Now

$360 / mo
Billed yearly at $4320$5184


Unlimited User Accounts

License to use the data by unlimited users.


Access to 411+ searchable a/b tests


Sort patterns and tests by impact


Access to all templates

Team

Order Now

$120 / mo
Billed yearly at $1440$1728


5 User Accounts

License to use the data by up to 5 users.


Access to 411+ searchable a/b tests


Sort patterns and tests by impact


Access to all templates

Solo

Order Now

$60 / mo
Billed yearly at $720$864


1 User Account

License to use the data by 1 user.


Access to 411+ searchable a/b tests


Sort patterns and tests by impact


Access to all templates

All Plans Come With

Access To All Tests

Get access to all published tests to guide your own design & experiments.

5+ New Tests Each Month

Get 5 new A/B tests each month as we obtain new test results.

Cancel Anytime

If you find that GoodUI Premium isn't for you, you can cancel at any time.

100% Secure Payment with Visa

Companies That Trust GoodUI Patterns & Tests For Higher Conversions

Customer Logos