AB Entertainment logo
Ticketalay Proposal

Working Prototype

The Prototype

One Australian audience file, named at source and run end to end. Every figure is computed from the file, and every source opens to the page that proves it. Campaign segments, marketing materials, social uploads and Leadership Team reports are built from the same file. All currency figures AUD.

Each section below links to the duty it has to satisfy on the marketing compliance page, where the Spam Act, the Privacy Principles and the complaint response steps are set against the columns that evidence them.

End to End, In Motion

An Australian Consented Audience, Run End to End

Synthetic sampleCSVExcelJSON

Records

241

20 columns

May be sent to

193

84% of resolved people

Marathi at home

118

of the contactable audience

States covered

7

40 postcodes

  1. Sources
  2. The File
  3. Validate
  4. Resolve
  5. Consent
  6. Activate

Sources5 build · 7 set aside

Source codes

  • LANPLANPABS Census — language used at home
  • SALSALABS QuickStats — suburb ancestry and birthplace
  • APAPAustralia Post postcode reference
  • ASGSASGSABS statistical areas and correspondences
  • 1P1PFirst-party opted-in list
  • APP7APP7Australian Privacy Principle 7 — direct marketing
  • SPAMSPAMSpam Act 2003 — channel consent

Trust ladder

  • Official statisticOfficial statisticEnumerated or statutory figure
  • Reference standardReference standardAuthoritative geography or coding list
  • Primary record — first partyPrimary record — first partyCollected at opt-in by the operator
  • RegulatorRegulatorLaw or guidance that constrains use
  • Licensed panelLicensed panelVendor panel — not a sendable list for ancestry
  • Modelled estimateModelled estimateAssigned by model, not declared by the person

Marathi used at home: 22,263 nationally, 9,753 New South Wales, 7,170 Victoria — the counts the state mix follows

Validity
Official statistic
How to authenticate it
A national census, not a sample: enumerated August 2021 under the Census and Statistics Act 1905. The standard Community Profiles fold Marathi into “Other Indo-Aryan”, so these counts come from TableBuilder: cross-tabulate Language used at home against State and the three figures reproduce exactly
Cost
Free — TableBuilder Basic costs nothing; it asks for a registration
statemarathi_speaking
Verify at the source

Suburb-level ancestry and country of birth. Tarneit, for one: 56,370 people, Indian ancestry 15,199 (27.0%), India-born 16,231 (28.8%)

Validity
Official statistic
How to authenticate it
Each suburb has its own QuickStats page keyed by its SAL code, so any figure here can be re-read at the source in a few seconds
Cost
Free — the ABS publishes QuickStats at no charge
suburbethnicity_nationality
Verify at the source

The locality-to-postcode list every suburb and postcode in this file was resolved against

Validity
Reference standard
How to authenticate it
Australia Post sets Australian postcodes, so its own file is the authority. The Standard Postcode File is the CSV every suburb and postcode here was matched against
Cost
Quote on request — Australia Post publishes no price for the CSV files, and the free PDF booklet is licensed for non-commercial use only, so a commercial audience file needs the licensed productprice page
suburbpostcode
Verify at the source

The SA2 code each postcode resolves to, and the correspondence that makes postcode-to-SA2 many-to-many

Validity
Reference standard
How to authenticate it
The correspondence files themselves, under Creative Commons: CG_POSTCODE_2021_SA2_2021.xlsx is the postcode-to-SA2 table this file joins on, and it carries the ratio that makes the join many-to-many
Cost
Free — Creative Commons Attribution 4.0
sa2_code_2021sa2_name_2021
Verify at the source

Name, email, phone, mobile, age, the self-declared ancestry and language, the consent flag and the chosen channel — the only lawful route to person-level contact detail

Validity
Primary record — first party
How to authenticate it
Each record carries the consent timestamp, the form it came from and the purpose consented to, so any single person can be traced back to the moment they opted in
Cost
No fee for the data — the operator collects it. The platform that holds it publishes its price: Audience Republic Basic USD 98/mo billed annually at USD 1,028, Plus USD 163/mo billed annually at USD 1,713, entry tiers to 10,000 contacts; Enterprise on application
first_namelast_nameemailphonemobileageconsented_for_marketingcontact_preferenceconsent_timestampconsent_source
Verify at the source

