Palm Dashboard

A Laravel-based internal dashboard for PR campaign tracking, designed with modular UI and performance in mind.
My Role
UX/UI Designer
Full Stack Developer
Teammate
Tools
Laravel
PHP
React
Vue
Inertia.js
MySQL
Tailwind
Timeline
2025
Overview

The Palm PR Dashboard is a full-featured internal platform built to transform how PR campaigns are measured, managed, and communicated. Designed for both Palm PR’s internal teams and external clients, the dashboard acts as a central hub for coverage tracking, strategic planning, performance analysis, and advanced data visualization.

Our vision was to build a seamless, intuitive experience—combining the flexibility of a modern design system with the technical rigor of a multi-tenant SaaS application. This meant bringing together automated scraping, custom metric scoring, cross-platform analytics, and user personas that reflected how real PR teams and clients operate.

Live Project

Problem

Before this platform, Palm’s campaign tracking relied on a fragmented workflow: spreadsheets, CoverageBook exports, manually built Google reports, and subjective campaign reviews. This created multiple pain points:

  • Inconsistent reporting across clients and departments
  • Tedious quarterly review preparation
  • No centralized system to connect PR outcomes with real business impact

We aimed to create a PR intelligence engine that merges narrative coverage with hard metrics, creating visibility and strategic clarity.

Palm Dashboard

Design Strategy

To design a product that fit seamlessly into the daily workflows of PR professionals, I led a series of discovery sessions with Palm’s directors, client teams, and content specialists. Together, we mapped the full PR lifecycle—from content seeding and placement, to sentiment tracking, engagement analysis, and business outcomes.

We aligned key user journeys and personas:

  • Account Managers: frequent check-ins, performance tracking, and strategic reporting
  • Directors: portfolio-wide visibility and team oversight
  • Clients: branded, digestible reports aligned with agreed KPIs

From the start, we defined role-based permissions and access levels to ensure each user type could securely view or manage relevant data.

User research informed every stage of the design process—from early prototypes to final rollout. Through continuous testing, we uncovered core insights:

  • Internal teams required granular filters, saved views, and workflow flexibility
  • Clients preferred clean, branded outputs with high-level takeaways over dense metric reports
  • Everyone valued live data and interactivity over static PDFs

Each insight translated into tangible interface changes: simplified navigation, collapsible table views, and preview-driven reporting formats that adapted to user needs.

The application required focused design solutions across multiple touchpoints. Below, we outline three core areas:

  1. Client Strategy & Objective Management
    We created a sustainable system for Palm’s internal teams to upload, structure, and manage client objectives and strategic priorities. These formed the foundation for tailored KPI targets and performance criteria.
  2. KPI criteria
    Setting and managing the client's success criteria
  3. Metrics Dashboard
    We designed a live dashboard that consolidated PR metrics from various sources—such as Google Analytics and custom tracking—into a cohesive performance view. This included Palm’s own proprietary formulas for brand visibility, engagement, and leadership indicators.

1. Client Strategy & Objective Management

Managing objectives and strategies was one of the most time-consuming tasks for Palm’s internal team. Despite having templates in place, onboarding new clients or setting new objectives required constant duplication and manual updates—leading to bloated documentation and inconsistent versions across projects.

"It definitely is the longest process for us since there's so many documents, and we have to go through creating each one and a timeline for each objective. It takes up a lot of our time—time we could be using to generate income." — Charley (Palm PR)

Mapping the Existing Workflow

The team’s approach involved four layers:

  1. Objective – the overarching client goal
  2. Tactic – a sub-goal or method to achieve the objective
  3. Activity – actionable steps linked to each tactic
  4. Timeplan – scheduled tasks tied to specific activities

After defining this structure, they had to manually build timelines, assign responsibilities, and track KPIs—all using external spreadsheets and fragmented tools.

Design Goals

My challenge was to streamline this complexity into a cohesive, easy-to-use digital experience. We focused on four primary objectives:

  1. Allow teams to easily create, assign, and track objectives and related tasks
  2. Automate timeline generation based on added tactics, activities, and timeplans
  3. Enable KPI target setting and progress tracking
  4. Introduce clear visual indicators and intuitive interaction for non-technical users

Key UX Features & Visual Design

Before Excel Timeline

After - App Timeline

To simplify oversight, we surfaced the most critical metrics at the top of the objective page with three large cards:

  • KPI Points Achieved (Blue with completion icon)
  • Target Points (Green)
  • Completion Rate % (Tick icon)

Each card was colour-coded and icon-enhanced to help users instantly recognise key performance indicators in line with Palm’s brand aesthetic.

Beneath the metrics, users could toggle between two views:

List View (Nested Task Manager)

We designed a hierarchical task structure that visually represents the one-to-many relationships between tactics, activities, and timeplans. This “nested” approach improves clarity and enables users to manage granular details efficiently. It also prepares the structure for export-ready documentation, ensuring that even non-app users (e.g. clients) can follow the project hierarchy.

