Recherche avancée

Médias (91)

Autres articles (112)

  • Soumettre améliorations et plugins supplémentaires

    10 avril 2011

    Si vous avez développé une nouvelle extension permettant d’ajouter une ou plusieurs fonctionnalités utiles à MediaSPIP, faites le nous savoir et son intégration dans la distribution officielle sera envisagée.
    Vous pouvez utiliser la liste de discussion de développement afin de le faire savoir ou demander de l’aide quant à la réalisation de ce plugin. MediaSPIP étant basé sur SPIP, il est également possible d’utiliser le liste de discussion SPIP-zone de SPIP pour (...)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

  • Ajouter notes et légendes aux images

    7 février 2011, par

    Pour pouvoir ajouter notes et légendes aux images, la première étape est d’installer le plugin "Légendes".
    Une fois le plugin activé, vous pouvez le configurer dans l’espace de configuration afin de modifier les droits de création / modification et de suppression des notes. Par défaut seuls les administrateurs du site peuvent ajouter des notes aux images.
    Modification lors de l’ajout d’un média
    Lors de l’ajout d’un média de type "image" un nouveau bouton apparait au dessus de la prévisualisation (...)

Sur d’autres sites (2894)

  • Apostrophe issue with FFmpeg

    1er mars 2024, par Rohan Molinillo

    I'm working on a company's project which is vue.js.