Sensitive information, which includes racial or ethnic origin, may be used for direct marketing only with the individual’s consent

Validity
Regulator
How to authenticate it
The regulator’s own guidelines on the Australian Privacy Principles — the text a court would be pointed at
Cost
Free — guidance, not a data purchase
ethnicity_nationalityconsented_for_marketing
Verify at the source

Consent, sender identification and a working unsubscribe on every commercial email or SMS

Validity
Regulator
How to authenticate it
The consolidated text of the Act on the Federal Register of Legislation — the primary source, not a summary of it
Cost
Free — legislation, not a data purchase
contact_preferenceconsent_source
Verify at the source

Five million opted-in Australian profiles carrying name, email, phone, gender, date of birth and state — and no ethnicity, ancestry or language field at all

Validity
Licensed panel
How to authenticate it
A marketplace listing that states its own attribute set, so the absence of an ancestry field can be read off the page
Cost
Free sample on the listing, which carries no per-unit charge; the full data sets are quote on request
first_namelast_nameemailphoneagestate
Verify at the source

Over 20 million opted-in Australian consumers, filterable to postcode, suburb and state — with no ethnicity, language or country-of-birth filter offered

Validity
Licensed panel
How to authenticate it
The platform page lists its own filter set, which is where the missing ancestry dimension shows
Cost
A$0.43 a record plus GST, the vendor’s own published breakdown: base record 25.0c, phone 8.0c, email 10.0c
suburbpostcodestateage
Verify at the source

Consumer classification into 14 Groups and 52 Types, covering 99% of Australian households — a segment on the household, not an ethnicity on a named person

Validity
Modelled estimate
How to authenticate it
The vendor describes its own build and coverage; the classification is modelled, so it sits below an official statistic
Cost
Quote on request — no price, rate card or fee appears on the product page
ethnicity_nationality
Verify at the source

Over 5,000 behavioural, demographic, geographic and lifestyle attributes used to enrich an existing customer record

Validity
Modelled estimate
How to authenticate it
An enrichment product: it appends to a record the buyer already holds, and the appended values are modelled
Cost
Quote on request — the enrichment page carries an enquiry form in place of a price
ageethnicity_nationality
Verify at the source

Over 60,000 interviews a year, carrying language used at home among its variables — a survey panel that sizes a segment, never a list to send to

Validity
Licensed panel
How to authenticate it
A continuous survey with a published sample size and method; it measures a population, and carries no contactable record
Cost
A subscription is quote on request, but the online store publishes off-the-shelf profiles built from it: A$1,529 including GST standard, A$4,950 including GST premium
marathi_speakingage
Verify at the source

54 Personas in 6 Communities, geo-projected down to mesh block — again an area classification, not a person attribute

Validity
Modelled estimate
How to authenticate it
Personas are assigned to areas by model, so a person inherits an area’s label rather than declaring their own
Cost
Quote on request — the product page routes to an enquiry rather than a rate card
suburbpostcode
Verify at the source

The one identified national file of Australians — and s 91B of the Commonwealth Electoral Act 1918 shuts commercial use of it, which is a large part of why no lawful public person-level list exists

Validity
Official statistic
How to authenticate it
The AEC’s own electoral-roll access page sets out who may receive roll data and for what. A marketing organisation is not on that list
Cost
Not for sale — there is no commercial access path, at any price
first_namelast_namesuburbpostcode
Verify at the source

What this buys — named campaign segments, channel kits and Leadership Team report specs are built from the same contactable audience below. Open Campaign segments to see the live counts.

Legal footing. The consent gate is what answers a complaint: which duty, which column, which test. Consent duties and the columns that evidence them

Reference Geography

Where These People Sit

Geography vs people

  • Real referenceReal referenceSuburb, postcode, state and SA2 from ABS and Australia Post
  • Fictional peopleFictional peopleNames, emails and phones are synthetic — never a live contact list