Nested Task List and Management

Timeline View (Auto-generated)

Rather than having to manually craft timelines, this view dynamically builds a visual plan using the entered activities and timeplans. Each layer (tactic, activity, timeplan) is colour-coded for fast scanning. Clicking a timeplan expands to reveal detailed task information.

Timeline View Timeplan Details

Design Decisions & Accessibility

  • Iconography & Colour: To aid recall and differentiate content types, we leaned into colour psychology and iconography. For example, KPI Achieved in blue (progressive tone), Target Points in green (growth), and Completion % with a universal tick icon.
  • Scalability: By introducing system-generated IDs for timeplans and separating lengthy descriptions into dedicated areas, we reduced clutter in high-density interfaces like the top bar.
  • User Inclusion: Since many users are not tech-savvy, I kept navigation patterns familiar and interactions minimal—ensuring the interface remains accessible and unintimidating.

Feedback & Iteration

After internal testing, the team responded positively:

“We absolutely love how much easier it is to manage objectives. The search and filter functions are a game-changer.”
“The timeline automation saves us two days we used to spend manually building out plans in Excel.”
“The nesting really helps us track things better. Being able to assign timeplans to people and see it on the dashboard keeps us on track.”

One key area for improvement:

  • Users requested the ability to collapse/expand tactics, activities, and timeplans in the list view for better navigation.
  • Additional use of colour in the list view, similar to the timeline, was suggested to enhance usability.

Next Steps

  • Redesign the description layout to reduce top-bar height.
  • Introduce expand/collapse toggles in the nested list view.
  • Improve colour cues in list view for faster scanning and prioritisation.

2. KPI Criteria

Once internal teams had set their objectives and KPIs for each client, the next step was defining how coverage would be scored and tracked across campaigns. This process was highly manual—each client had bespoke documentation outlining how much value should be assigned to each coverage type (articles, features, influencer posts, etc.), split by tier, format, and relevance.

📎 [Internal Example: Mollie’s PR Campaign Measurement Criteria — over 10 pages of scoring logic, audience segmentation, and tier breakdowns]
(Note: Cannot be shown due to client confidentiality.)

The Problem

Each client’s measurement criteria lived in separate documents, often scattered across Word files, spreadsheets, and email threads. This created:

  • Inconsistent scoring
  • Overhead for onboarding new clients
  • Complexity for teams to remember criteria rules

One team member summarised it perfectly:

“We just want something that’s simple, easy to manage, and doesn’t require cross-checking five documents.”

The Solution

We introduced a Campaign KPI Settings system with two levels:

  1. Global KPI Criteria – acts as a template, reusable across all clients
  2. Client-Specific KPI Criteria – customisable scoring systems for each campaign
KPI Settings Page – Global vs Client view toggle

To mirror the structure of their internal documentation, I designed a clean tabbed interface with 5 key tabs:

Tab Purpose
Media Types Article, Social Media Post, Influencer Story, etc.
Media Tiers Tier A / Tier B structure (customisable)
Media Categories Print, Online, Broadcast, Influencer
Media Titles Specific brands or platforms (e.g. The Times, Vogue)
KPI Criteria Where users assign point values based on type, tier, and category

Each component could be edited inline, with visibility tags (e.g. Global / Client-Specific) shown clearly.

Adding KPI Criteria Form
Full KPI Table

UX Design Thinking

  • Familiar Structure: We recreated the structure found in client docs—so onboarding users already understood the logic.
  • Simplicity First: No nested modals or long forms—everything is accessible within a clean table and modal-based input.
  • Scalability: Criteria can be global or specific, ensuring flexibility as Palm grows their client base.
  • Clarity: Tags like "Global" or "Client-Specific" are surfaced at a glance.

Feedback & Results

After rollout and testing, the internal team gave immediate positive feedback:

“This is exactly what we need—straight to the point and easy to understand. No confusion at all. Perfect.”

The new system significantly reduced the onboarding time for new campaigns, removed the risk of misapplied scoring, and ensured that coverage could be reviewed and approved based on transparent, client-defined rules.

Visual Recommendations for Your Portfolio

Include:

  • A full-page screenshot of the KPI Criteria Settings page
  • Zoomed-in views of:
    • The "Create Client Copy" modal
    • A specific KPI table row showing tier/point logic
  • (Optional) Overlay the quote from the internal team on the final UI view

3. Metrics Dashboard

The Metrics Dashboard is designed to give Palm PR and its clients a new way to quantify their brand positioning and inform strategic campaign decisions. The goal was to go beyond basic engagement metrics and build a framework that helps PR professionals assess outcomes across five core pillars.