There are also code parts in php.
It uses FFmpeg to create a video from multiple videos.
On each video, there is a text type subtitle.
Each text is retrieved from a .txt file
But I have a problem with apostrophes.

    


    If in the subtitle is stored like this ( I'm here ) in the txt file, on the video there will be written ( Im ).
The apostrophe is removed and the rest of the text too ( here ) will not be displayed.

    


    I'm new to php and ffmpeg, I've been on this problem for almost 3 weeks.

    


    I share the php code with you.

    


    <?php

declare(strict_types=1);

array_shift($argv); // remove script name in $argv[0]

$parameters = array_reduce($argv, function ($carry, $arg) {
    $tokens = explode('=', $arg);
    $carry[$tokens[0]] = $tokens[1];
    return $carry;
}, []);

$projectPath = $parameters['projectPath'];
$musicPath = $parameters['musicPath'];

$fontPath = getcwd() . "/public/fonts/cobol/Cobol-Bold.ttf";
$logoPath = getcwd() . "/public/images/saintex.jpg";
$carnetLogoPath = getcwd() . "/public/images/CarnetTitre.jpg";

// Adding descriptions for each clip and fade in and fade out filters
$clipsToDescribe =  glob("$projectPath/*.webm");
$clipFrameRate = (int) shell_exec("cd $projectPath && ffprobe -v error -select_streams v -of default=noprint_wrappers=1:nokey=1 -show_entries stream=r_frame_rate $clipsToDescribe[0]");
$clipFrameRate = $clipFrameRate > 60 ? 30 : $clipFrameRate;

foreach ($clipsToDescribe as $key => $clipToDescribe) {
    $clipIndex = $key + 1;
    $clipFrames = (int) shell_exec("cd $projectPath && ffprobe -v error -select_streams v:0 -count_packets -show_entries stream=nb_read_packets -of csv=p=0 $clipToDescribe");
    $clipDuration = (float) ($clipFrames / $clipFrameRate) - 0.5;
    file_put_contents("$projectPath/clip{$clipIndex}_desc.txt", addslashes($parameters["clip{$clipIndex}_desc"]));
    shell_exec("cd $projectPath && ffmpeg -i $clipToDescribe -vf 'drawtext=fontfile=$fontPath: textfile=clip{$clipIndex}_desc.txt: fontcolor=white: fontsize=46: box=1: boxcolor=black@0.5: boxborderw=5: x=(w-text_w)/2: y=(h-text_h-50): fix_bounds=true, fade=t=in:st=0:d=0.3,fade=t=out:st=$clipDuration:d=0.3' -b:v 3000K -b:a 192K clip{$clipIndex}.webm");
}
array_map('unlink', glob("$projectPath/*desc.txt"));

shell_exec("cd $projectPath && ffmpeg -t 2 -f lavfi -i color=c=black:s=1280x720 -r 30 blank.webm");
shell_exec("cd $projectPath && ffmpeg -i blank.webm -i $carnetLogoPath -filter_complex '[0:v][1:v] overlay=(main_w/2)-(overlay_w/2):(main_h/2)-(overlay_h/2)' -pix_fmt yuv420p -c:a copy logo.webm");



$workshop = $parameters["workshop_type"];
$title = $parameters["title"];
shell_exec("cd $projectPath && ffmpeg -f lavfi -i color=size=1280x720:duration=3:rate=30:color=black -vf 'drawtext=text=$workshop:fontfile=$fontPath:fontcolor=white:fontsize=46:x=(w-text_w)/2:y=(h-text_h)/2, drawtext=text=$title:fontfile=$fontPath:fontcolor=white:fontsize=46:x=(w-text_w)/2:y=((h-text_h)/2)+lh+5' opening.webm");
unlink("$projectPath/blank.webm");

$videosFile = "file 'logo.webm'\n";
$videosFile .= "file 'opening.webm'\n";{
    file_put_contents("$projectPath/project_desc.txt", $parameters["project_desc"]);
    shell_exec("cd $projectPath && ffmpeg -f lavfi -i color=size=1280x720:duration=3:rate=30:color=black -vf 'drawtext=fontfile=$fontPath:fontsize=46:fontcolor=white:x=(w-text_w)/2:y=(h-text_h)/2:textfile=project_desc.txt' project_desc.webm");
    unlink("$projectPath/project_desc.txt");
    $videosFile .= "file 'project_desc.webm'\n";
} 
if(array_key_exists("participants", $parameters)) {
    file_put_contents("$projectPath/participants.txt", "Participants :\n" . $parameters["participants"]);
    shell_exec("cd $projectPath && ffmpeg -f lavfi -i color=size=1280x720:duration=2:rate=30:color=black -vf 'drawtext=fontfile=$fontPath:fontsize=46:fontcolor=white:x=(w-text_w)/2:y=(h-text_h)/2:textfile=participants.txt' participants.webm");
    unlink("$projectPath/participants.txt");
}

$videos =  glob("$projectPath/clip*.webm");
foreach($videos as $video) {
    if($video != "originalVideos") {
        $videosFile .= "file ". "'{$video}'\n";
    }
} 
if(array_key_exists("participants", $parameters)) {
    $videosFile .= "file '$projectPath/participants.webm'";
}
array_map('unlink', glob("$projectPath/*webm.txt"));
file_put_contents("$projectPath/videosFile.txt", $videosFile);
if($musicPath == "/_musics/") {
    echo(shell_exec("cd $projectPath && ffmpeg -f concat -safe 0 -i videosFile.txt -b:v 10000K -crf 20 -b:a 192K output.webm"));
} else {
    echo(shell_exec("cd $projectPath && ffmpeg -f concat -safe 0 -i videosFile.txt -b:v 10000K -crf 20 -b:a 192K assembled.webm && ffmpeg -i assembled.webm -i ../..$musicPath -filter_complex ' [1:0] apad ' -shortest -y -b:v 3000K -b:a 192K output.webm"));
}


    


    I tried many things but each time there were errors.
I think I didn't implement the code properly.

    


    I share you the error

    


            [09:21:02] RECEIVED EVENT: videoRequest
{ Error: Command failed: php ./public/src/generate.php projectPath='/home/rohan/Documents/dodoc2/_projects/its-a-test' musicPath='/_musics/classic.mp3' clip1_name='' clip2_name='' clip3_name='' clip4_name='' clip5_name='' clip1_desc='It's a first test' clip2_desc='It's a second test' clip3_desc='It's a third test' clip4_desc='It's a fourth' clip5_desc='It's a last test' project_desc='' workshop_type='Atelier Robotique' title='It's a test' participants='Molinillo Rohan
'
PHP Warning:  Undefined array key 1 in /home/rohan/carnet-numerique/public/src/generate.php on line 9
PHP Warning:  Undefined array key 1 in /home/rohan/carnet-numerique/public/src/generate.php on line 9
PHP Warning:  Undefined array key 1 in /home/rohan/carnet-numerique/public/src/generate.php on line 9
PHP Warning:  Undefined array key 1 in /home/rohan/carnet-numerique/public/src/generate.php on line 9
PHP Warning:  Undefined array key 1 in /home/rohan/carnet-numerique/public/src/generate.php on line 9
PHP Warning:  Undefined array key 1 in /home/rohan/carnet-numerique/public/src/generate.php on line 9
ffmpeg version 5.1.1-1ubuntu2.1 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 12 (Ubuntu 12.2.0-3ubuntu1)
  configuration: --prefix=/usr --extra-version=1ubuntu2.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libglslang --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librist --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --disable-sndio --enable-pocketsphinx --enable-librsvg --enable-libmfx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-libplacebo --enable-shared
  libavutil      57. 28.100 / 57. 28.100
  libavcodec     59. 37.100 / 59. 37.100
  libavformat    59. 27.100 / 59. 27.100
  libavdevice    59.  7.100 / 59.  7.100
  libavfilter     8. 44.100 /  8. 44.100
  libswscale      6.  7.100 /  6.  7.100
  libswresample   4.  7.100 /  4.  7.100
  libpostproc    56.  6.100 / 56.  6.100
Input #0, matroska,webm, from '/home/rohan/Documents/dodoc2/_projects/its-a-test/video-20230404-091933-682.webm':
  Metadata:
    encoder         : QTmuxingAppLibWebM-0.0.1
  Duration: N/A, start: -0.001000, bitrate: N/A
  Stream #0:0(eng): Video: vp8, yuv420p(progressive), 1280x720, SAR 1:1 DAR 16:9, 1k tbr, 1k tbn (default)
  Stream #0:1(eng): Audio: opus, 48000 Hz, stereo, fltp (default)
Stream mapping:
  Stream #0:0 -> #0:0 (vp8 (native) -> vp9 (libvpx-vp9))
  Stream #0:1 -> #0:1 (opus (native) -> opus (libopus))
Press [q] to stop, [?] for help
[libvpx-vp9 @ 0x55952c183000] v1.12.0
Output #0, webm, to 'clip1.webm':
  Metadata:
    encoder         : Lavf59.27.100
  Stream #0:0(eng): Video: vp9, yuv420p(tv, bt470bg/unknown/unknown, progressive), 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 3000 kb/s, 1k fps, 1k tbn (default)
    Metadata:
      encoder         : Lavc59.37.100 libvpx-vp9
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
  Stream #0:1(eng): Audio: opus, 48000 Hz, stereo, flt, 192 kb/s (default)
    Metadata:
      encoder         : Lavc59.37.100 libopus
frame=  229 fps= 11 q=12.0 Lsize=    2786kB time=00:00:07.52 bitrate=3034.7kbits/s speed=0.377x    
video:2601kB audio:181kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.175036%
PHP Warning:  Undefined array key "clip2_desc" in /home/rohan/carnet-numerique/public/src/generate.php on line 29
PHP Fatal error:  Uncaught TypeError: addslashes(): Argument #1 ($string) must be of type string, null given in /home/rohan/carnet-numerique/public/src/generate.php:29
Stack trace:
#0 /home/rohan/carnet-numerique/public/src/generate.php(29): addslashes()
#1 {main}
  thrown in /home/rohan/carnet-numerique/public/src/generate.php on line 29

    at ChildProcess.exithandler (child_process.js:275:12)
    at emitTwo (events.js:126:13)
    at ChildProcess.emit (events.js:214:7)
    at maybeClose (internal/child_process.js:925:16)
    at Socket.stream.socket.on (internal/child_process.js:346:11)
    at emitOne (events.js:116:13)
    at Socket.emit (events.js:211:7)
    at Pipe._handle.close [as _onclose] (net.js:554:12)
  killed: false,
  code: 255,
  signal: null,
  cmd: 'php ./public/src/generate.php projectPath=\'/home/rohan/Documents/dodoc2/_projects/its-a-test\' musicPath=\'/_musics/classic.mp3\' clip1_name=\'\' clip2_name=\'\' clip3_name=\'\' clip4_name=\'\' clip5_name=\'\' clip1_desc=\'It\'s a first test\' clip2_desc=\'It\'s a second test\' clip3_desc=\'It\'s a third test\' clip4_desc=\'It\'s a fourth\' clip5_desc=\'It\'s a last test\' project_desc=\'\' workshop_type=\'Atelier Robotique\' title=\'It\'s a test\' participants=\'Molinillo Rohan\n\'' }


    


  • 5 Top Google Optimize Alternatives to Consider

    17 mars 2023, par Erin — Analytics Tips

    Google Optimize is a popular conversion rate optimization (CRO) tool from Alphabet (parent company of Google). With it, you can run A/B, multivariate, and redirect tests to figure out which web page designs perform best. 

    Google Optimize seamlessly integrates with Google Analytics (GA). It also has a free tier. So many marketers chose it as their default A/B testing tool…until recently. 

    Google will sunset Google Optimize by 30 September 2023

    Starting from this date, Google will no longer support Optimize and Optimize 360 (premium edition). All experiments, active after this date, will be paused automatically and you’ll no longer have access to your historical records (unless these are exported in advance).

    The better news is that you still have time to find a Google Optimize alternative — and this post will help you with that. 

    Disclaimer : Please note that the information provided in this blog post is for general informational purposes only and is not intended to provide legal advice. Every situation is unique and requires a specific legal analysis. If you have any questions regarding the legal implications of any matter, please consult with your legal team or seek advice from a qualified legal professional. 

    Best Google Optimize Alternatives 

    Google Optimize was among the first free A/B testing apps. But as with any product, it has some disadvantages. 

    Data updates happen every 24 hours, not in real-time. A free account has caps on the number of experiments. You cannot run more than 5 experiments at a time or implement over 16 combinations for multivariate testing (MVT). A premium version (Optimize 365) has fewer usage constraints, but it costs north of $150K per year. 

    Google Optimize has native integration with GA (of course), so you can review all the CRO data without switching apps. But Optimize doesn’t work well with Google Analytics alternatives, which many choose to use for privacy-friendly user tracking, higher data accuracy and GDPR compliance. 

    At the same time, many other conversion rate optimization (CRO) tools have emerged, often boasting better accuracy and more competitive features than Google Optimize.

    Here are 5 alternative A/B testing apps worth considering.

    Adobe Target 

    Adobe Target Homepage

    Adobe Target is an advanced personalization platform for optimising user and marketing experiences on digital properties. It uses machine learning algorithms to deliver dynamic content, personalised promotions and custom browsing experiences to visitors based on their behaviour and demographic data. 

    Adobe Target also provides A/B testing and multivariate testing (MVT) capabilities to help marketers test and refine their digital experiences.

    Key features : 

    • Visual experience builder for A/B tests setup and replication 
    • Full factorial multivariate tests and multi-armed bandit testing
    • Omnichannel personalisation across web properties 
    • Multiple audience segmentation and targeting options 
    • Personalised content, media and product recommendations 
    • Advanced customer intelligence (in conjunction with other Adobe products)

    Pros

    • Convenient A/B test design tool 
    • Acucate MVT and MAB results 
    • Powerful segmentation capabilities 
    • Access to extra behavioural analytics 
    • One-click personalisation activation 
    • Supports rules-based, location-based and contextual personalisation
    • Robust omnichannel analytics in conjunction with other Adobe products 

    Cons 

    • Requires an Adobe Marketing Cloud subscription 
    • No free trial or freemium tier 
    • More complex product setup and configuration 
    • Steep learning curve for new users 

    Price : On-demand. 

    Adobe Target is sold as part of Adobe Marketing Cloud. Licence costs vary, based on selected subscriptions and the number of users, but are typically above $10K.

    Google Optimize vs Adobe Target : The Verdict 

    Google Optimize comes with a free tier, unlike Adobe Target. It provides you with a basic builder for A/B and MVT tests, but none of the personalisation tools Adobe has. Because of ease-of-use and low price, other Google Optimize alternatives are better suited for small to medium-sized businesses, doing baseline CRO for funnel optimisation. 

    Adobe Target pulls you into the vast Adobe marketing ecosystem, offering omnipotent customer behaviour analytics, machine-learning-driven website optimisation, dynamic content recommendations, product personalisation and extensive reporting. The app is better suited for larger enterprises with a significant investment in digital marketing.

    Matomo A/B Testing

    Matomo A/B testing page

    Matomo A/B Testing is a CRO tool, integrated into Matomo. All Matomo Cloud users get instant access to it, while On-Premise (free) Matomo users can purchase A/B testing as a plugin

    With Matomo A/B Testing, you can create multiple variations of a web or mobile page and test them with different segments of their audience. Matomo also doesn’t have any strict experiment caps, unlike Google Optimize. 

    You can split-test multiple creative variants for on-site assets such as buttons, slogans, titles, call-to-actions, image positions and more. You can even benchmark the performance of two (or more !) completely different homepage designs, for instance. 

    With us, you can compliantly and ethically collect historical user data about any visitor, who’s entered any of the active tests — and monitor their entire customer journey. You can also leverage Matomo A/B Testing data as part of multi-touch attribution modelling to determine which channels bring the best leads and which assets drive them towards conversion. 

     

    Since Matomo A/B Testing is part of our analytics platform, it works well with other features such as goal tracking, heatmaps, user session recordings and more. 

    Key features

    • Run experiments for web, mobile, email and digital campaigns 
    • Convenient A/B test design interface 
    • One-click experiment scheduling 
    • Integration with historic visitor profiles
    • Near real-time conversion tracking 
    • Apply segmentation to Matomo reports 
    • Easy creative variation sharing via a URL 

    Pros

    • High data accuracy with no reporting gaps 
    • Monitor the evolution of your success metrics for each variation
    • Embed experiments across multiple digital channels 
    • Set a custom confidence threshold for winning variations 
    • No compromises on user privacy 
    • Free 21-day trial available (for Matomo Cloud) and free 30-day plugin trial (for Matomo On-Premise)

    Cons

    • No on-site personalisation tools available 
    • Configuration requires some coding experience 

    Price : Matomo A/B Testing is included in the monthly Cloud plan (starting at €19 per month). On-Premise users can buy this functionality as a plugin (starting at €199/year). 

    Google Optimize vs Matomo A/B Testing : The Verdict 

    Matomo offers the same types of A/B testing features as Google Optimize (and some extras !), but without any usage caps. Unlike Matomo, Google Optimize doesn’t support A/B tests for mobile apps. You can access some content testing features for Android Apps via Firebase, but this requires another subscription. 

    Matomo lets you run A/B experiments across the web and mobile properties, plus desktop apps, email campaigns and digital ads. Also, Matomo has higher conversion data accuracy, thanks to our privacy-focused method for collecting website analytics

    When using Matomo in most EU markets, you’re legally exempt from showing a cookie consent banner. Meaning you can collect richer insights for each experiment and make data-driven decisions. Nearly 40% of global consumers reject cookie consent banners. With most other tools, you won’t be getting the full picture of your traffic. 

    Optimizely 

    Optimizely homepage

    Optimizely is a conversion optimization platform that offers several competitive products for a separate subscription. These include a flexible content management system (CMS), a content marketing platform, a web A/B testing app, a mobile featuring testing product and two eCommerce-specific website management products.

    The Web Experimentation app allows you to optimise every customer touchpoint by scheduling unlimited split or multi-variant tests and conversions across all your projects from the same app. Apart from websites, this subscription also supports experiments for single-page applications. But if you want more advanced mobile app testing features, you’ll have to purchase another product — Feature Experimentation. 

    Key features :

    • Intuitive experiment design tool 
    • Cross-browser testing and experiment preview 
    • Multi-page funnel tests design 
    • Behavioural and geo-targeting 
    • Exit/bounce rate tracking
    • Custom audience builder for experiments
    • Comprehensive reporting 

    Pros

    • Unlimited number of concurrent experiments 
    • Upload your audience data for test optimisation 
    • Dynamic content personalisation available on a higher tier 
    • Pre-made integrations with popular heatmap and analytics tools 
    • Supports segmentation by device, campaign type, traffic sources or referrer 

    Cons

    • You need a separate subscription for mobile CRO 
    • Free trial not available, pricing on-demand 
    • Multiple licences and subscriptions may be required 
    • Doesn’t support A/B tests for emails 

    Price : Available on-demand. 

    Web Experimentation tool has three subscription tiers — Grow, Accelerate, and Scale with different features included. 

    Google Optimize vs Optimizely : The Verdict 

    Optimizely is a strong contender for Google Optimize alternative as it offers more advanced audience targeting and segmentation options. You can target users by IP address, cookies, traffic sources, device type, browser, language, location or a custom utm_campaign parameter.

    Similar to Matomo A/B testing, Optimizely doesn’t limit the number of projects or concurrent experiments you can do. But you have to immediately sign an annual contract (no monthly plans are available). Pricing also varies based on the number of processed impressions (more experiments = a higher annual bill). An annual licence can cost $63,700 for 10 million impressions on average, according to an independent estimate. 

    Visual Website Optimizer (VWO) 

    VWO is another popular experimentation platform, supporting web, mobile and server-side A/B testing and personalisation campaigns.

    Similar to others, VWO offers a drag-and-drop visual editor for creating campaign variants. You don’t need design or coding knowledge to create tests. Once you’re all set, the app will benchmark your experiment performance against expected conversion rates, report on differences in conversion rate and point towards the best-performing creative. 

    Similar to Optimizely, VWO also offers web/mobile app optimisation as a separate subscription. Apart from testing visual page elements, you can also run in-app experiments throughout the product stack to locate new revenue opportunities. For example, you can test in-app subscription flows, search algorithms or navigation flows to improve product UX. 

    Key features :

    • Multivariate and multi-arm bandit tests 
    • Multi-step (funnel) split tests 
    • Collaborative experiment tracking dashboard 
    • Target users by different attributes (URL, device, geo-data) 
    • Personal library of creative elements 
    • Funnel analytics, session records, and heatmaps available 

    Pros

    • Free starter plan is available (similar to Google Optimize)
    • Simple tracking code installation and easy code editor
    • Offers online reporting dashboards and report downloads 
    • Slice-and-dice reports by different audience dimensions
    • No impact on website/app loading speed and performance 

    Cons

    • Multivariate testing is only available on a higher-tier plan 
    • Annual contract required, despite monthly billing 
    • Mobile app A/B split tests require another licence 
    • Requires ongoing user training 

    Price : Free limited plan available. 

    Then from $356/month, billed annually. 

    Google Optimize vs VWO : The Verdict 

    The free plan on VWO is very similar to Google Optimize. You get access to A/B testing and split URL testing features for websites only. The visual editing tool is relatively simple — and you can use URL or device targeting. 

    Free VWO reports, however, lack the advertised depth in terms of behavioural or funnel-based reporting. In-depth insights are available only to premium users. Extra advertised features like heatmaps, form analytics and session recordings require yet another subscription. With Matomo Cloud, you get all three of these together with A/B testing. 

    ConvertFlow 

    ConvertFlow Homepage

    ConvertFlow markets itself as a funnel optimisation app for eCommerce and SaaS companies. It meshes lead generation tools with some CRO workflows. 

    With ConvertFlow, you can effortlessly design opt-in forms, pop-ups, quizzes and even entire landing pages using pre-made web elements and a visual builder. Afterwards, you can put all of these assets to a “field test” via the ConvertFlow CRO platform. Select among pre-made templates or create custom variants for split or multivariate testing. You can customise tests based on URLs, cookie data and user geolocation among other factors. 

    Similar to Adobe Target, ConvertFlow also allows you to run tests targeted at specific customer segments in your CRM. The app has native integrations with HubSpot and Salesforce, so this feature is easy to enable. ConvertFlow also offers advanced targeting and segmentation options, based on user on-site behaviour, demographics data or known interests.

    Key features :

    • Create and test landing pages, surveys, quizzes, pop-ups, surveys and other lead-gen assets. 
    • All-in-one funnel builder for creating demand-generation campaigns 
    • Campaign personalisation, based on on-site activity 
    • Re-usable dynamic visitor segments for targeting 
    • Multi-step funnel design and customisation 
    • Embedded forms for split testing CTAs on existing pages 

    Pros

    • Allows controlling the traffic split for each variant to get objective results 
    • Pre-made integration with Google Analytics and Google Tag Manager 
    • Conversion and funnel reports, available for each variant 
    • Access to a library with 300+ conversion campaign templates
    • Apply progressive visitor profiling to dynamically adjust user experiences 

    Cons

    • Each plan covers only $10K views. Each extra 10k costs another $20/mo 
    • Only one website allowed per account (except for Teams plan) 
    • Doesn’t support experiments in mobile app 
    • Not all CRO features are available on a Pro plan. 

    Price : Access to CRO features costs from $300/month on a Pro plan. Subscription costs also increase, based on the total number of monthly views. 

    Google Optimize vs CovertFlow : The Verdict 

    ConvertFlow is equally convenient to use in conjunction with Google Analytics as Google Optimize is. But the similarities end up here since ConvertFlow combines funnel design features with CRO tools. 

    With ConvertFlow, you can run more advanced experiments and apply more targeting criteria than with Google Optimize. You can observe user behaviour and conversion rates across multi-step CTA forms and page funnels, plus benefit from first-touch attribution reporting without switching apps. 

    Though CovertFlow has a free plan, it doesn’t include access to CRO features. Meaning it’s not a free alternative to Google Optimize.

    Comparison of the Top 5 Google Optimize Alternatives

    FeatureGoogle OptimizeAdobe TargetMatomo A/B testOptimizely VWOConvertFlow

    Supported channelsWebWeb, mobile, social media, email Web, mobile, email, digital campaignsWebsites & mobile appsWebsites, web and mobile appsWebsites and mobile apps
    A/B testingcheck mark iconcheck mark iconcheck mark iconcheck mark iconcheck mark iconcheck mark icon
    Easy GA integration check mark iconXcheck mark iconcheck mark iconcheck mark iconcheck mark icon
    Integrations with other web analytics appsXXcheck mark iconcheck mark iconXcheck mark icon
    Audience segmentationBasicAdvancedAdvancedAdvancedAdvancedAdvanced
    Geo-targetingcheck mark iconcheck mark iconXcheck mark iconcheck mark iconcheck mark icon
    Behavioural targetingBasicAdvancedAdvancedAdvancedAdvancedAdvanced
    HeatmapsXXcheck mark icon

    No extra cost with Matomo Cloud
    〰️

    *via integrations
    〰️

    *requires another subscription
    X
    Session recordingsXXcheck mark icon

    No extra cost with Matomo Cloud
    X〰️

    *requires another subscription
    X
    Multivariate testing (MVT)check mark iconcheck mark iconcheck mark iconcheck mark iconcheck mark iconcheck mark icon
    Dynamic personalisation Xcheck mark iconXcheck mark icon〰️

    *only on higher account tiers
    〰️

    *only on the highest account tiers
    Product recommendationsXcheck mark iconX〰️

    *requires another subscription
    〰️

    *requires another subscription
    check mark icon
    SupportSelf-help desk on a free tierEmail, live-chat, phone supportEmail, self-help guides and user forumKnowledge base, online tickets, user communitySelf-help guides, email, phoneKnowledge base, email, and live chat support
    PriceFreemiumOn-demandFrom €19 for Cloud subscription

    From €199/year as plugin for On-Premise
    On-demandFreemium

    From $365/mo
    From $300/month

    Conclusion 

    Google Optimize has served marketers well for over five years. But as the company decided to move on — so should you. 

    Oher A/B testing tools like Matomo, Optimizely or VWO offer better funnel analytics and split testing capabilities without any usage caps. Also, tools like Adobe Target, Optimizely, and VWO offer advanced content personalisation, based on aggregate analytics. However, they also come with much higher subscription costs.

    Matomo is a robust, compliant and cost-effective alternative to Google Optimize. Our tool allows you to schedule campaigns across all digital mediums (and even desktop apps !) without a

  • Google Optimize vs Matomo A/B Testing : Everything You Need to Know

    17 mars 2023, par Erin — Analytics Tips

    Google Optimize is a popular A/B testing tool marketers use to validate the performance of different marketing assets, website design elements and promotional offers. 

    But by September 2023, Google will sunset both free and paid versions of the Optimize product. 

    If you’re searching for an equally robust, but GDPR compliant, privacy-friendly alternative to Google Optimize, have a look at Matomo A/B Testing

    Integrated with our analytics platform and conversion rate optimisation (CRO) tools, Matomo allows you to run A/B and A/B/n tests without any usage caps or compromises in user privacy.

    Disclaimer : Please note that the information provided in this blog post is for general informational purposes only and is not intended to provide legal advice. Every situation is unique and requires a specific legal analysis. If you have any questions regarding the legal implications of any matter, please consult with your legal team or seek advice from a qualified legal professional.

    Google Optimize vs Matomo : Key Capabilities Compared 

    This guide shows how Matomo A/B testing stacks against Google Optimize in terms of features, reporting, integrations and pricing.

    Supported Platforms 

    Google Optimize supports experiments for dynamic websites and single-page mobile apps only. 

    If you want to run split tests in mobile apps, you’ll have to do so via Firebase — Google’s app development platform. It also has a free tier but paid usage-based subscription kicks in after your product(s) reaches a certain usage threshold. 

    Google Optimize also doesn’t support CRO experiments for web or desktop applications, email campaigns or paid ad campaigns.Matomo A/B Testing, in contrast, allows you to run experiments in virtually every channel. We have three installation options — using JavaScript, server-side technology, or our mobile tracking SDK. These allow you to run split tests in any type of web or mobile app (including games), a desktop product, or on your website. Also, you can do different email marketing tests (e.g., compare subject line variants).

    A/B Testing 

    A/B testing (split testing) is the core feature of both products. Marketers use A/B testing to determine which creative elements such as website microcopy, button placements and banner versions, resonate better with target audiences. 

    You can benchmark different versions against one another to determine which variation resonates more with users. Or you can test an A version against B, C, D and beyond. This is called A/B/n testing. 

    Both Matomo A/B testing and Google Optimize let you test either separate page elements or two completely different landing page designs, using redirect tests. You can show different variants to different user groups (aka apply targeting criteria). For example, activate tests only for certain device types, locations or types of on-site behaviour. 

    The advantage of Matomo is that we don’t limit the number of concurrent experiments you can run. With Google Optimize, you’re limited to 5 simultaneous experiments. Likewise, 

    Matomo lets you select an unlimited number of experiment objectives, whereas Google caps the maximum choice to 3 predefined options per experiment. 

    Objectives are criteria the underlying statistical model will use to determine the best-performing version. Typically, marketers use metrics such as page views, session duration, bounce rate or generated revenue as conversion goals

    Conversions Report Matomo

    Multivariate testing (MVT)

    Multivariate testing (MVT) allows you to “pack” several A/B tests into one active experiment. In other words : You create a stack of variants to determine which combination drives the best marketing outcomes. 

    For example, an MVT experiment can include five versions of a web page, where each has a different slogan, product image, call-to-action, etc. Visitors are then served with a different variation. The tracking code collects data on their behaviours and desired outcomes (objectives) and reports the results.

    MVT saves marketers time as it’s a great alternative to doing separate A/B tests for each variable. Both Matomo and Google Optimize support this feature. However, Google Optimize caps the number of possible combinations at 16, whereas Matomo has no limits. 

    Redirect Tests

    Redirect tests, also known as split URL tests, allow you to serve two entirely different web page versions to users and compare their performance. This option comes in handy when you’re redesigning your website or want to test a localised page version in a new market. 

    Also, redirect tests are a great way to validate the performance of bottom-of-the-funnel (BoFU) pages as a checkout page (for eCommerce websites), a pricing page (for SaaS apps) or a contact/booking form (for a B2B service businesses). 

    You can do split URL tests with Google Optimize and Matomo A/B Testing. 

    Experiment Design 

    Google Optimize provides a visual editor for making simple page changes to your website (e.g., changing button colour or adding several headline variations). You can then preview the changes before publishing an experiment. For more complex experiments (e.g., testing different page block sequences), you’ll have to codify experiments using custom JavaScript, HTML and CSS.

    In Matomo, all A/B tests are configured on the server-side (i.e., by editing your website’s raw HTML) or client-side via JavaScript. Afterwards, you use the Matomo interface to start or schedule an experiment, set objectives and view reports. 

    Experiment Configuration 

    Marketers know how complex customer journeys can be. Multiple factors — from location and device to time of the day and discount size — can impact your conversion rates. That’s why a great CRO app allows you to configure multiple tracking conditions. 

    Matomo A/B testing comes with granular controls. First of all, you can decide which percentage of total web visitors participate in any given experiment. By default, the number is set to 100%, but you can change it to any other option. 

    Likewise, you can change which percentage of traffic each variant gets in an experiment. For example, your original version can get 30% of traffic, while options A and B receive 40% each. We also allow users to specify custom parameters for experiment participation. You can only show your variants to people in specific geo-location or returning visitors only. 

    Finally, you can select any type of meaningful objective to evaluate each variant’s performance. With Matomo, you can either use standard website analytics metrics (e.g., total page views, bounce rate, CTR, visit direction, etc) or custom goals (e.g., form click, asset download, eCommerce order, etc). 

    In other words : You’re in charge of deciding on your campaign targeting criteria, duration and evaluation objectives.

    A free Google Optimize account comes with three main types of user targeting options : 

    • Geo-targeting at city, region, metro and country levels. 
    • Technology targeting  by browser, OS or device type, first-party cookie, etc. 
    • Behavioural targeting based on metrics like “time since first arrival” and “page referrer” (referral traffic source). 

    Users can also configure other types of tracking scenarios (for example to only serve tests to signed-in users), using condition-based rules

    Reporting 

    Both Matomo and Google Optimize use different statistical models to evaluate which variation performs best. 

    Matomo relies on statistical hypothesis testing, which we use to count unique visitors and report on conversion rates. We analyse all user data (with no data sampling applied), meaning you get accurate reporting, based on first-hand data, rather than deductions. For that reason, we ask users to avoid drawing conclusions before their experiment participation numbers reach a statistically significant result. Typically, we recommend running an experiment for at least several business cycles to get a comprehensive report. 

    Google Optimize, in turn, uses Bayesian inference — a statistical method, which relies on a random sample of users to compare the performance rates of each creative against one another. While a Bayesian model generates CRO reports faster and at a bigger scale, it’s based on inferences.

    Model developers need to have the necessary skills to translate subjective prior beliefs about the probability of a certain event into a mathematical formula. Since Google Optimize is a proprietary tool, you cannot audit the underlying model design and verify its accuracy. In other words, you trust that it was created with the right judgement. 

    In comparison, Matomo started as an open-source project, and our source code can be audited independently by anyone at any time. 

    Another reporting difference to mind is the reporting delays. Matomo Cloud generates A/B reports within 6 hours and in only 1 hour for Matomo On-Premise. Google Optimize, in turn, requires 12 hours from the first experiment setup to start reporting on results. 

    When you configure a test experiment and want to quickly verify that everything is set up correctly, this can be an inconvenience.

    User Privacy & GDPR Compliance 

    Google Optimize works in conjunction with Google Analytics, which isn’t GDPR compliant

    For all website traffic from the EU, you’re therefore obliged to show a cookie consent banner. The kicker, however, is that you can only show an Optimize experiment after the user gives consent to tracking. If the user doesn’t, they will only see an original page version. Considering that almost 40% of global consumers reject cookie consent banners, this can significantly affect your results.

    This renders Google Optimize mostly useless in the EU since it would only allow you to run tests with a fraction ( 60%) of EU traffic — and even less if you apply any extra targeting criteria. 

    In comparison, Matomo is fully GDPR compliant. Therefore, our users are legally exempt from displaying cookie-consent banners in most EU markets (with Germany and the UK being an exception). Since Matomo A/B testing is part of Matomo web analytics, you don’t have to worry about GDPR compliance or breaches in user privacy. 

    Digital Experience Intelligence 

    You can get comprehensive statistical data on variants’ performance with Google Optimize. But you don’t get further insights on why some tests are more successful than others. 

    Matomo enables you to collect more insights with two extra features :

    • User session recordings : Monitor how users behave on different page versions. Observe clicks, mouse movements, scrolls, page changes, and form interactions to better understand the users’ cumulative digital experience. 
    • Heatmaps : Determine which elements attract the most users’ attention to fine-tune your split tests. With a standard CRO tool, you only assume that a certain page element does matter for most users. A heatmap can help you determine for sure. 

    Both of these features are bundled into your Matomo Cloud subscription

    Integrations 

    Both Matomo and Google Optimize integrate with multiple other tools. 

    Google Optimize has native integrations with other products in the marketing family — GA, Google Ads, Google Tag Manager, Google BigQuery, Accelerated Mobile Pages (AMP), and Firebase. Separately, other popular marketing apps have created custom connectors for integrating Google Optimize data. 

    Matomo A/B Testing, in turn, can be combined with other web analytics and CRO features such as Funnels, Multi-Channel Attribution, Tag Manager, Form Analytics, Heatmaps, Session Recording, and more ! 

    You can also conveniently export your website analytics or CRO data using Matomo Analytics API to analyse it in another app. 

    Pricing 

    Google Optimize is a free tool but has usage caps. If you want to schedule more than 5 concurrent experiments or test more than 16 variants at once, you’ll have to upgrade to Optimize 360. Optimize 360 prices aren’t listed publicly but are said to be closer to six figures per year. 

    Matomo A/B Testing is available with every Cloud subscription (starting from €19) and Matomo On-Premise users can also get A/B Testing as a plugin (starting from €199/year). In each case, there are no caps or data limits. 

    Google Optimize vs Matomo A/B Testing : Comparison Table

    Features/capabilitiesGoogle OptimizeMatomo A/B test
    Supported channelsWebWeb, mobile, email, digital campaigns
    A/B testingcheck mark iconcheck mark icon
    Multivariate testing (MVT)check mark iconcheck mark icon
    Split URL testscheck mark iconcheck mark icon
    Web analytics integration Native with UA/GA4 Native with Matomo

    You can also migrate historical UA (GA3) data to Matomo
    Audience segmentation BasicAdvanced
    Geo-targetingcheck mark iconX
    Technology targetingcheck mark iconX
    Behavioural targetingBasicAdvanced
    Reporting modelBayesian analysisStatistical hypothesis testing
    Report availability Within 12 hours after setup 6 hours for Matomo Cloud

    1 hour for Matomo On-Premise
    HeatmapsXcheck mark icon

    Included with Matomo Cloud
    Session recordingsXcheck mark icon

    Included with Matomo Cloud
    GDPR complianceXcheck mark icon
    Support Self-help desk on a free tierSelf-help guides, user forum, email
    PriceFree limited tier From €19 for Cloud subscription

    From €199/year as plugin for On-Premise

    Final Thoughts : Who Benefits the Most From an A/B Testing Tool ?

    Split testing is an excellent method for validating various assumptions about your target customers. 

    With A/B testing tools you get a data-backed answer to research hypotheses such as “How different pricing affects purchases ?”, “What contact button placement generates more clicks ?”, “Which registration form performs best with new app subscribers ?” and more. 

    Such insights can be game-changing when you’re trying to improve your demand-generation efforts or conversion rates at the BoFu stage. But to get meaningful results from CRO tests, you need to select measurable, representative objectives.

    For example, split testing different pricing strategies for low-priced, frequently purchased products makes sense as you can run an experiment for a couple of weeks to get a statistically relevant sample. 

    But if you’re in a B2B SaaS product, where the average sales cycle takes weeks (or months) to finalise and things like “time-sensitive discounts” or “one-time promos” don’t really work, getting adequate CRO data will be harder. 

    To see tangible results from CRO, you’ll need to spend more time on test ideation than implementation. Your team needs to figure out : which elements to test, in what order, and why. 

    Effective CRO tests are designed for a specific part of the funnel and assume that you’re capable of effectively identifying and tracking conversions (goals) at the selected stage. This alone can be a complex task since not all customer journeys are alike. For SaaS websites, using a goal like “free trial account registration” can be a good starting point.

    A good test also produces a meaningful difference between the proposed variant and the original version. As Nima Yassini, Partner at Deloitte Digital, rightfully argues :

    “I see people experimenting with the goal of creating an uplift. There’s nothing wrong with that, but if you’re only looking to get wins you will be crushed when the first few tests fail. The industry average says that only one in five to seven tests win, so you need to be prepared to lose most of the time”.

    In many cases, CRO tests don’t provide the data you expected (e.g., people equally click the blue and green buttons). In this case, you need to start building your hypothesis from scratch. 

    At the same time, it’s easy to get caught up in optimising for “vanity metrics” — such that look good in the report, but don’t quite match your marketing objectives. For example, better email headline variations can improve your email open rates. But if users don’t proceed to engage with the email content (e.g. click-through to your website or use a provided discount code), your efforts are still falling short. 

    That’s why developing a baseline strategy is important before committing to an A/B testing tool. Google Optimize appealed to many users because it’s free and allows you to test your split test strategy cost-effectively. 

    With its upcoming depreciation, many marketers are very committed to a more expensive A/B tool (especially when they’re not fully sure about their CRO strategy and its results). 

    Matomo A/B testing is a cost-effective, GDPR-compliant alternative to Google Optimize with a low learning curve and extra competitive features. 

    Discover if Matomo A/B Testing is the ideal Google Optimize alternative for your organization with our free 21-day trial. No credit card required.