Suburbs

47

real localities

Postcodes

40

Australia Post reference

ABS SA2 areas

38

ASGS 2021 codes

States and territories

7

all eight are in scope

What this buys — suburb-level out-of-home and geo-targeted social use these localities; see Marketing materials and Social activation.

Suburb, postcode, state and SA2 are real reference geography; the people are fictional.

Legal footing. Targeting a suburb uses reference geography, not a personal attribute — but the send still sits under the Spam Act and APP 7. The instruments a locality-targeted campaign has to satisfy

The Columns

Every Field, and What Stands Behind It

Source codes on each column

  • LANPLANPABS Census — language used at home
  • SALSALABS QuickStats — suburb ancestry and birthplace
  • APAPAustralia Post postcode reference
  • ASGSASGSABS statistical areas and correspondences
  • 1P1PFirst-party opted-in list
  • APP7APP7Australian Privacy Principle 7 — direct marketing
  • SPAMSPAMSpam Act 2003 — channel consent

Column types

  • texttextFree-text or name field
  • numbernumberNumeric measure such as age
  • flagflagControlled Y/N or E/M code
  • datedateCalendar date on the consent event
  • codecodeStable key or geographic code

Legal mark

  • §Scale iconSensitive information or a statutory obligation on the column
ColumnTypeSourceWhat it isWhere it comes from
record_idcodeStable key for the recordGenerated surrogate key — the natural key a warehouse hashes on
first_nametext1PGiven nameFictional. Marathi, wider Indian and general given-name pools
last_nametext1PFamily nameFictional. Marathi and wider Indian family-name pools
emailtext1PEmail addressFictional, on the reserved example.com domain (RFC 2606)
phonetext1PLandline numberFictional, inside the (0x) 5550 xxxx drama range
mobiletext1PMobile numberFictional, inside the 0491 57x xxx drama range
agenumber1PAge in yearsWeighted to the 25–44 band that dominates recent India-born arrivals
statecodeLANPState or territoryMix follows the ABS Census 2021 counts of Marathi used at home
suburbtextSALAPSuburb / localityReal locality, resolved against the Australia Post postcode reference
postcodecodeAPPostcodeReal postcode for that locality
sa2_code_2021codeASGSABS statistical area level 2Real ASGS 2021 code the postcode resolves to — the geography join key
sa2_name_2021textASGSSA2 nameReal ASGS 2021 name for that code
ethnicity_nationalitytextSALAPP7Ancestry, on ABS categoriesSelf-declared by the person at opt-in, on ABS Census ancestry categories. A bought-in ethnicity append cannot be used for marketing however it was collectedSensitive information — s 6, Privacy Act 1988 (Cth). APP 7.4 needs the person’s consent
marathi_speakingflagLANPMarathi used at homeSelf-declared at opt-in, on the ABS Census variable Language used at home (LANP)Travels with the same consent as the ancestry column
consented_for_marketingflag1PAPP7Current marketing consentDerived state — the current position of the consent event historyAPP 7.4 — sensitive information may be used for direct marketing only with consent
contact_preferenceflag1PSPAMChannel the person chose — E email, M mobileChannel consent, enforced at send time by the preference joinSpam Act 2003 (Cth) — consent, sender identification and a working unsubscribe
consent_timestampdate1PWhen the current consent state was setThe date the latest consent event was recorded
consent_sourcetext1PSPAMWhere the consent came fromCheckout opt-in, waitlist, newsletter, ballot, box office or a permission-based partner list
consent_purposetextWhat the person consented toThe stated purpose the consent was given for
data_statusflagReal extract or synthetic sampleRequired column — travels to every downstream table and tile

What this buys — every campaign segment and Leadership Team report below names the columns it consumes from this dictionary.

Legal footing. Two columns on this list carry a consent requirement that the others do not. Why ancestry and language are treated as sensitive information

Warehouse

Data Mart Tables and Their Joins

DimensionCorrespondenceFactServing view