While the specific formulas behind Palm’s proprietary scoring system are under NDA and still in development, I led the UX strategy and collaborated with our product owner, data analyst, and engineers to shape the dashboard’s visual structure, user flows, and data requirements.

Strategic Discovery & Pillar Development

To shape the direction of this feature, I conducted working sessions with the Product Owner to explore her long-standing experiences in the PR industry—what she felt was missing, where traditional metrics fell short, and how clients typically struggled to make informed decisions.

Although she didn’t have the exact data points or formulas in mind, I guided her through structured discovery, which enabled her to articulate five strategic areas that matter most to PR clients:

  • Target Audience Reach
  • Brand Positioning
  • Media Authority
  • Competitive Benchmarking
  • Sentiment & Narrative Control

This conversation shifted the focus from raw data to actionable insight—and gave us a clear direction for what a truly valuable metrics dashboard should deliver.

From Data to Insight

Once the pillars were defined, I worked with a data analyst to map out the kinds of signals, metrics, and external data sources needed to support each pillar. These included:

  • Web & search traffic via Google Analytics and Search Console
  • Coverage volume and tier via internal article scoring
  • SEO and media authority from Semrush
  • Social mentions and sentiment scoring
  • Competitive media share and placements

My responsibility was to design a modular interface that simplifies complexity—delivering strategic clarity through:

  • Live metric cards
  • Pillar-level drill-downs
  • Custom date range filters
  • Export-ready, branded layouts for clients

Automated Data Integration

To power this system, I implemented Airbyte as our integration solution.

What is Airbyte?
Airbyte is an open-source data integration tool that connects hundreds of platforms (e.g. Google Analytics, Facebook Ads, Semrush) and syncs their data into a unified backend without needing custom-built ETL pipelines.

Using Airbyte allowed us to:

  • Rapidly connect to third-party platforms without custom engineering
  • Keep KPI data fresh with scheduled syncs
  • Maintain a consistent data structure across all clients and metrics

User Scenario

“What’s driving our decline in PR performance this quarter?”

A Palm PR Director logs into the dashboard and notices a dip in the Brand Positioning score across multiple campaigns. They click into the breakdown and see a decrease in Tier A media mentions over the last month, with several articles appearing in lower-tier publications.

Using the filter tool, they isolate data by media type and discover that broadcast and print coverage fell below their target KPI threshold. With this insight, the Director briefs the campaign team to increase Tier A media outreach and allocates more resources to high-authority content planning for the next quarter.

UX Design Highlights

  • Scorecards with Live Updates: Each pillar shows a real-time index with up/down indicators
  • Pillar Breakdown Views: Dive deeper into each strategic area
  • Dynamic Filters: Switch between timeframes, media types, and campaigns
  • Exports: Download client-ready visual summaries in PDF, PPT, or CSV

Palm Dashboard Metrics

Reflection & Roadmap

This feature challenged me to bring clarity to a vague but important business need—transforming abstract strategic thinking into an actionable design framework.

We're currently building the next evolution:

  • Drag-and-drop report builder
  • Client-specific KPI metric customisation
  • AI-generated sentiment summaries and competitor clustering

Technical Approach & System Flow

Registration & Approval

Members begin by registering through a custom-designed Divi form, which is captured by MemberPress. Each submission is held in review, pending admin approval via the New User Approve plugin.

Technical Application

Backend (Laravel)

The platform was built with Laravel 11 and a modular service pattern. Key backend features:

  • OAuth2 integration with Google services (GA, Ads, Search Console)
  • Background queue system for ScrapingBee tasks, token refresh, and PDF generation
  • Database seeders for PR templates, permissions, test clients

Frontend (React + Inertia.js + Tailwind)

The UI was built with React, scoped Vue components, and Inertia.js. Custom widgets, modular components, and permission-aware rendering were designed for scale.

Services

  • CoverageService: Handles article parsing and media scoring
  • GoogleAnalyticsService: Connects to GA4 via OAuth and stores engagement metrics
  • ScrapingBeeService: Runs queued jobs for keyword scanning and screenshot capture
  • ReportGeneratorService: Generates PDF, PPT, and CSV output for each client

DevOps & Workflow

  • GitHub + CI/CD for deployments to Digital Ocean
  • Jira ticket syncing for deployment tracking
  • Permission-based feature flagging
  • Scheduled jobs for coverage scanning and reporting

Summary

Palm PR Dashboard is not just a reporting tool—it’s a living platform that turns PR into an accountable, strategic force. From automated discovery to integrated analytics, it redefines how outcomes are measured, shared, and optimized, We’re entering a new phase—building a custom Data Builder to allow Palm to:

  • Create custom metrics from GA + KPI + PR sources
  • Compose drag-and-drop reporting templates
  • Add AI sentiment analysis and content clustering (Wishlist)

This unlocks true personalization at scale and transforms Palm from a campaign agency to a strategy-led insights partner.