Order Within

Hrs | Mins | Secs

To Receive Your Order On

Premium Quality A4 Certificates

Celebrate achievements and honour milestones with premium custom certificate printing from Lollipop. Print sharp, vibrant certificates in A4 landscape or portrait with your own artwork — perfect for awards, training completion, recognition events, clubs, schools, teams or corporate milestones. Our premium print quality on HP Indigo digital presses ensures rich colour and professional results

Why Choose Our Certificate Printing?

  • Printed using HP Indigo technology for sharp detail and consistent colour
  • Multiple premium paper stocks (Silk, Gloss, Uncoated, Textured)
  • Fast online upload — easy ordering every time
  • Ideal for awards, training, schools, corporate events and more

What size certificates do you print?

We offer standard A4 certificates in both landscape and portrait.

What file formats are accepted?

We prefer PDF files, though JPG, TIFF and PNG are accepted.

Can I write on the printed certificates?

Yes — choose uncoated or textured stock for easy handwriting.

What paper weight should I choose?

Heavier weights like 250gsm + give a more premium feel and durability.

How to order premimum certificates online:

  1. Select the paper type and weight of your certificate, if you need some guidance regarding paper types please see the additional information regarding each type at the bottom of the page.  Need some help with understanding paper sizes?  Please see our FAQ page here..
  2. Enter the total number of certificates required  & press the "Start" button to upload your file or files. We would prefer PDF files but .JPG, TIFF and PNG are also accepted. Word and Powerpoint files will not be accepted, please save as PDF.

Upload tip.

You can upload multiple files if required and they can have multiple pages in.  Just make sure the total number of pages in all the files uploaded matches the ordered quantity .

  • Using Canva?  Please see our FAQ's to get the best file for printing here.
  • Designing it yourself?  Please see our artwork tips here
Size *
Paper type *
Printed sides *
Paper weight *
£20.00
Config qty column name Quantity
Config qty useTierPrice true
Script Context: Product
Is Tier Price Mode: False
Attributes length 4
Attribute name: Size with value: A4 (210mm x 297mm)
Attribute name: Paper type with value: Uncoated
Attribute name: Printed sides with value: Single sided
Attribute name: Paper Weight with value: 350gsm
Cached attributes length: 4
attributevalue for filename: A4 (210mm x 297mm)
attributevalue for filename: Uncoated
attributevalue for filename: 350gsm
fileName: Certificates/Certificates-A4 (210mm x 297mm)-Uncoated-350gsm.csv
filename = Certificates/Certificates-A4 (210mm x 297mm)-Uncoated-350gsm.csv
columns initialized: Printed sides,Quantity,Price
get csv price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 1
Checking row matching for columnName = Price row value= 10
Row: (Single sided,1,10) with index: 1 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 2
Checking row matching for columnName = Price row value= 5
Row: (Single sided,2,5) with index: 2 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 3
Checking row matching for columnName = Price row value= 4
Row: (Single sided,3,4) with index: 3 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 4
Checking row matching for columnName = Price row value= 3.5
Row: (Single sided,4,3.5) with index: 4 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 5
Checking row matching for columnName = Price row value= 3
Row: (Single sided,5,3) with index: 5 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 6
Checking row matching for columnName = Price row value= 2
Row: (Single sided,6,2) with index: 6 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 7
Checking row matching for columnName = Price row value= 2
Row: (Single sided,7,2) with index: 7 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 8
Checking row matching for columnName = Price row value= 2
Row: (Single sided,8,2) with index: 8 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 9
Checking row matching for columnName = Price row value= 2
Row: (Single sided,9,2) with index: 9 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 10
Checking row matching for columnName = Price row value= 2
Row: (Single sided,10,2) with index: 10 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 20
Checking row matching for columnName = Price row value= 1.9
Row: (Single sided,20,1.9) with index: 11 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 30
Checking row matching for columnName = Price row value= 1.3
Row: (Single sided,30,1.3) with index: 12 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 40
Checking row matching for columnName = Price row value= 1.025
Row: (Single sided,40,1.025) with index: 13 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 50
Checking row matching for columnName = Price row value= 0.84
Row: (Single sided,50,0.84) with index: 14 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 60
Checking row matching for columnName = Price row value= 0.733333333
Row: (Single sided,60,0.733333333) with index: 15 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 70
Checking row matching for columnName = Price row value= 0.642857143
Row: (Single sided,70,0.642857143) with index: 16 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 80
Checking row matching for columnName = Price row value= 0.5875
Row: (Single sided,80,0.5875) with index: 17 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 90
Checking row matching for columnName = Price row value= 0.544444444
Row: (Single sided,90,0.544444444) with index: 18 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 100
Checking row matching for columnName = Price row value= 0.5
Row: (Single sided,100,0.5) with index: 19 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 150
Checking row matching for columnName = Price row value= 0.393333333
Row: (Single sided,150,0.393333333) with index: 20 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 200
Checking row matching for columnName = Price row value= 0.34
Row: (Single sided,200,0.34) with index: 21 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 250
Checking row matching for columnName = Price row value= 0.308
Row: (Single sided,250,0.308) with index: 22 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 300
Checking row matching for columnName = Price row value= 0.283333333
Row: (Single sided,300,0.283333333) with index: 23 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 350
Checking row matching for columnName = Price row value= 0.268571429
Row: (Single sided,350,0.268571429) with index: 24 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 400
Checking row matching for columnName = Price row value= 0.2575
Row: (Single sided,400,0.2575) with index: 25 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 450
Checking row matching for columnName = Price row value= 0.253333333
Row: (Single sided,450,0.253333333) with index: 26 is matching: true
Using tier price
Checking row matching for columnName = Printed sides row value= Single sided
columnName = Printed sides attrValue= Single sided temp= Single sided
Checking row matching for columnName = Quantity row value= 500
Checking row matching for columnName = Price row value= 0.246
Row: (Single sided,500,0.246) with index: 27 is matching: true
Using tier price
Matching rows: 27
Quantity Column Index: 1
Checking: Single sided,1,10
Found a valid tier: Single sided,1,10
Checking: Single sided,2,5
Found a valid tier: Single sided,2,5
Checking: Single sided,3,4
Found a valid tier: Single sided,3,4
Checking: Single sided,4,3.5
Found a valid tier: Single sided,4,3.5
Checking: Single sided,5,3
Found a valid tier: Single sided,5,3
Checking: Single sided,6,2
Found a valid tier: Single sided,6,2
Checking: Single sided,7,2
Found a valid tier: Single sided,7,2
Checking: Single sided,8,2
Found a valid tier: Single sided,8,2
Checking: Single sided,9,2
Found a valid tier: Single sided,9,2
Checking: Single sided,10,2
Found a valid tier: Single sided,10,2
Checking: Single sided,20,1.9
Finish search
price column index=2
price from row = 2
set attributes from csv length = 0
set item properties from csv length = 0
product cost column index=-1
unit price = 2