Table kinds

  • DimensionDimensionSlowly changing descriptive attributes
  • CorrespondenceCorrespondenceMany-to-many geography bridge with a ratio
  • FactFactEvent at a point in time — consent, send, sale
  • Serving viewServing viewThe only object a campaign may send from

Key badges

  • pkpkSurrogate primary key
  • nknkNatural business key
  • fkfkForeign key to another table

dim_person

dim

One row per person per change — history kept, one row current

  • pkperson_sk
  • nkrecord_id
  • first_name
  • last_name
  • age
  • ethnicity_nationality
  • marathi_speaking
  • fkgeo_sk
  • valid_from
  • valid_to
  • is_current

dim_geography

dim

One row per suburb and postcode

  • pkgeo_sk
  • nkpostcode
  • suburb
  • state
  • sa2_code_2021
  • sa2_name_2021

dim_contact_point

dim

One row per person per channel

  • pkcontact_sk
  • fkperson_sk
  • channel
  • address
  • is_preferred

dim_campaign

dim

One row per campaign

  • pkcampaign_sk
  • nkcampaign_id
  • name
  • market
  • channel

xref_postcode_sa2

xref

One row per postcode and SA2 pair, with its share

  • fkpostcode
  • fksa2_code_2021
  • ratio

fact_consent_event

fact

One row per consent event — granted or withdrawn

  • pkconsent_event_sk
  • fkperson_sk
  • fkdate_sk
  • channel
  • purpose
  • action
  • source

fact_campaign_send

fact

One row per person per send

  • pksend_sk
  • fkperson_sk
  • fkcampaign_sk
  • fkdate_sk
  • channel
  • delivered
  • opened
  • clicked

fact_ticket_sale

fact

One row per ticket transaction

  • pksale_sk
  • fkperson_sk
  • fkcampaign_sk
  • fkdate_sk
  • tickets
  • amount_aud

vw_marketable_audience

view

One row per contactable person, per channel they chose

  • fkperson_sk
  • channel
  • address
  • state
  • sa2_code_2021
  • marathi_speaking

The joins

Cardinality

  • 1:11:1One row maps to exactly one row
  • 1:M1:MOne parent, many children
  • M:MM:MMany-to-many — needs a correspondence with a ratio
FromToOnCard.
dim_persondim_geographydim_person.geo_sk = dim_geography.geo_sk1:M
dim_geographyxref_postcode_sa2dim_geography.postcode = xref_postcode_sa2.postcodeA postcode can span several SA2s and an SA2 several postcodes, so the correspondence carries a ratio rather than a single codeM:M
dim_persondim_contact_pointdim_person.person_sk = dim_contact_point.person_sk1:M
dim_personfact_consent_eventdim_person.person_sk = fact_consent_event.person_skConsent is an event with a timestamp, a purpose and a source. The Y/N column on the file is the current position of this history, not the record of it1:M
dim_personfact_campaign_senddim_person.person_sk = fact_campaign_send.person_sk1:M
dim_campaignfact_campaign_senddim_campaign.campaign_sk = fact_campaign_send.campaign_sk1:M
dim_personfact_ticket_saledim_person.person_sk = fact_ticket_sale.person_sk1:M
dim_campaignfact_ticket_saledim_campaign.campaign_sk = fact_ticket_sale.campaign_sk1:M
fact_consent_eventvw_marketable_audiencelatest GRANT per person and channel, with no later WITHDRAWThe view is the only object a campaign may send from1:1
dim_contact_pointvw_marketable_audiencedim_contact_point.person_sk = vw_marketable_audience.person_sk and is_preferred1:1

The tests that guard it

Test types

  • uniqueuniqueOne row per key
  • not_nullnot_nullNo orphan surrogate or foreign key
  • relationshipsrelationshipsReferential integrity to the parent dimension
  • accepted_valuesaccepted_valuesControlled vocabulary only
  • expression_is_trueexpression_is_trueBusiness rule enforced by a test

unique

dim_person.person_sk, dim_geography.geo_sk

one row per key

not_null

every surrogate and foreign key

no orphan rows

relationships

fact_*.person_sk → dim_person.person_sk