Product Description

Custom certificate printing is a professional and lasting way to recognise achievement, celebrate milestones and reward success. At Lollipop, we provide high quality certificate printing in standard A4 size, available in both portrait and landscape formats. Whether you’re ordering training certificates, award certificates, school certificates or corporate recognition certificates, our premium digital print process ensures sharp detail, accurate colour and a flawless finish every time.

Our professional certificate printing service offers a choice of premium paper stocks including Silk, Gloss, Uncoated and luxury textured options up to 400gsm for a more substantial, prestigious feel. Printed single-sided for a traditional presentation, our custom printed certificates are ideal for education providers, businesses, sports clubs and event organisers looking for reliable, consistent results.

Need personalised certificate printing? We can customise each certificate with individual names, course titles, dates or award categories using variable data printing. This is perfect for training programmes, graduations and large award events. If you require personalised certificates, contact our team for guidance before placing your order online.

From artwork upload to final delivery, our experienced print specialists ensure your custom certificates are produced to the highest standard. When presentation matters, choose premium certificate printing you can trust.

Understanding different paper types

Silk: Silk coated paper has a smooth, silky finish. It is neither as glossy as gloss-coated paper nor as matte as uncoated paper, offering a balance between the two. This paper type undergoes a coating process that enhances its texture and visual appeal.  Writing on silk-coated paper with regular pens can be difficult as the coating may resist ink absorption.

Gloss: Gloss coated paper has a shiny, reflective surface that is achieved through the application of a high-gloss coating. This type of paper is commonly used for high-impact, high-quality printing where image sharpness and color intensity are important. Like silk-coated paper, writing with pens or pencils on gloss-coated paper can be challenging due to the smooth surface.

Uncoated: Uncoated paper has no surface coating, giving it a natural, more textured feel. It is widely used for everyday printing tasks, stationery, and books, where a more organic or traditional look is preferred. Uncoated paper is excellent for writing with any pen or pencil as it absorbs ink well.

Textured: We use G . F Smith Accent Antique Alabaster for our textured card stock. Similar to uncoated paper Accent Antique Alabaster is excellent for writing with any pen or pencil as it absorbs ink well.  Originally developed by G . F Smith to meet a single client's bespoke request, Accent Antique was a pioneering paper that had an immediate impact on the home craft and cards market, and for good reason. Launched in 1997, the paper has a matt appearance and is soft to the touch, with a delicate natural texture on both sides (created by one of two specially designed rollers) that picks up a high degree of print detail. It is also acid-free.