referential integrity

accepted_values

channel in (E, M) · action in (GRANT, WITHDRAW) · state in the eight codes

no free text in a controlled column

expression_is_true

vw_marketable_audience has no person whose latest event is WITHDRAW

consent is enforced by a test, not by convention

Provenance chips used on this page

Provenance

  • Actual spendActual spendMoney already spent on this programme
  • Published pricePublished priceThe price the vendor lists
  • QuotedQuotedA written quote held on file
  • CalculatedCalculatedWorked out from the figures beside it
  • Official statisticOfficial statisticAn official statistic or statutory record
  • Illustrative — from sample dataIllustrative — from sample dataComputed from the downloadable sample files
Illustrative — from sample dataOfficial statisticCalculated

What this buys — Leadership Team reports read from these tables. Campaign send and ticket sale facts fill once the pilot transacts; audience size and reach resolve from today's file.

Legal footing. The consent event table is the record a regulator asks for; the tests keep the serving view honest. Where the consent evidence lives, and the tests that hold it

Commercial Activation

Campaigns, Materials, Social and Leadership Reports

Named segments, asset kits, ad-platform uploads and Leadership Team report specs — each figure below is computed from the same consented file as the walkthrough above. Revenue and engagement figures resolve once the pilot transacts; audience size and reach resolve today. See also the data ecosystem and investment pages for the wider monetisation sequence.

Named segments

6

Material kits

5

Social destinations

3

Leadership reports

4

Campaign segments

Named Audiences Ready to Send

Channel

  • EEEmail preferred
  • MMMobile preferred
  • BothBothEither channel, respecting preference at send

Filter: marketable AND marathi_speaking = 'Y' AND contact_preference = 'E'

marathi_speakingcontact_preferenceemailstateconsented_for_marketing

Breakdown

NSW29
VIC29
QLD6
SA6
WA5
ACT2

Filter: marketable AND age between 25 and 44 AND state in (VIC, NSW)

agestatesuburbpostcodeemailmobile

Breakdown

Doncaster East 31095
Schofields 27625
Craigieburn 30644
Epping 21214
Kellyville 21554
Tarneit 30294
Berwick 38063
Blacktown 21483

Filter: marketable AND contact_preference = 'M'

contact_preferencemobileconsented_for_marketingconsent_timestamp

Filter: marketable AND consent_source contains 'box office'

consent_sourceemailmobilecontact_preference

Filter: marketable AND consent_source contains 'ballot'

consent_sourceemailcontact_preference

Filter: marketable AND consent_source contains 'waitlist'

consent_sourceemailmobilecontact_preference

Legal footing. A segment is a filter over the serving view, so a withdrawal removes a person from every segment at once. Each segment sends only from the consented view

Marketing materials

Asset Kit Per Channel

Channel kit

  • EmailEmailNurture and on-sale templates
  • SMSSMSShort-window mobile creative
  • Out-of-homeOut-of-homeSuburb-keyed poster and transit
  • PartnerPartnerCo-brand with venues and promoters
  • WebWebEvent landing variants

Subject, preview and body personalised to ancestry and language flags, with unsubscribe and sender identity

Outcome: Repeat opens and click-to-purchase on language-led tours

Segment: Marathi at home — email preferred · 77 people

first_nameemailmarathi_speakingethnicity_nationalityconsent_source

160-character on-sale alert with stop path; mobile only where preference is M

Outcome: Same-day ticket conversion on release windows

Segment: SMS — on-sale day · 66 people

first_namemobilecontact_preference

Poster and transit creative keyed to real suburbs and postcodes in the file

Outcome: Awareness in high-density India-origin localities ahead of on-sale

Segment: 25–44 metro Victoria and New South Wales · 86 people

suburbpostcodestatesa2_code_2021

Co-branded landing and email for permission-based partner lists

Outcome: Trusted introduction through venues and community promoters

Segment: Box-office re-engagement · 25 people

consent_sourceemailfirst_name

Geo and language variants of the event page, fed by SA2 and language flags

Outcome: Higher landing-to-checkout rate for the right city and language cut

Segment: 25–44 metro Victoria and New South Wales · 86 people

statesa2_code_2021marathi_speakingage

Legal footing. Three duties live in the creative rather than the data, and every template has to carry them. Sender identity, the unsubscribe and the SMS sender ID

Social and platform activation

Hashed Uploads to Ad Platforms

Email matchable

127

Mobile matchable

66

Match keys

  • EmailEmailHashed email from the preferred channel
  • MobileMobileHashed mobile from the preferred channel

Uploadable records from this file: 193 (email 127 + mobile 66, respecting preference).

APP 7.4 consent required for ancestry-derived targeting; Spam Act unsubscribe must remain available on owned channels; Meta policy limits apply to sensitive attributes.

Ancestry and language stay on owned sends. The match file carries only hashed contact points with current marketing consent.

Uploadable records from this file: 193 (email 127 + mobile 66, respecting preference).

Upload only records with current marketing consent. Ancestry and language fields stay off the match file — they segment owned sends, not the ad platform upload.

Ancestry and language stay on owned sends. The match file carries only hashed contact points with current marketing consent.

Uploadable records from this file: 193 (email 127 + mobile 66, respecting preference).

Same consent gate as Meta and Google. Platform sensitive-category rules further restrict ethnicity-based lookalikes.

Ancestry and language stay on owned sends. The match file carries only hashed contact points with current marketing consent.

Legal footing. Hashed contact points with current consent go up. Ancestry and language stay on owned sends. What may be uploaded to an ad platform, and what may not

Leadership Team reports

Report Specs the Warehouse Already Supports

Figure status

  • Available nowAvailable nowComputed from today’s consented file
  • Resolves laterResolves laterNeeds campaign send and ticket sale facts from the pilot
Grain
One row per contactable person per preferred channel
Cadence
Weekly during the pilot; monthly thereafter
Decision it drives
Whether the Australian proof market has enough consented reach to proceed past gate G1
Tables
vw_marketable_audiencedim_persondim_geography
Columns
person_skchannelstatesa2_code_2021marathi_speaking

Available now

Marketable people

193

Email reachable

127

Mobile reachable

66

States covered

7

Marathi at home

118

Resolves once the pilot transacts

  • Campaign open and click rates
  • Ticket sell-through by segment
Grain
One row per person per send, joined to ticket sales
Cadence
Per campaign within 72 hours of send; weekly roll-up for Leadership
Decision it drives
Which segments to scale, pause or redesign before the next on-sale
Tables
dim_campaignfact_campaign_sendfact_ticket_salevw_marketable_audience
Columns
campaign_idchanneldeliveredopenedclickedticketsamount_aud

Available now

Named segments ready

6

Largest segment

25–44 metro Victoria and New South Wales (86)

Resolves once the pilot transacts

  • Delivered / opened / clicked
  • Tickets and amount_aud per campaign
  • Cost per ticket by channel
Grain
One row per consent event; serving view is the sendable cut
Cadence
Daily automated test; weekly Leadership summary
Decision it drives
Go / no-go on each send; remediation if WITHDRAW events are not suppressed
Tables
fact_consent_eventdim_personvw_marketable_audience
Columns
actionpurposesourcechannelperson_sk

Available now

Consent rate

84%

Suppressed

38

Consent sources

6

Resolves once the pilot transacts

  • Grant / withdraw event volume over time
  • Unsubscribe rate after each send
Grain
One row per suburb / SA2 with audience and, later, sales
Cadence
Monthly; before each venue commitment
Decision it drives
Where to book the next three to five pilot events
Tables
dim_geographyxref_postcode_sa2vw_marketable_audiencefact_ticket_sale
Columns
suburbpostcodesa2_code_2021ratioticketsamount_aud

Available now

Suburbs

47

Postcodes

40

SA2 areas

38

Resolves once the pilot transacts

  • Tickets and revenue by suburb and SA2
  • Sell-through versus audience density

Legal footing. Consent health is a Leadership Team report because the downside is measured in penalty units. The exposure these reports keep visible